12 private readonly
double slices;
13 private readonly
double rotation;
14 private readonly
double thickness;
31 public PieVariation(
double Slices,
double Rotation,
double Thickness,
37 this.rotation = Rotation;
38 this.thickness = Thickness;
48 return new string[] {
"slices",
"rotation",
"thickness" };
61 return new PieVariation(Slices, Rotation, Thickness, this.Arguments[0], this.Arguments[1], this.Arguments[2],
68 public override void Operate(ref
double x, ref
double y)
76 rnd1 = this.gen.NextDouble();
77 rnd2 = this.gen.NextDouble();
78 rnd3 = this.gen.NextDouble();
81 double t1 = Math.Round(this.slices * rnd1);
82 double t2 = this.rotation + 2 * Math.PI / this.slices * (t1 + rnd2 * this.thickness);
83 x = rnd3 * Math.Cos(t2);
84 y = rnd3 * Math.Sin(t2);
87 private readonly Random gen =
new Random();
Class managing a script expression.
static double ToDouble(object Object)
Converts an object to a double value.
override IElement Evaluate(IElement[] Arguments, Variables Variables)
TODO
override void Operate(ref double x, ref double y)
TODO
PieVariation(double Slices, double Rotation, double Thickness, ScriptNode slices, ScriptNode rotation, ScriptNode thickness, int Start, int Length, Expression Expression)
TODO
PieVariation(ScriptNode slices, ScriptNode rotation, ScriptNode thickness, int Start, int Length, Expression Expression)
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.