Class TFractalImage (unit FractalImage)

Inherits from

TImage

Constructors


constructor Create(AOwner: TComponent);

Public declarations


Functions

destructor Destroy;

Creating palette.

procedure PaintFractal;

TFractalImage

procedure Stop;

This procedure only works if you have IncrementalDisplay set to true!

function ConvertColor(Value:Integer):TColor;

Just a small function to map the numbers to colors

procedure DrawIFS(Index:Integer);


procedure DrawMandelJulia(Mandel:Boolean);


procedure DrawMoire;

This procedure is very slow with NumberOfIterations bigger than 0 It ignores X0->Y1!!! This routine is VERY slow with Incremental display

procedure DrawSierPinski;

I strongly recommend NOT setting IncrementalDisplay to true when Drawing this fractal, because it fires a ProcessMessages on every pixel.

procedure WriteActive(A:Boolean);

Turn off the active property after paint

Properties

property Active : Boolean

Published declarations

property FractalProperties : TFractalProperties


Events

Variables

FActive : Boolean;


FFractalProperties : TFractalProperties;


KeepOn : Boolean;


OldCaption : String;


OldCursor : TCursor;

Private declarations

Palette : array[0..15] of TColor;



Constructors


constructor Create(AOwner: TComponent);

Public declarations


Functions


destructor Destroy;

Creating palette. This palette is not used yet but it might be in the future. It looks like the Array and the case statement is equally fast (or slow if you want?


procedure PaintFractal;

TFractalImage


procedure Stop;

This procedure only works if you have IncrementalDisplay set to true!


function ConvertColor(Value:Integer):TColor;

Just a small function to map the numbers to colors


procedure DrawIFS(Index:Integer);


procedure DrawMandelJulia(Mandel:Boolean);


procedure DrawMoire;

This procedure is very slow with NumberOfIterations bigger than 0 It ignores X0->Y1!!! This routine is VERY slow with Incremental display


procedure DrawSierPinski;

I strongly recommend NOT setting IncrementalDisplay to true when Drawing this fractal, because it fires a ProcessMessages on every pixel.


procedure WriteActive(A:Boolean);

Turn off the active property after paint


Properties


property Active : Boolean

Published declarations


property FractalProperties : TFractalProperties


Events


Variables


FActive : Boolean;


FFractalProperties : TFractalProperties;


KeepOn : Boolean;


OldCaption : String;


OldCursor : TCursor;

Private declarations


Palette : array[0..15] of TColor;