MANDEL Summary: Mandelbrot Dream is a fractal program. Specifically, it generates the Mandelbrot set and its corresponding Julia sets. User is able to zoom into any set. The zoom-in picture will be displayed in a new MDI child window. In addition, the program can trace out the boundary of a mandelbrot set and select the complicated boundary scan as a clip region. This feature enables users to create wonderful fractal art with existing DIBs and DIB generated by this program. Moreover, users will be able to save and print the art they created. Other features include visual effect created by animating the palette and shifting of entries of the color table. Saving picture as monochrome bitmap which can be used as mask for maskblt. Again, this feature can be used to generate fractal art. Also, cut and paste into clipboard will be added. Logical Design: Fractal generation: on separate drawing threads using either floating point or fixed-point math. Drawing threads will be suspended if users moves windows around and resumed later on. Zooming in region: can be transformed including rotation. Saving DIB: uses the DIB modules in the DIBSAMP2.ZIP. Boundary tracing: Traces out the boundary points as PATH. The resulting PATH can be selected as clipped region. Then all drawing in the child window will be clipped to the complex region. Palette cycling: animate palette Printing: EnumPrinters Separate printing thread Portrait/Landscape Flips and negative PlgBlt _lclose getparent setcapture _lwrite getpixel setcursor beginpaint getstockobject setdibits bitblt getsubmenu setdibitstodevice checkmenuitem getsystemdirectory setfocus choosecolor getsystemmetrics setmapmode closehandle gettextmetrics setpixel createcompatiblebitmap gettickcount setrop2 createcompatibledc getwindowlong setstretchbltmode createdibitmap getwindowrect settextcolor createfile getwindowtext setwindowlong createfilemapping globalalloc setwindowpos createfontindirect globalfree setwindowtext createpatternbrush invalidaterect stretchblt createpen lineto strokepath createsolidbrush loadaccelerators suspendthread createthread loadcursor systemparametersinfo createwindow loadicon terminatethread createwindowex loadmenu translatemessage defframeproc localalloc updatewindow defmdichildproc localfree winmain defwindowproc locallock wndclass deletedc localunlock wsprintf deleteobject makeprocinstance dialogbox mapviewoffile dispatchmessage maskblt dptolp messagebox drawmenubar movetoex enddialog movewindow endpaint openfile endpath outputdebugstring enumchildwindows patblt exitthread pathtoregion extfloodfill polyline exttextout postmessage getclassname postquitmessage getclientrect releasecapture getdc releasedc getdevicecaps resumethread getdibits selectclippath getlasterror selectcliprgn getmapmode selectobject getmessage sendmessage getmodulehandle setbkcolor getobject setbkmode