home *** CD-ROM | disk | FTP | other *** search
/ Graphics 16,000 / graphics-16000.iso / amiga / plotting / surfcplt.lha / SurfacePlot / SurfacePlot.doc < prev    next >
Text File  |  1992-05-15  |  5KB  |  134 lines

  1.  
  2.                  SURFACEPLOT v2.0 
  3.  
  4. AUTHOR
  5.  
  6. "Kaliffen" or "The Caliph" alias
  7.  
  8. Ole Bak Jensen
  9. Carl Blochsgade 31 4th
  10. DK-8000 ┼rhus C
  11. Denmark
  12.  
  13. DISTRIBUTION TERMS
  14.  
  15. Distribute freely, but please DON'T discard the additional files (examples,
  16. documentation, icon etc.). SurfacePlot is ColaWare! (which ISN'T a new
  17. concept). If you like the program, then send me something, preferably a
  18. Coke or, if that's too bulky, your own programs, a PD disk, a postcard or
  19. whatever you find appropriate.
  20.  
  21. DESCRIPTION
  22.  
  23. SurfacePlot is a tool for drawing 3-dimensional parametrized surfaces on
  24. the screen. I made it for visualizing the various surfaces used in a
  25. mathematics-course called differential geometry.
  26.  
  27. The program is fun to play with, even if you aren't interested in math.
  28.  
  29. HOW TO USE
  30.  
  31. The program uses a hires interlaced screen. Unfortunately interlaced screens
  32. cause some flicker on standard Amiga displays, but the pictures are much
  33. nicer this way. The program will run on both PAL and NTSC machines, always
  34. using the full screen height.
  35.  
  36. On the left side of the display is an area for drawing the function. On the
  37. right side you type in all the parameters.
  38.  
  39. Function
  40.  
  41. You type in three seperate functions for the X, Y and Z coordinates, namely
  42. x(u,v), y(u,v) and z(u,v). u and v are parameters, and you must supply their
  43. boundaries by filling in the fields lowhigh and step for both parameters.
  44.  
  45. Parameters
  46.  
  47. When the surface is drawn, the parameter u will run from u_low to u_high
  48. in steps of u_step, and for each of u's values the parameter v will run from
  49. v_low to v_high in steps of v_step. WARNING: This means, if you double
  50. the interval for both parameters, the number of calculations is quadrubled,
  51. thus taking four times as long to calculate (and taking four times as much
  52. memory). Be careful with the parameters!
  53.  
  54. Drawing procedure
  55.  
  56. First all the points on the surface are calculated. Each square on the
  57. surface consists of four of these points. After calculating, the squares
  58. are sorted after depth. Then the squares are drawn on the screen, in depth
  59. decreasing order. This procedure ensures a sort of "hidden line" effect.
  60. You can abort drawing with the Esc key.
  61.  
  62. Rotation and zoom
  63.  
  64. You can adjust the viewpoint by changing rotation and a zoom-factor. With a
  65. (x,y,z)-rotation of (0,0,0), the viewpoint is as follows: The x-axis is
  66. horizontal, the y-axis vertical and the z-axis goes into and out of the
  67. screen.
  68.  
  69. If the rotation is changed to something, say (45,67,23), this happens: First
  70. the surface and the axes are rotated 45 degrees around the x-axis. Then 67
  71. degrees around the y-axis (that is, the OLD y-axis, before the x-rotation).
  72. Third a rotation of 23 degrees around the z-axis is performed (also the OLD
  73. z-axis). This system is a bit hard to use at first, but if you make a few
  74. tests, drawing only the axes, you'll get the idea.
  75.  
  76. A rotation of (-130,-130,34) results in a nice view, looking on the positive
  77. part of the 3D space with z-axis up, y-axis horizontal and x-axis for depth.
  78. (This is a bit like the view used in most mathbooks).
  79.  
  80. The zoom-factor controls the distance to the surface. This is easy to use:
  81. Use large zoom-factor for large surfaces, small zoom-factor for small ones.
  82.  
  83. Selection:
  84.  
  85. You can select what is drawn by toggling the axeshalf and func gadgets.
  86. When half is active only the positive parts of the axes are drawn.
  87.  
  88. Axes
  89.  
  90. You must supply the length (of the positive half) and the distance between
  91. tics.
  92.  
  93. Menus
  94.  
  95. In the Project menu, you can select About and Quit. With the settings menu
  96. you can change the screen colors. You can also save and load the settings.
  97. To load the examples, select load settings, and use the file-requester to
  98. select one of the files in the examples-directory.
  99.  
  100. When SurfacePlot is started, it loads s:SurfacePlot.config as settings.
  101. If this file doesn't exist, a default will be used. You can save your own
  102. favourite startup-settings by saving the settings to this file.
  103.  
  104. With the Picture menu you can save the entire screen as an IFF file.
  105.  
  106. Hints
  107.  
  108. Pick the About-item in the program for more hints. Good luck!
  109.  
  110. REQUIREMENTS
  111.  
  112. SurfacePlot uses the excellent Req and IFF libraries, which can be
  113. found on various databases. It won't run without the files req.library and
  114. iff.library in libs: directory. The standard mathtrans.library is also
  115. required in libs:.
  116.  
  117. I have used req.library v2.2 and iff.library v18.5. I don't know if any
  118. errors will occur if older versions are used.
  119.  
  120. BUGS
  121.  
  122. Let me know if you encounter errors/gurus, or have ideas for future updates.
  123. I know the program isn't fast, but that's just a pity for now. Perhaps I'll
  124. look into that in the future.
  125.  
  126. THANKS TO
  127.  
  128. Mr. Who??? for ideas, testing etc. Sweet Emmylou, I stole the graffunk module
  129. from your program graf. Hope it's allright. 
  130.  
  131.  
  132.  
  133.                     Ole Bak Jensen, Denmark
  134.