11 private readonly
double c1;
12 private readonly
double c2;
40 return new string[] {
"c1",
"c2" };
52 return new CurlVariation(C1, C2, this.Arguments[0], this.Arguments[1],
59 public override void Operate(ref
double x, ref
double y)
61 double t1 = 1 + this.c1 * x + this.c2 * (x * x - y * y);
62 double t2 = this.c1 * y + 2 * this.c2 * x * y;
63 double r = t1 * t1 + t2 * t2 + 1e-6;
64 x = (x * t1 + y * t2) / r;
65 y = (y * t1 - x * t2) / r;
Class managing a script expression.
static double ToDouble(object Object)
Converts an object to a double value.
CurlVariation(ScriptNode c1, ScriptNode c2, int Start, int Length, Expression Expression)
TODO
override IElement Evaluate(IElement[] Arguments, Variables Variables)
TODO
override void Operate(ref double x, ref double y)
TODO
override string[] DefaultArgumentNames
TODO
override string FunctionName
TODO
object AssociatedObjectValue
TODO
ScriptNode[] Arguments
Function arguments.
Base class for all nodes in a parsed script tree.
int Length
Length of expression covered by node.
Expression Expression
Expression of which the node is a part.
int Start
Start position in script expression.
Basic interface for all types of elements.
ArgumentType
Type of parameter used in a function definition or a lambda definition.