| Name | 
Description | 
 | 
| AkimaCurve3d | 
Interpolating curve. | 
  | 
| AkimaCurve3dOptions | 
fitPoints and end condition data for AkimaCurve3d | 
  | 
| AlternatingCCTreeBuilder | 
Context structure for building an AlternatingConvexClipTreeNode from a polygon. | 
  | 
| AlternatingCCTreeNode | 
An AlternatingConvexClipTreeNode is a node in a tree structure in which | 
  | 
| AlternatingCCTreeNodeCurveClipper | 
 | 
  | 
| Angle | 
An Angle carries the numeric value of an angle, with methods to allow (require!) callers to | 
  | 
| AngleSweep | 
An AngleSweep is a pair of angles at start and end of an interval. | 
  | 
| Arc3d | 
Circular or elliptic arc. | 
  | 
| AuxChannel | 
Represents a single PolyfaceAuxData channel. | 
  | 
| AuxChannelData | 
Represents the AuxChannel data at a single input value. | 
  | 
| BagOfCurves | 
* A BagOfCurves object is a collection of AnyCurve objects. | 
  | 
| BarycentricTriangle | 
3 points defining a triangle to be evaluated with barycentric coordinates. | 
  | 
| BentleyGeometryFlatBuffer | 
Top level entries to convert between GeometryQuery types and FlatBuffer Bytes. | 
  | 
| Bezier1dNd | 
Shared implementation details for derived bezier curve classes | 
  | 
| BezierCurve3d | 
3d Bezier curve class. | 
  | 
| BezierCurve3dH | 
3d curve with homogeneous weights. | 
  | 
| BezierCurveBase | 
Base class for CurvePrimitive (necessarily 3D) with _polygon. | 
  | 
| BilinearPatch | 
A bilinear patch is a surface defined by its 4 corner points. | 
  | 
| BooleanClipFactory | 
A BooleanClipFactory is a factory to create objects that implement interior nodes of a tree of boolean clip operations. | 
  | 
| Box | 
A box-like solid defined by | 
  | 
| BSpline1dNd | 
Knots and poles for a B-spline function mapping R to R^n. | 
  | 
| BSpline2dNd | 
Bspline knots and poles for 2d-to-Nd. | 
  | 
| BSplineCurve3d | 
A BSplineCurve3d is a B-spline curve whose poles are Point3d. | 
  | 
| BSplineCurve3dBase | 
Base class for BSplineCurve3d and BSplineCurve3dH. | 
  | 
| BSplineCurve3dH | 
Weighted (Homogeneous) BSplineCurve in 3d | 
  | 
| BSplineCurveOps | 
A class with static methods for creating B-spline curves. | 
  | 
| BSplineSurface3d | 
BSplineSurface3d is a parametric surface in xyz space. | 
  | 
| BSplineSurface3dH | 
BSpline Surface in xyzw homogeneous space | 
  | 
| ClippedPolyfaceBuilders | 
A pair of PolyfaceBuilder objects, for use by clippers that emit inside and outside parts. | 
  | 
| ClipPlane | 
A ClipPlane is a single plane represented as | 
  | 
| ClipPrimitive | 
* ClipPrimitive is a base class for clipping implementations that use | 
  | 
| ClipShape | 
A clipping volume defined by a shape (an array of 3d points using only x and y dimensions). | 
  | 
| ClipUtilities | 
Class whose various static methods are functions for clipping geometry | 
  | 
| ClipVector | 
Class holding an array structure of shapes defined by ClipPrimitive | 
  | 
| CloneCurvesContext | 
Algorithmic class for cloning curve collections. | 
  | 
| Cone | 
A cone with axis along the z-axis of a (possibly skewed) local coordinate system. | 
  | 
| ConsolidateAdjacentCurvePrimitivesOptions | 
* Options to control method consolidateAdjacentPrimitives. | 
  | 
| Constant | 
Commonly used constant values. | 
  | 
| ConstructCurveBetweenCurves | 
Context for constructing a curve that is interpolated between two other curves. | 
  | 
