
Thursday, May 31, 2007
Wednesday, May 30, 2007
Tuesday, May 29, 2007
Monday, May 28, 2007
Sunday, May 27, 2007
New Apophysys script functions
Here are some useful transform manipulation procedure calls - place the procedure code at the beginning of a script and then call it later on using the procedure name (in your script code you'd call it just by typing "procedurenamehere;").
procedure FlipTransformHorizontal;
{ Flips the transform horizontally (World Pivot)}
begin
aaxis := transform.a;
baxis := transform.b;
eaxis := transform.e;
transform.a := (aaxis *(-1));
transform.b := (baxis *(-1));
transform.e := (eaxis *(-1));
end;
procedure FlipTransformVertical;
{ Flips the transform vertically (World Pivot)}
begin
caxis := transform.c;
daxis := transform.d;
faxis := transform.f;
transform.c := (caxis *(-1));
transform.d := (daxis *(-1));
transform.f := (faxis *(-1));
end;
procedure RotateTransformLeft;
{ Rotates the Post Transform Left 90 Degrees (World Pivot)}
begin
aaxis := transform.a;
baxis := transform.b;
eaxis := transform.e;
caxis := transform.c;
daxis := transform.d;
faxis := transform.f;
transform.a := (caxis *(-1));
transform.b := (daxis *(-1));
transform.e := (faxis *(-1));
transform.c := (aaxis);
transform.d := (baxis);
transform.f := (eaxis);
end;
procedure RotateTransformLeft;
{ Rotates the Post Transform Right 90 Degrees (World Pivot)}
begin
aaxis := transform.a;
baxis := transform.b;
eaxis := transform.e;
caxis := transform.c;
daxis := transform.d;
faxis := transform.f;
transform.a := (caxis);
transform.b := (daxis);
transform.e := (faxis);
transform.c := (aaxis*(-1));
transform.d := (baxis*(-1));
transform.f := (eaxis*(-1));
end;
procedure FlipPostHorizontal;
{ Flips the post transform horizontally (World Pivot)}
begin
aaxis := transform.post[0,0];
baxis := transform.post[1,0];
eaxis := transform.post[2,0];
transform.post[0,0] := (aaxis *(-1));
transform.post[1,0] := (baxis *(-1));
transform.post[2,0] := (eaxis *(-1));
end;
procedure FlipPostVertical;
{ Flips the post transform vertically (World Pivot)}
begin
caxis := transform.post[0,1];
daxis := transform.post[1,1];
faxis := transform.post[2,1];
transform.post[0,1] := (caxis *(-1));
transform.post[1,1] := (daxis *(-1));
transform.post[2,1] := (faxis *(-1));
end;
procedure RotatePostLeft;
{ Rotates the Post Transform Left 90 Degrees (World Pivot)}
begin
aaxis := transform.post[0,0];
baxis := transform.post[1,0];
eaxis := transform.post[2,0];
caxis := transform.post[0,1];
daxis := transform.post[1,1];
faxis := transform.post[2,1];
transform.post[0,0] := (caxis *(-1));
transform.post[1,0] := (daxis *(-1));
transform.post[2,0] := (faxis *(-1));
transform.post[0,1] := (aaxis);
transform.post[1,1] := (baxis);
transform.post[2,1] := (eaxis);
end;
procedure RotatePostRight;
{ Rotates the Post Transform Right 90 Degrees (World Pivot)}
begin
aaxis := transform.post[0,0];
baxis := transform.post[1,0];
eaxis := transform.post[2,0];
caxis := transform.post[0,1];
daxis := transform.post[1,1];
faxis := transform.post[2,1];
transform.post[0,0] := (caxis);
transform.post[1,0] := (daxis);
transform.post[2,0] := (faxis);
transform.post[0,1] := (aaxis*(-1));
transform.post[1,1] := (baxis*(-1));
transform.post[2,1] := (eaxis*(-1));
end;
procedure FlipTransformHorizontal;
{ Flips the transform horizontally (World Pivot)}
begin
aaxis := transform.a;
baxis := transform.b;
eaxis := transform.e;
transform.a := (aaxis *(-1));
transform.b := (baxis *(-1));
transform.e := (eaxis *(-1));
end;
procedure FlipTransformVertical;
{ Flips the transform vertically (World Pivot)}
begin
caxis := transform.c;
daxis := transform.d;
faxis := transform.f;
transform.c := (caxis *(-1));
transform.d := (daxis *(-1));
transform.f := (faxis *(-1));
end;
procedure RotateTransformLeft;
{ Rotates the Post Transform Left 90 Degrees (World Pivot)}
begin
aaxis := transform.a;
baxis := transform.b;
eaxis := transform.e;
caxis := transform.c;
daxis := transform.d;
faxis := transform.f;
transform.a := (caxis *(-1));
transform.b := (daxis *(-1));
transform.e := (faxis *(-1));
transform.c := (aaxis);
transform.d := (baxis);
transform.f := (eaxis);
end;
procedure RotateTransformLeft;
{ Rotates the Post Transform Right 90 Degrees (World Pivot)}
begin
aaxis := transform.a;
baxis := transform.b;
eaxis := transform.e;
caxis := transform.c;
daxis := transform.d;
faxis := transform.f;
transform.a := (caxis);
transform.b := (daxis);
transform.e := (faxis);
transform.c := (aaxis*(-1));
transform.d := (baxis*(-1));
transform.f := (eaxis*(-1));
end;
procedure FlipPostHorizontal;
{ Flips the post transform horizontally (World Pivot)}
begin
aaxis := transform.post[0,0];
baxis := transform.post[1,0];
eaxis := transform.post[2,0];
transform.post[0,0] := (aaxis *(-1));
transform.post[1,0] := (baxis *(-1));
transform.post[2,0] := (eaxis *(-1));
end;
procedure FlipPostVertical;
{ Flips the post transform vertically (World Pivot)}
begin
caxis := transform.post[0,1];
daxis := transform.post[1,1];
faxis := transform.post[2,1];
transform.post[0,1] := (caxis *(-1));
transform.post[1,1] := (daxis *(-1));
transform.post[2,1] := (faxis *(-1));
end;
procedure RotatePostLeft;
{ Rotates the Post Transform Left 90 Degrees (World Pivot)}
begin
aaxis := transform.post[0,0];
baxis := transform.post[1,0];
eaxis := transform.post[2,0];
caxis := transform.post[0,1];
daxis := transform.post[1,1];
faxis := transform.post[2,1];
transform.post[0,0] := (caxis *(-1));
transform.post[1,0] := (daxis *(-1));
transform.post[2,0] := (faxis *(-1));
transform.post[0,1] := (aaxis);
transform.post[1,1] := (baxis);
transform.post[2,1] := (eaxis);
end;
procedure RotatePostRight;
{ Rotates the Post Transform Right 90 Degrees (World Pivot)}
begin
aaxis := transform.post[0,0];
baxis := transform.post[1,0];
eaxis := transform.post[2,0];
caxis := transform.post[0,1];
daxis := transform.post[1,1];
faxis := transform.post[2,1];
transform.post[0,0] := (caxis);
transform.post[1,0] := (daxis);
transform.post[2,0] := (faxis);
transform.post[0,1] := (aaxis*(-1));
transform.post[1,1] := (baxis*(-1));
transform.post[2,1] := (eaxis*(-1));
end;
Monday, May 7, 2007
Fractal flame
Fractal flames are a member of the iterated function system class of fractals created by Scott Draves in 1992.
Fractal flames differ from ordinary iterated function systems in three ways:
* Nonlinear functions instead of affine transforms.
* Log-density display instead of linear or binary (a form of tone mapping)
* Color by structure instead of monochrome or by density.
The tone mapping and coloring expose and preserve as much of the information content of the fractal as possible. Preserving information maximizes aesthetics.
Fractal flames differ from ordinary iterated function systems in three ways:
* Nonlinear functions instead of affine transforms.
* Log-density display instead of linear or binary (a form of tone mapping)
* Color by structure instead of monochrome or by density.
The tone mapping and coloring expose and preserve as much of the information content of the fractal as possible. Preserving information maximizes aesthetics.
Subscribe to:
Posts (Atom)