home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / f / fractalus / !Fractulus / Docs / Guide < prev   
Encoding:
Text File  |  1995-05-04  |  17.2 KB  |  408 lines

  1. Fractulus, ©1994-1995 by Andreas Dehmel
  2.  
  3. Fractulus is rated Freeware: you may copy it freely but not
  4. change any part of it (except for the Core directory).
  5. Fractulus was written for RISC OS 3.
  6.  
  7. Although I have debugged it thoroughly I will not accept any
  8. responsibilities for any damages caused to your computer or
  9. data by using this program.
  10. I would appreciate if you reported any errors you come across
  11. so I can remove them (hopefully).
  12.  
  13.  
  14.  
  15. ---------------------------------------------------------------
  16. Changes since version 0.00:
  17.  
  18. - The usual number of bugs fixed
  19. - Can now also compute 16/32bpp sprites and display them even on
  20.   pre-RiscPC machines!
  21. - Additional two words (extension) to pass to core
  22. - Facilities to watch & modify batch file
  23. - Make fractal movies
  24. - Some new cores - including fixed point ones
  25. ---------------------------------------------------------------
  26.  
  27.  
  28.  
  29.  
  30.                      FRACTULUS DOCS (v0.10)
  31.  
  32.                    --------------------------
  33.                       
  34.  
  35.  
  36. Fractulus is a multitasking application for computing fractals.
  37. By loading different cores you can compute different types of
  38. fractals (standard Mandelbrot sets, Julia sets...). I should
  39. mention, though, that most cores use FPA instructions and will
  40. thus be *very* slow on machines not fitted with an FPA. Non FPA
  41. cores included are "fix32" and "crazy32". People interested in
  42. writing their own cores please refer to the CORES document.
  43. On an FPA machine, though, it flies...
  44.  
  45.  
  46. How to use:
  47. -----------
  48.  
  49. Start up the program as usual by double clicking its icon in the
  50. filer window. Fractulus will install its icon on the icon bar and
  51. we're ready for action.
  52. Clicking select or adjust on the icon bar icon will open a
  53. Control Panel; you can have 8 of those active simultaneously.
  54. Each Control Panel represents a fractal process - in english:
  55. you can compute up to 8 fractals simultaneously.
  56. Don't let the number of writable fields shock you - most of you
  57. will never have to enter anything more than resolutions and 
  58. Iterations in here. Here's what everything means:
  59.  
  60. Continue, Pause, Abort, Display and Start are obvious.
  61. Ratio: this determines if you want to preserve the ratio or
  62.        allow distorted fractals. When ticked, min(im) is set
  63.        so that (max(re)-min(re))/(max(im)-min(im) = resx/resy.
  64. Resolution X/Y: What resolution the resulting fractal should
  65.        have. These are mode 28 Pixels rather than OS units.
  66. IterMax: Maximum iterations to do before breaking the loop and
  67.        marking the current position convergent (black). High
  68.        Iterations bring out more detail but slow computation
  69.        down. Usually the deeper you get into a fractal set the
  70.        higher you'll have to set IterMax.
  71. IterPoll: Maximum iterations to do before returning control to
  72.        the WIMP (actually no break occurs within the iterations
  73.        loop, so the maximum number of iterations done will be
  74.        between IterPoll and IterPoll + IterMax). The higher this
  75.        number the less responsive the desktop but the faster
  76.        computation. The default value (32768) works fine on an
  77.        A5000 with FPA and the standard mandelbrot core. Users of
  78.        A5000s or RiscPCs without FPAs should set this to no more than
  79.        about 2000 (yes, the FPA speeds up things by a factor of
  80.        30-40!).
  81. Re/Im: The interval to compute. You should write the lower number
  82.        in the left, the higher in the right writable field.
  83.        Fractulus sorts the numbers but for order's sake do it.
  84.        The default numbers entered here will give you a look on
  85.        the standard mandelbrot set (provided the mandelbrot core
  86.        is active).
  87. Ext:   (since v0.10) Additional words to pass to core. Is greyed
  88.        out if core doesn't use it.
  89. Current Line: While computation goes on this shows you where
  90.        Fractulus is at the moment.
  91. bpp:   (since v0.10) Should be obvious. Icons of bpp the core
  92.        doesn't support are greyed out.
  93.        
  94.        
  95. For starters you should just adjust the resolution to your wishes
  96. and start computation by clicking on "start" or pressing return
  97. in the last writable icon. This will produce an asterisk in the
  98. Control Panel's title bar and ungrey the Pause, Abort and Display
  99. icons. Unless there've been any errors, that is. If you entered any
  100. illegal numbers or specified a resolution that demands more memory
  101. than your machine has to offer you'll be told so and should take
  102. action. If all went well all writable icons except for IterPoll
  103. will be greyed out - no more use for them.
  104.  
  105. Clicking on Display will show you the current fractal. You can
  106. leave this window open, it will be updated (see Defaults), but that
  107. will slow down computation a bit (not much!).
  108.  
  109. After computation's finished you can save the fractal. You do this
  110. by pressing Menu over either the corresponding Control Panel or the
  111. Sprite Window. You can also use the keyboard shortcuts to do so,
  112. but these will only work when the Sprite window has the input
  113. focus (click in it to have it gain it). Saving works as usual.
  114. The fractal is saved as a standard sprite (28 for 8bpp, S16,90,90
  115. for 16bpp and S32,90,90 for 32bpp) with important info (coordinates
  116. and the like) stored as extension area. You can save to the Filer or
  117. any other application. Fractulus can also handle RAM transfers. If
  118. you've dragged it to a filer window the current fractal will be marked
  119. as saved (the asterisk will be removed from Control Panel and Sprite
  120. Window) and the Filename will be shown in the Sprite Window's title
  121. bar. The other items in the sprite menu (except for "to batch" and
  122. "export") refer to frames.
  123.  
  124. Export: (since v0.10)
  125. -------
  126. This is a new feature to be used for making movies. If you have two
  127. fractals, one of which you wish to have as the starting picture, the
  128. other as the ending picture and "interpolate" between them, thus making
  129. a movie, here's how to do it:
  130. Open the control panels of both pictures; no actual data has to have
  131. been computed for either of those, it suffices for the control panels
  132. to contain all data required. Select Export from the ending fractal's
  133. Sprite Menu. Enter in the writable icon the number of the starting
  134. fractal's control panel. If your choice is accepted (i.e. the panel
  135. exists and is not equal to the one you're exporting) the "To Movie"
  136. window will appear. From then on everything is exactly as "To Movie"
  137. from the Frames menu (see below).
  138. Resolution, bpp and extension words will be used from the starting
  139. fractal's control panel.
  140. Why don't I just export the data to a frame in the starting fractal's
  141. sprite window? Easy: if you want to use this method (rather than
  142. the alternative Frames.ToMovie) the ending fractal will usually be
  143. very small compared to the starting one. Frames only offer precision
  144. of 1 OS unit, i.e. 1/2 pixel in Fractulus' sprites. This is much too
  145. bad for satisfying results. Besides the frame might lie outside of
  146. the starting fractal's bounding box - which is no problem for Fractulus
  147. but might still be a bit awkward for the user.
  148.  
  149.  
  150. Frames:
  151. -------
  152.  
  153. You can zoom into a fractal by dragging a frame that specifies the
  154. new window's interval. Hold down either Select or Adjust and move
  155. the mouse to draw a frame. If the menu item "New Ratio" is ticked,
  156. the frame will always preserve the ratio specified there, if not
  157. frame shapes will be arbitrary. The ratio entered here will also be
  158. entered as the new Panel's resolution, so you should enter e.g.
  159. 640:480 rather than 4:3. If the pointer leaves the window it will
  160. scroll in the appropriate direction; you don't have to have
  161. everything visible that you want to include in your frame.
  162. After finishing the drag the frame becomes selected: it is crossed
  163. out (unselected frames are just rectangles). You can still manipulate
  164. it, though. You can drag one of its corners to change its size or
  165. you can click inside it to move the whole thing. In case of over-
  166. lapping frames the one with its middle closest to your pointer will
  167. be chosen.
  168. Overlapping frames? Yeah, you can have up to 4 frames in each sprite
  169. window simultaneously. Clicking Select in the sprite window will
  170. deselect all frames (and select the one you've clicked in, if any),
  171. adjust will do nothing (or toggle the frame's state you've clicked
  172. in, if any).
  173. Once you've drawn a frame the Frame menu becomes available. This
  174. consists of the items:
  175.  
  176. Slct All: Select all frames.
  177. Delete:   Delete all selected frames.
  178. To Panel: create (a) new Control Panel(s) with the frame's (the frames')
  179.           coordinates. This will draw the corresponding Control Panel's
  180.           number into each frame (whether you can actually see this depends
  181.           on the current fractal and good luck) and open the Control
  182.           Panel, ready to process the next fractal.
  183. AdjustRatio: This will change the shape of all selected frames to match
  184.           the ratios specified there. Frames created without "New Ratio"
  185.           ticked will now also have ratio on. As above, the minimal
  186.           imaginative value becomes variable.
  187. To Movie: (since v0.10) Only available if exactly one frame is selected.
  188.           This will interpolate between the current fractal and the frame
  189.           selected. Interpolation is non-linear and ensures that
  190.           a) magnification is constant
  191.           b) translation of the frame is always set in relation to its
  192.              current size.
  193.  
  194.           You have to enter some values here:
  195.           
  196.           Iterations: Number of iterations to use for final fractal. In
  197.                       between iterations are interpolated linearily.
  198.           Steps:      Number of pictures to do. Since numbering is done with
  199.                       3 digit hexnumbers you shouldn't enter values >= 4096.
  200.           
  201.           What this will do is add some entries to the batchfile (for batch-
  202.           files see below). Save the batchfile and drag it to the Fractulus
  203.           icon later to compute the movie.
  204.           The upper section of the "To Movie" window consists of a typical
  205.           save box and is used exactly like the one for "To Batch" (see
  206.           below). The first 7 characters of the leaf name will be used for
  207.           the movie's base name, the remaining 3 are a hexadecimal numbering.
  208.           The resolution of the movie will be taken
  209.           - from the frame, if it has ratio on
  210.           - from the parent fractal otherwise.
  211.             
  212. Now you can zoom into fractals, save them and so on. Basically all you're
  213. gonna need for the time being. But there's more.
  214.  
  215.  
  216.  
  217. Icon Bar Options:
  218. -----------------
  219.  
  220. Apart from the usual Info and Quit we have:
  221.  
  222. Defaults:
  223. ---------
  224. Here you can enter the values that should appear in each Control Panel
  225. on opening it. Apart from that you can specify the value "Update", which
  226. means the number of times a running fractal has to return control to the
  227. WIMP before the line number and the sprite window are updated. The smaller
  228. the number, the more accurate the display is at all times but the more the
  229. computer will be slowed down. The current 10 is a good compromise, as far
  230. as I'm concerned.
  231. The Defaults window also shows the currently active Core. You can't
  232. change it here, though.
  233. Clicking on OK means read the values, store them as defaults and close
  234. the window, save does the same + saves the values in Fractulus' main
  235. directory. Closing the window any other way preserves the old values.
  236.  
  237. Choose Core:
  238. ------------
  239. Provided you don't have any Control Panels open you can choose one of
  240. the Cores provided here. On startup Fractulus will scan its Core
  241. directory and offer all of the files resident there in the Core Menu.
  242. Cores are basically different algorithms: mandelbrot, e.g, does the
  243. standard z = z^2 + c iteration.
  244. If you want to write your own core please look up details in the CORES
  245. document.
  246.  
  247. Cores included in this release are:
  248. julia, mandel3, mandel4, mandel5, mandel6, mandelbrot, dragon,
  249. fix32, crazy32
  250.  
  251. The mandel<i> cores use the formula z^i + c.
  252.  
  253. fix32 does the same as mandelbrot only as 32 bit fixed point implemen-
  254. tation. Thus precision is pretty lousy.
  255.  
  256. crazy32 gives some pretty nice overflow errors of the 32 bit fixed
  257. point method.
  258.  
  259. The Julia core included here makes use of the extension words (unlike
  260. the one from the old release - for obvious reasons). If you want to
  261. zoom into old julia fractals with the new core you should enter the
  262. following as extension words:
  263. -0.562198486328125 and 0.6425286865234375
  264. Note: The extension words are the complex number c in Julia's iteration
  265.       z = z^2 + c.
  266.  
  267. dragon does the iteration z = c*z*(1-z) with c = complex number obtained
  268. from extension words. Depending on what extension words you use you can
  269. get *very* different results. A nice one to start with would be 1.64,0.96.
  270.       
  271.  
  272.  
  273. Batch:
  274. ------
  275. See later.
  276.  
  277.  
  278. Fractals you have created and saved can be reloaded into Fractulus by
  279. dragging them to its icon bar icon. If the sprite was created by
  280. Fractulus (i.e. has a valid extension area), was created with the
  281. same core type as the one currently loaded and fits into memory it
  282. will be loaded, otherwise Fractulus will complain. In case of a
  283. difference in cores Fractulus will try to look up the core used to
  284. compute this Fractal and give you its name. If it can't find it
  285. (i.e. no core matching the ID is included in the Core Menu) it will
  286. quote a "?".
  287.  
  288.  
  289. Batch Files:
  290. ------------
  291.  
  292. Instead of computing fractals interactively you can choose to redirect
  293. all the data of a fractal from a Control Panel to a Batch File. If
  294. you choose the menu item "to batch" in the Sprite Menu you'll get
  295. a save dialogue box just like the one "save" provides. This is because
  296. all data except the name the fractal should be stored as can be
  297. read from the Control Panel. You have to drag it to a Filer window,
  298. all other destination windows will not be accepted (i.e. the save box
  299. won't be closed). All Panels append their batch data to the same file.
  300. Once you've batched at least one panel the "batch" item in the main
  301. menu will be ungreyed. This offers four more options, Save, Clear, Show
  302. and Delete.
  303.  
  304. Save should be obvious.
  305. Clear will remove it from memory.
  306. Show shows the current batch file.
  307. Delete deletes the selected lines from the batch file - only available
  308.   if the menu was opened by clicking Menu over the Batch (Text-)Window.
  309.  
  310. The Batch File is a text file and can be edited. Some editing can even
  311. be done from Fractulus: you can select lines you wish to remove from
  312. the file and delete them by clicking on "Delete" in the Batch Menu.
  313. Selecting can be done by click or drag. The first two lines are pro-
  314. tected; you can't select these.
  315. If you want to edit by hand (you should know what you're doing, though)
  316. The format is:
  317.  
  318. [optional data]ResX,ResY,IterMax,min(re),max(re),min(im),max(im),ratio(0/1),
  319. corename,filename<lf>
  320.  
  321. [optinal data] is possible since v0.10. It can be
  322. -bpp 8|16|32, to specify number of bpp. None defaults to 8bpp.
  323. -ext float,float, for the extension numbers.
  324. For an example refer to the file NewBatch.
  325.  
  326. It can also contain empty lines (linefeed only) and commentary lines
  327. (which start with a "#"). Check out the demonstration batch file for
  328. clearness. After having defined Pics$Dir (the directory you want to
  329. store the resulting sprites in) you can also start it (by dragging it
  330. to the Fractulus icon bar icon - it shows quite a few nice scenes).
  331. NewBatch is a batch file with optional data and can thus only be
  332. used with v0.10.
  333.  
  334. Fractulus can't enter batch mode when any Control Panels are open.
  335. This is once more because the batch file can change the currently
  336. active core. After Fractulus has entered Batch Mode, a Batch Panel
  337. is opened - unlike in interactive mode this one is opened on the
  338. bottom of the window stack, i.e. behind all others. That is so you
  339. can do some work, e.g. use a texteditor such as myself at the moment
  340. and not be disturbed any time a fractal is finished and out of nowhere
  341. a new panel pops up. You can still choose "Display" to watch the current
  342. fractal, you can still enter the IterPoll variable, show and save the
  343. batch file but that's it. Neither can you open any more Panels.
  344. Fractulus will leave Batch mode
  345.  
  346. a) on completing the Batch File
  347. b) by having the Batch Panel closed via Abort or the close icon.
  348.  
  349. Any errors occurring during processing the Batch File will lead
  350. to this Batch being skipped and the next one started up. This is
  351. because a Batch File is a nice way to keep your computer occupied
  352. while you're busy sleeping - which means you're not available to
  353. answer any dialogue boxes. If you want to know if any errors
  354. occured, simply check which files were saved.
  355.  
  356.  
  357. Warning boxes:
  358.  
  359. Whenever you try to close a panel that's been started up but not
  360. saved yet (i.e. it has an asterisk in its title bar) Fractulus will
  361. open an error dialogue box to inform you of possible data loss.
  362. If you get this warning with nothing but safe panels open, it refers
  363. to an unsafed batch file.
  364.  
  365. Data will only be marked as saved when its destination is a filer
  366. window.
  367.  
  368.  
  369. This concludes this guide to Fractulus. I hope it was helpful.
  370.  
  371.  
  372. If you like this program and feel the moral obligation to send me
  373. large amounts of money here's where to send it to:
  374.  
  375.  
  376. Andreas Dehmel
  377. Am Schorn 18
  378. 82327 Tutzing
  379. Germany
  380.  
  381.  
  382. During University terms (Nov - Feb, Mar - Jul) you can also reach me
  383. via e-mail:
  384.  
  385. dehmel@informatik.tu-muenchen.de
  386.  
  387. Outside of University terms I won't be checking my mailbox too often
  388. (once or twice a month) so you'll have to be patient.
  389.  
  390.  
  391. Now enjoy the program...
  392.  
  393.  
  394.  
  395. Andreas Dehmel
  396.  
  397.  
  398.  
  399.  
  400.  
  401. "Base not your joy upon the deeds of others, for what is given
  402.  can be taken away. No hope = No fear."
  403.  
  404.                                             Peter Steele
  405.  
  406.  
  407.  
  408.