Constructors
SimplexScalarField
#Create a scalar noise field within a specific range.
SimplexScalarField
#Create a new simplex noise field.
Parameters:
| plane (Plane) | Origin and orientation of noise. |
| layers (int) | Number of noise layers (or 'octaves'). |
| minimum (double) | Minimum value. |
| maximum (double) | Maximum value. |
| Δφ (double) | Amplitude decay for every subsequent layer. |
| λ (double) | Wavelength for top-most layer. |
| Δλ (double) | Wavelength decay for every subsequent layer. |
Properties
FormatLabel
Gets the name of this field condensed into a single word, which is how the name appears in formatted values.
Overrides: Field.Type
Methods
Parameters:
| point (Point3d) |
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.
Overrides: Field.TryModify
VectorAt
Evaluate the field vector component at a specific point in space. If this is a scalar-field, the returned value is *probably* a vector in the form (0,0,scalar), but this is not guaranteed.
Parameters:
| point (Point3d) | The point at which to evaluate the field. |
Returns: The vector value at the given coordinate
Overrides: Field.VectorAt