JS circle

Falk's icon

Hi,

Max Patch
Copy patch and select New From Clipboard in Max.

I´m new at js and I´m trying to draw a circle, but there is still something wrong.
Maybe someone could help...

//the js

inlets = 1;
outlets = 1;

var r = 1;

function msg_float(x)
{
Math.pow(r,2) = Math.pow(y,2)+Math.pow(x,2);
outlet(0, y);
}

//thanks Falk

MIB's icon

not actually sure what you are trying to do (my math skills are bad!!) but it looks like r2 = x2 + y2. you are trying to assign the result of your equation (y2+x2) to a function Math.pow(r,2), which doesn't make sense since Math.pow is returning a value. You can only pass it a value inside the (). also y is never defined and you are trying to send it to your outlet.
The below should work and give you r2 (y is a constant right now).
I'm sure someone with more js and math chops will explain it better, but maybe this will get you started.

var y = 2;

function msg_float(x)
{

var r = Math.pow(y,2)+Math.pow(x,2);

outlet(0, r);

}

Falk's icon

Hi MIB,

you got me on the right path, I tried to assign a function to a value, I have to solve the equation for y, then it works, code blow.

thanks a lot

Falk

inlets = 1;
outlets = 1;

var r =1;

function msg_float(x)
{

y = Math.sqrt(Math.pow(r,2) - Math.pow(x,2));

outlet(0, y);

}

Falk's icon

Hi HTH,

thanks too for your nice example

Falk