ArraysAndInterfaces
These classes support array operations and inheritance-based algorithms.
- Arrays
- GrowableArray -- A carrier for a Float64Array, with methods that hide reallocation of the underlying array as contents are added.
- Point2dArray, Point3dArray, Point4dArray, Vector3dArray -- miscellaneous operations on arrays of 2d and 3d points.
- Interfaces
- GeometryHandler -- a double-dispatch protocol used for efficient implementation of algorithms that work on many geometry types.
Classes
Name | Description | |
---|---|---|
GeometryHandler | GeometryHandler defines the base abstract methods for double-dispatch geometry computation. |
|
GrowableBlockedArray | Array of contiguous doubles, indexed by block number and index within block. | |
GrowableFloat64Array | A GrowableFloat64Array is Float64Array accompanied by a count of how many of the array's entries are considered in use. |
|
GrowableXYArray | GrowableXYArray manages a (possibly growing) Float64Array to pack xy coordinates. |
|
GrowableXYZArray | GrowableXYArray manages a (possibly growing) Float64Array to pack xy coordinates. |
|
IndexedCollectionInterval | Object describing a (contiguous) subset of indices to an IndexedXYZCollection | |
IndexedReadWriteXYZCollection | abstract base class extends IndexedXYZCollection, adding methods to push, peek, and pop, and rewrite. | |
IndexedXYCollection | abstract base class for access to XY data with indexed reference. | |
IndexedXYZCollection | abstract base class for read-only access to XYZ data with indexed reference. | |
IndexedXYZCollectionInterval | Reference to an interval of the indices of an IndexedXYZCollection. | |
NullGeometryHandler | NullGeometryHandler is a base class for dispatching various geometry types to application specific implementation |
|
Point3dArrayCarrier | Helper object to access members of a Point3d[] in geometric calculations. | |
RecurseToCurvesGeometryHandler | Implement GeometryHandler methods, but override handleCurveCollection so that all methods |
Interfaces
Name | Description | |
---|---|---|
IStrokeHandler | IStrokeHandler is an interface with methods to receive data about curves being stroked. | |
UVSurface | Interface with methods for mapping (u,v) fractional coordinates to surface xyz and derivatives. | |
UVSurfaceIsoParametricDistance | Interface for queries of distance-along in u and v directions |
Type Aliases
Name | Description | |
---|---|---|
BlockComparisonFunction | Signature for a function which does lexical comparison of blockSize consecutive values as 2 starting indices. |
|
LineStringDataVariant | Type for use as signature for xyz data of a single linestring appearing in a parameter list. | |
MultiLineStringDataVariant | Type for use as signature for multiple xyz data of multiple linestrings appearing in a parameter list. | |
OptionalGrowableFloat64Array | Type for a OptionalGrowableFloat64Array or undefined. |
Last Updated: 15 May, 2024
Found something wrong, missing, or unclear on this page?Raise an issue in our repo.