| ConvexClipPlaneSet | 
A ConvexClipPlaneSet is a collection of ClipPlanes, often used for bounding regions of space. | 
  | 
| ConvexFacetLocationDetail | 
Implementation of FacetLocationDetail for a convex facet. | 
  | 
| CoordinateXYZ | 
A Coordinate is a Point3d with supporting methods from the GeometryQuery abstraction. | 
  | 
| CurveAndSurfaceLocationDetail | 
Carrier for both curve and surface data, e.g. | 
  | 
| CurveChain | 
Shared base class for use by both open and closed paths. | 
  | 
| CurveChainWithDistanceIndex | 
CurveChainWithDistanceIndex is a CurvePrimitive whose fractional parameterization is proportional to true | 
  | 
| CurveCollection | 
A CurveCollection is an abstract (non-instantiable) class for various sets of curves with particular structures: | 
  | 
| CurveCurve | 
CurveCurve has static method for various computations that work on a pair of curves or curve collections. | 
  | 
| CurveExtendOptions | 
Logic for deciding how a curve may be extended for closest point or intersection searches. | 
  | 
| CurveFactory | 
The CurveFactory class contains methods for specialized curve constructions. | 
  | 
| CurveLocationDetail | 
CurveLocationDetail carries point and parameter data about a point evaluated on a curve. | 
  | 
| CurveLocationDetailArrayPair | 
Data bundle for a pair of arrays of CurveLocationDetail structures. | 
Deprecated | 
| CurveLocationDetailPair | 
A pair of CurveLocationDetail. | 
  | 
| CurveOps | 
Static methods for miscellaneous curve operations. | 
  | 
| CurvePrimitive | 
A curve primitive is bounded. | 
  | 
| CylindricalRangeQuery | 
Context for computing geometry range around an axis. | 
  | 
| DeepCompare | 
Utilities to compare json objects by searching through their properties. | 
  | 
| DirectSpiral3d | 
DirectSpiral3d acts like a TransitionSpiral3d for serialization purposes, but implements spiral types that have "direct" xy calculations without the integrations required | 
  | 
| Ellipsoid | 
A complete unit sphere mapped by an arbitrary Transform. | 
  | 
| EllipsoidPatch | 
* An EllipsoidPatch is | 
  | 
| EllipticalArcApproximationOptions | 
Options for generating samples for the construction of an approximation to an elliptical arc. | 
  | 
| FacetFaceData | 
Data for a face in a polyface containing facets. | 
  | 
| FacetIntersectOptions | 
Options for computing and processing facet intersection methods. | 
  | 
| FacetLocationDetailPair | 
A pair of FacetLocationDetail. | 
  | 
| FacetOffsetProperties | 
 | 
  | 
| FacetOrientationFixup | 
 | 
  | 
| FrameBuilder | 
Helper class to accumulate points and vectors until there is enough data to define a coordinate system. | 
  | 
| GeodesicPathPoint | 
Detailed data for a point on a 2-angle parameter space. | 
  | 
| GeodesicPathSolver | 
Algorithm implementation class for computing approximate optimal (shortest) path points. | 
  | 
| Geometry | 
Class containing static methods for typical numeric operations. | 
  | 
| GeometryHandler | 
GeometryHandler defines the base abstract methods for double-dispatch geometry computation. | 
  | 
| GeometryQuery | 
Queries to be supported by Curve, Surface, and Solid objects. | 
  | 
| GraphSplitData | 
 | 
  | 
| GriddedRaggedRange2dSet | 
A GriddedRaggedRange2dSet is: | 
  | 
| GriddedRaggedRange2dSetWithOverflow | 
Use GriddedRaggedRange2dSetWithOverflow for searching among many ranges for which: | 
  | 
| 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. | 
  | 
| GrowableXYZArrayCache | 
Cache of GrowableXYZArray. | 
  | 
| HalfEdgeMaskValidation | 
Static methods to inspect mask consistency properties in HalfEdgeGraph. | 
  | 
| HalfEdgePointerInspector | 
HalfEdgePointerInspector has methods to check HalfEdge objects for pointer errors. | 
  | 
| HalfEdgePositionDetail | 
Description of a generalized position within a graph, categorized as: | 
  | 
