MANDEL

要約:

この「マンデルブローの夢」はフラクタル プログラムです。マンデルブロー 
セットと、それに対応するジュリア セットを生成します。どちらのセット
でもズーム拡大できます。拡大された描画は、新しい MDI ウィンドウに表示
されます。

さらに、プログラムは、マンデルブロー セットの境界をトレースすることが
でき、複雑な境界の形をクリップ領域として選択できます。この機能を使うと、
既存の DIB やこのプログラムで生成された DIB と合わせて、不思議な
フラクタル芸術を創造できます。作成されたフラクタルを保管したり印刷
することもできます。

他にも、パレットのアニメーティングやカラー テーブルのエントリをシフト
することによる視覚効果を表示する機能もあります。描画をモノクロのビット
マップで保管すると、maskblt 用のマスクとして使うこともできます。この
機能もフラクタル芸術の生成に使うことができます。切り抜きと貼り付けに
よるクリップボードとのデータ交換もサポートされています。


論理設計:

フラクタル生成:		浮動小数点演算または固定小数点演算のどちらかを
			使った、専用の描画スレッドで行われます。ユーザー
			がウィンドウを移動すると、描画が中断され、後で
			また再開されます。

ズーム イン領域:	回転などの変形を行うことができます。

DIB の保管:		DIBSAMP2.ZIP の DIB モジュールを使います。

境界のトレース:		境界点をパスとしてトレースします。結果のパスは、
			クリップ領域として選択することができます。この
			後、子ウィンドウ内のすべての描画は、この複雑な
			領域でクリップされます。

パレットの巡回:		パレットを使って動画にします。

印刷:			EnumPrinters
			独立した印刷スレッド
			紙の縦向きと横向きのサポート
			反転と色の反転
			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
