Constructors
BinaryExpressionField
#Create a new binary expression field.
Parameters:
| expression (Expression) | Modifier expression using the variable 'x' and 'y'. |
| x (Field) | Field provider for the 'x' variable. |
| y (Field) | Field provider for the 'y' variable. |
Properties
FormatLabel
Gets the name of this field condensed into a single word, which is how the name appears in formatted values.
Indexers
Parameters:
| index (int) |
Methods
ModifierArguments
Reduce modifier notation to just the arguments. The labelled form written by Field.Format() ("ScalarNoise min:0 max:1"), the bracketed form ("Scalar Noise (0, 1)") and a bare list of arguments ("0, 1") are all accepted, so that a displayed value can be edited by changing only the parts which matter.
Parameters:
| text (string) | Modifier notation. |
Returns: View of the arguments, ready for Interpret.Bind<T>(Fragments, ArgumentSyntax[], Argument[], Result<T>).
ScalarAt
#Parameters:
| point (Point3d) |
Overrides: Field.ScalarAt
Trace
Approximate a trajectory through a vector field.
Parameters:
| start (Point3d) | Start point of trajectory. |
| maximumAngle (Angle) | Maximum allowed kink angle between segments. |
| solver (DifferentialSolver) | Differential interpolation scheme to use. |
Returns: Points along the trajectory.
Trace
Approximate a trajectory through a vector field.
Parameters:
| start (Point3d) | Start point of trajectory. |
| stepSize (double) | Size of intermediate steps. |
| solver (DifferentialSolver) | Differential interpolation scheme to use. |
Returns: Points along the trajectory.
Trace
public Polyline Trace(Point3d start, double accuracy, double targetLength, DifferentialSolver solver)
Approximate a trajectory through a vector field.
Parameters:
| start (Point3d) | Start point of trajectory. |
| accuracy (double) | Accuracy of intermediate steps. When negative, trajectory is traced backwards. |
| targetLength (double) | Length of trajectory. |
| solver (DifferentialSolver) | Differential interpolation scheme to use. |
Returns: Point at end of trajectory.
TryModify
Try and create a new field based on this field and modifier notation.
Only the salient properties of a field are exposed to text, the rest are copied from this instance. That is why there is no way to write a field of a specific type from nothing; there has to be one already to serve as the template. Constant scalar and vector fields are the exception, they are entirely described by a number or a vector.
Implementations are expected to accept whatever their Field.Format() writes, so a value can be edited by changing the text it is displayed as. Field.ModifierArguments(string) deals with the label in front of the arguments.
Parameters:
| text (string) | Modifier notation. |
Returns: Result of parsing operation.
VectorAt
#Parameters:
| point (Point3d) |
Overrides: Field.VectorAt