| IndexedCollectionInterval | 
Object describing a (contiguous) subset of indices to an IndexedXYZCollection | 
  | 
| IndexedEdgeMatcher | 
An IndexedEdgeMatcher carries an array of edge start and end indices for sorting and subsequent analyses, | 
  | 
| IndexedPolyface | 
An IndexedPolyface is a set of facets which can have normal, param, and color arrays with independent point, | 
  | 
| IndexedPolyfaceSubsetVisitor | 
An IndexedPolyfaceSubsetVisitor is an IndexedPolyfaceVisitor which only visits a subset of facets in the polyface. | 
  | 
| IndexedPolyfaceVisitor | 
An IndexedPolyfaceVisitor is an iterator-like object that "visits" facets of a mesh. | 
  | 
| IndexedPolyfaceWalker | 
The IndexedPolyfaceWalker class supports navigation around facets, across edges, and around vertices in an | 
  | 
| IndexedReadWriteXYZCollection | 
Abstract base class extends IndexedXYZCollection with methods that modify the collection. | 
  | 
| 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. | 
  | 
| IndexedXYZCollectionPolygonOps | 
IndexedXYZCollectionPolygonOps class contains static methods for typical operations on polygons carried as IndexedXYZCollection | 
  | 
| IntegratedSpiral3d | 
An IntegratedSpiral3d is a curve defined by integrating its curvature. | 
  | 
| InterpolationCurve3d | 
Interpolating curve. | 
  | 
| InterpolationCurve3dOptions | 
fitPoints and end condition data for InterpolationCurve3d | 
  | 
| JointOptions | 
Control parameters for joint construction, used in offset construction methods such as constructPolygonWireXYOffset and constructCurveXYOffset. | 
  | 
| KnotVector | 
Array of non-decreasing numbers acting as a knot vector for B-spline curves and surfaces. | 
  | 
| LinearSweep | 
A LinearSweep is a SolidPrimitive defined by: | 
  | 
| LineSegment3d | 
A LineSegment3d is: | 
  | 
| LineString3d | 
* A LineString3d (sometimes called a PolyLine) is a sequence of xyz coordinates that are to be joined by line | 
  | 
| LineString3dRangeTreeContext | 
Handler class for searching a range tree containing the segments of a linestring. | 
  | 
| LongitudeLatitudeNumber | 
An AngleAngleNumber is a pair of angles (named longitude and latitude) and an additional number. | 
  | 
| Loop | 
A Loop is a curve chain that is the boundary of a closed (planar) loop. | 
  | 
| LoopCurveLoopCurve | 
Structure carrying a pair of loops with curve geometry. | 
  | 
| Map4d | 
Map4 carries two Matrix4d which are inverses of each other. | 
  | 
| Matrix3d | 
A Matrix3d is a 3x3 matrix. | 
  | 
| Matrix4d | 
* A Matrix4d is a matrix with 4 rows and 4 columns. | 
  | 
| MomentData | 
A MomentData structure exists in several levels: | 
  | 
| NonConvexFacetLocationDetail | 
Implementation of FacetLocationDetail for a general facet, which may or may not be convex. | 
  | 
| NullGeometryHandler | 
NullGeometryHandler is a base class for dispatching various geometry types to application specific implementation | 
  | 
| NumberArray | 
The NumberArray class contains static methods that act on arrays of numbers. | 
  | 
| OffsetMeshContext | 
 | 
  | 
| OffsetMeshOptions | 
Options carrier for cloneOffset. | 
  | 
| OffsetOptions | 
Options for offsetting a curve, used in offset construction methods such as constructOffsetXY, constructPolygonWireXYOffset and Region.Ops.constructCurveXYOffset. | 
  | 
| ParityRegion | 
* A ParityRegion is a collection of Loop objects. | 
  | 
| Path | 
* A Path object is a collection of curves that join head-to-tail to form a path. | 
  | 
| PathFragment | 
Annotation of a fragment, i.e. | 
  | 
| Plane3d | 
Plane3d is the abstract base class for multiple 3d plane representations: | 
  | 
