## Saturday, June 2, 2007

### Spiral rainbow

Spiral rainbow tutorial

First of all start apo and make a blank flame.

Set on red triangle noise= 0.3 blur=0.3 and Gaussian blur=0.5

Make sure that linear=0.

On yellow triangle set linear=0.9 and spherical=0.1

Now rotate yellow triangle 30 degrees counter clockwise and move it

up and left with 0.2

Now go to transform tab and set the yellow transform wight to 0.99 and

the red weight to 0.01

For the rainbow effect go to color tab and set red symmetry to -0.8 and

yellow symmetry to 0.8

You can experiment by adding a final transform and tweak it.

Enjoy !

## 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)