Re: Chaos Scripts

Home Forums Scripts Chaos Scripts Re: Chaos Scripts

#2759
Anonymous
Inactive

Ok, you have some different mistakes in your code. x0/y0/z0 have to be declared in onCreate function. Moreover, the setPointAt JavaScript syntax was wrong.
Here is the correct code… but all points are on (0, 0, 0)…
Fon’t forget you can trace your code by using console(“hello world”); function (and log trace appear in “Received messages” in IanniX.

//Script "Lorenz Graph"
//Insert requests for global variables:
function onConfigure() {
title("Lorenz attractor");
ask("General", "initial x", "xo", 0);
ask("General", "initial y", "yo", 0);
ask("General", "Initial z", "zo", 0);
ask("Parameters", "sigma", "s", 10);
ask("Parameters", "beta", "b", 2.66666);
ask("Parameters", "row", "p", 28);
ask("Euler", "Delta t", "dt",.01);
ask("Euler", "Number of Steps", "r", 10);

}

//Insert code to create score:
function onCreate() {
var x = xo;
var y = yo;
var z = zo;
var i;

run("clear");
run("zoom 100");
run("center 0 0");
run("rotate 0 0 0");
run("registerTexture background 0 0 0 0 ./Tools/background.jpg");

//Add curve
run("add curve 1001");
run("setPos current " + xo + " " + yo + " " + zo);
run("setPointAt current 0 " + xo + " " + yo + " " + zo);
for(var index = 0; index <= r; index++) {
//evaluate Euler method
x = xo + ( s * ( y - x )) * dt;
y = yo + ( x* ( p - z ) - y ) * dt;
z = zo + ( x * y - b * z ) * dt;
i = index;
//create line at xo, yo, zo to x, y, z
console(x + " " + y + " " + z);
DrawEul(index, x, y, z);
//set new initial values
xo = x;
yo = y;
zo = z;
}
run("add cursor 1");
run("setCurve current lastCurve");
run("setSpeed current auto 100");

}

//Custom function
function DrawEul(index, ex, wy, ze) {
//run("setPointAt current pNum " + exo + " " + wyo + " " + zeo);
run("setPointAt current " + index + " " + ex + " " + wy + " " + ze);
}

© IanniX Association

What is IanniX? | Download | Showcase | Forums | Research | About