| Plane3dByOriginAndUnitNormal | 
A plane defined by | 
  | 
| Plane3dByOriginAndVectors | 
A Plane3dByOriginAndVectors is an origin and a pair of vectors. | 
  | 
| PlaneByOriginAndVectors4d | 
A PlaneByOriginAndVectors4d is a 4d origin and pair of 4d "vectors" defining a 4d plane. | 
  | 
| Point2d | 
2D point with x,y as properties | 
  | 
| Point2dArray | 
The Point2dArray class contains static methods that act on arrays of 2d points. | 
  | 
| Point2dArrayCarrier | 
Helper object to access members of a Point2d[] in geometric calculations. | 
  | 
| Point3d | 
3D point with x,y,z as properties | 
  | 
| Point3dArray | 
The Point3dArray class contains static methods that act on arrays of 3d points. | 
  | 
| Point3dArrayCarrier | 
Helper object to access members of a Point3d[] in geometric calculations. | 
  | 
| Point3dArrayPolygonOps | 
Point3dArrayPolygonOps class contains static methods for typical operations on polygons carried as Point3d[] | 
  | 
| Point3dArrayRangeTreeContext | 
Handler class for searching a range tree containing unordered Point3d data. | 
  | 
| Point4d | 
4 Dimensional point (x,y,z,w) used in perspective calculations. | 
  | 
| Point4dArray | 
The Point4dArray class contains static methods that act on arrays of 4d points. | 
  | 
