abstract wrapper around TermNode

by Sylvio Sell, Rostock 2017

Static methods

staticinlineabs(a:Formula):Formula

staticinlineacos(a:Formula):Formula

@:op(A + B)staticadd(a:Formula, b:Formula):Formula

staticinlineasin(a:Formula):Formula

staticinlineatan(a:Formula):Formula

staticinlineatan2(a:Formula, b:Formula):Formula

staticbind(this:TermNode, formula:Formula, ?paramName:String):Formula

Link a variable inside of this formula to another formula

Parameters:

formula

formula that will be linked into

paramName

(optional) name of the variable to link with (e.g. if formula have no or different name)

staticbindArray(this:TermNode, formulas:Array<Formula>, ?paramNames:Array<String>):Formula

Link variables inside of this formula to another formulas

Parameters:

formulas

array of formulas to link to variables

paramNames

(optional) names of the variables to link with (e.g. if formulas have no or different names)

staticinlinebindMap(this:TermNode, formulaMap:Map<String, Formula>):Formula

Link variables inside of this formula to another formulas

Parameters:

formulaMap

map of formulas where the keys have same names as the variables to link with

staticinlinecos(a:Formula):Formula

staticinlinecot(a:Formula):Formula

@:op(A / B)staticdivide(a:Formula, b:Formula):Formula

staticinlinefromBytes(b:Bytes):Formula

Creates a formula from a packet Bytes representation

@:fromstaticfromFloat(a:Float):Formula

@:fromstaticfromString(a:String):Formula

staticinlineln(a:Formula):Formula

staticinlinelog(a:Formula, b:Formula):Formula

staticinlinemax(a:Formula, b:Formula):Formula

staticinlinemin(a:Formula, b:Formula):Formula

@:op(A % B)staticmodulo(a:Formula, b:Formula):Formula

@:op(A * B)staticmultiply(a:Formula, b:Formula):Formula

@:op(A ^ B)staticpotenz(a:Formula, b:Formula):Formula

staticinlineset(this:TermNode, formula:Formula):Formula

Copy all from another Formula to this (keeps the own name if it is defined) Keeps the bindings where this formula is linked into by a parameter.

    @param  formula the source formula from where the value is copyed

staticinlinesin(a:Formula):Formula

@:op(A - B)staticsubtract(a:Formula, b:Formula):Formula

staticinlinetan(a:Formula):Formula

@:tostaticinlinetoFloat(this:TermNode):Float

@:tostaticinlinetoStr(this:TermNode):String

@:value({ plOut : null, depth : null })staticinlinetoString(this:TermNode, ?depth:Int, ?plOut:String):String

Creates a new formula from a String, e.g. new("1+2") or new("f: 1+2") where "f" is the name of formula

Parameters:

depth

(optional) how deep the variable-bindings should be resolved

plOut

(optional) creates formula for a special language (only "glsl" at now)

staticinlineunbind(this:TermNode, formula:Formula):Formula

Delete all connections of the linked formula

Parameters:

formula

formula that has to be unlinked

staticunbindArray(this:TermNode, formulas:Array<Formula>):Formula

Delete all connections of the linked formulas

Parameters:

formulas

array of formulas that has to be unlinked

staticinlineunbindParam(this:TermNode, paramName:String):Formula

Delete all connections to linked formulas for a given variable name

Parameters:

paramName

name of the variable where the connected formula has to unlink from

staticinlineunbindParamArray(this:TermNode, paramNames:Array<String>):Formula

Delete all connections to linked formulas for the given variable names

Parameters:

paramNames

array of variablenames where the connected formula has to unlink from