| PointStreamGrowableXYZArrayCollector | 
Concrete class to handle startChain, handleXYZ and endChain calls and return a (one-level deep array of | 
  | 
| PointStreamRangeCollector | 
PointStream handler to collect the range of points. | 
  | 
| PointStreamXYZXYZHandlerBase | 
Base class for handling points in pairs. | 
  | 
| PointString3d | 
A PointString3d is an array of points. | 
  | 
| PointStringDeepXYZArrayCollector | 
 | 
  | 
| Polyface | 
A Polyface is an abstract mesh structure (of unspecified implementation) that provides a PolyfaceVisitor | 
  | 
| PolyfaceAuxData | 
The PolyfaceAuxData structure contains one or more analytical data channels for each vertex of a Polyface, allowing the polyface to be styled | 
  | 
| PolyfaceBuilder | 
* Simple construction for strongly typed GeometryQuery objects: | 
  | 
| PolyfaceClip | 
PolyfaceClip is a static class gathering operations using Polyfaces and clippers. | 
  | 
| PolyfaceData | 
PolyfaceData carries data arrays for point, normal, uv-parameters, and color, and index arrays for each. | 
  | 
| PolyfaceQuery | 
PolyfaceQuery is a static class whose methods implement queries on a Polyface or PolyfaceVisitor provided as a | 
  | 
| PolyfaceRangeTreeContext | 
Handler class for searching a range tree containing the facets of a polyface. | 
  | 
| PolygonLocationDetail | 
Carries data about a point in the plane of a polygon. | 
  | 
| PolygonLocationDetailPair | 
A pair of PolygonLocationDetail. | 
  | 
| PolygonOps | 
Various static methods to perform computations on an array of points interpreted as a polygon. | 
  | 
| PolylineOps | 
PolylineOps is a collection of static methods operating on polylines. | 
  | 
| ProxyCurve | 
A ProxyCurve is expected to be used as a base class for curve types that use some existing curve (the proxy) | 
  | 
| Range1d | 
Range on a 1d axis | 
  | 
| Range2d | 
Range box in xy plane | 
  | 
| Range3d | 
Axis aligned range in 3D. | 
  | 
| RangeBase | 
Base class for Range1d, Range2d, Range3d. | 
  | 
| RangeLengthData | 
Accumulated data for x,y,z length statistics in ranges. | 
  | 
| RangeSearch | 
Class with static members to work with various range searchers. | 
  | 
| Ray2d | 
Ray with xy origin and direction | 
  | 
| Ray3d | 
A Ray3d contains | 
  | 
| RecurseToCurvesGeometryHandler | 
Implement GeometryHandler methods, but override handleCurveCollection so that all methods | 
  | 
| RecursiveCurveProcessor | 
base class for detailed traversal of curve artifacts. | 
  | 
| RecursiveCurveProcessorWithStack | 
base class for detailed traversal of curve artifacts | 
  | 
| RegionOps | 
Class RegionOps has static members for calculations on regions (areas). | 
  | 
| ReusableObjectCache | 
Abstract class managing an array of objects of type T, available for reuse by trusted callers. | 
  | 
| RotationalSweep | 
A RotationalSweep is: | 
  | 
| RuledSweep | 
A ruled sweep (surface) is a collection of 2 or more contours. | 
  | 
| SectorOffsetProperties | 
Sector properties during offset. | 
  | 
| Segment1d | 
* A Segment1d is an interval of an axis named x. | 
  | 
| SignedDataSummary | 
Class to accumulate statistics about a stream of signed numbers with tag items. | 
  | 
| SmallSystem | 
static methods for commonly appearing sets of equations in 2 or 3 variables | 
  | 
| SmoothTransformBetweenFrusta | 
context for constructing smooth motion a startFrustum and endFrustum. | 
  | 
| SolidPrimitive | 
Base class for SolidPrimitive variants. | 
  | 
| SortableEdge | 
Represent an IndexedPolyface edge as: | 
  | 
| SpacePolygonTriangulation | 
Class with static methods to triangulate various forms of possibly non-planar polygons. | 
  | 
| Sphere | 
A unit sphere mapped by an arbitrary Transform. | 
  | 
| StrokeCountMap | 
Data carrier interface for per-primitive stroke counts and distances used by PolyfaceBuilder. | 
  | 
| StrokeOptions | 
Tolerance blob for various stroking methods. | 
  | 
| SweepContour | 
Sweepable planar contour with Transform for local to world interaction. | 
  | 
| SweepLineStringToFacetContext | 
 | 
  | 
| SweepLineStringToFacetsOptions | 
Options carrier for sweeping linework onto meshes. | 
  | 
| TaggedNumericData | 
Structure with 2 integer tags and optional arrays of integers, doubles, points, vectors, and geometry. | 
  | 
| TorusPipe | 
A torus pipe is a partial torus (donut). | 
  | 
| Transform | 
A Transform consists of an origin and a Matrix3d. | 
  | 
| TransitionConditionalProperties | 
A true transition spiral is a curve defined by its curvature, with the curvature function symmetric about midpoint. | 
  | 
| TransitionSpiral3d | 
TransitionSpiral3d is a base class for multiple variants of spirals. | 
  | 
| TriangleLocationDetail | 
Carries data about a location in the plane of a triangle. | 
  | 
| TriangularFacetLocationDetail | 
Implementation of FacetLocationDetail for a triangular facet. | 
  | 
| UnionOfConvexClipPlaneSets | 
A collection of ConvexClipPlaneSets. | 
  | 
| UnionRegion | 
* A UnionRegion is a collection of other planar region types -- Loop and ParityRegion. | 
  | 
| UVSurfaceLocationDetail | 
CurveLocationDetail carries point and paramter data about a point evaluated on a curve. | 
  | 
| UVSurfaceOps | 
Support methods to act on surfaces with 0..1 uv fractional parameterization | 
  | 
| Vector2d | 
2D vector with x,y as properties | 
  | 
| Vector3d | 
3D vector with x,y,z as properties | 
  | 
| Vector3dArray | 
The Vector3dArray class contains static methods that act on arrays of 3d vectors. | 
  | 
| VertexNeighborhoodSortData | 
Structure for data used when sorting outbound edges "around a node" | 
  | 
| XY | 
Minimal object containing x,y and operations that are meaningful without change in both point and vector. | 
  | 
| XYParitySearchContext | 
XYParitySearchContext is an internal class for callers that can feed points (without extracting to array structures) | 
  | 
| XYZ | 
* XYZ is a minimal object containing x,y,z and operations that are meaningful without change in both | 
  | 
| YawPitchRollAngles | 
Three angles that determine the orientation of an object in space, sometimes referred to as [Tait–Bryan angles] | 
  |