| 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 Anglecarries the numeric value of an angle, with methods to allow (require!) callers to |  | 
| AngleSweep | An AngleSweepis 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 BagOfCurvesobject is a collection ofAnyCurveobjects. |  | 
| 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 | Bspline knots and poles for 1d-to-Nd. |  | 
| BSpline2dNd | Bspline knots and poles for 2d-to-Nd. |  | 
| BSplineCurve3d | A BSplineCurve3d is a bspline 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 RegionOps.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 FacetLocationDetailfor 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 | CurveChainWithDistanceIndexis a CurvePrimitive whose fractional parameterization is proportional to true |  | 
| CurveCollection | A CurveCollectionis an abstract (non-instantiable) class for various sets of curves with particular structures: |  | 
| CurveCurve | CurveCurvehas 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 CurveFactoryclass 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 | * An Ellipsoid is a (complete) unit sphere with an arbitrary (possibly skewed) Transformto 3d. |  | 
| EllipsoidPatch | * An EllipsoidPatchis |  | 
| 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 | GeometryHandlerdefines 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 GrowableFloat64Arrayis Float64Array accompanied by a count of how many of the array's entries are considered in use. |  | 
| GrowableXYArray | GrowableXYArraymanages a (possibly growing) Float64Array to pack xy coordinates. |  | 
| GrowableXYZArray | GrowableXYArraymanages a (possibly growing) Float64Array to pack xy coordinates. |  | 
| 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 ( edges) of edges start & end indices for sorting and subsequent analyses (such as testing for closed mesh) |  | 
| IndexedPolyface | An IndexedPolyfaceis a set of facets which can have normal, param, and color arrays with independent point, |  | 
| IndexedPolyfaceSubsetVisitor | An IndexedPolyfaceSubsetVisitoris anIndexedPolyfaceVisitorwhich only visits a subset of facets in the polyface. |  | 
| IndexedPolyfaceVisitor | An IndexedPolyfaceVisitoris an iterator-like object that "visits" facets of a mesh. |  | 
| 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. |  | 
| IndexedXYZCollectionPolygonOps | IndexedXYZCollectionPolygonOpsclass contains static methods for typical operations on polygons carried asIndexedXYZCollection |  | 
| 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 array for B-splines. |  | 
| LinearSweep | A LinearSweep is a SolidPrimitivedefined 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 AngleAngleNumberis a pair of angles (namedlongitudeandlatitude) and an additional number. |  | 
| Loop | A Loopis 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 FacetLocationDetailfor a general facet, which may or may not be convex. |  | 
| NullGeometryHandler | NullGeometryHandleris a base class for dispatching various geometry types to application specific implementation |  | 
| NumberArray | The NumberArrayclass 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 ParityRegionis a collection ofLoopobjects. |  | 
| Path | * A Pathobject 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,yas properties |  | 
| Point2dArray | The Point2dArrayclass 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,zas properties |  | 
| Point3dArray | The Point3dArrayclass contains static methods that act on arrays of 3d points. |  | 
| Point3dArrayCarrier | Helper object to access members of a Point3d[] in geometric calculations. |  | 
| Point3dArrayPolygonOps | Point3dArrayPolygonOpsclass contains static methods for typical operations on polygons carried asPoint3d[] |  | 
| 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 Point4dArrayclass 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 PolyfaceAuxDatastructure 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 | PolyfaceDatacarries 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 PolyfaceorPolyfaceVisitorprovided 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 handleCurveCollectionso that all methods |  | 
| RecursiveCurveProcessor | base class for detailed traversal of curve artifacts. |  | 
| RecursiveCurveProcessorWithStack | base class for detailed traversal of curve artifacts |  | 
| RegionOps | Class RegionOpshas static members for calculations on regions (areas). |  | 
| RotationalSweep | A LinearSweep 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 | * For boundary sorting, an edge is a (packed!) Float64Array. |  | 
| SpacePolygonTriangulation | Class with static methods to triangulate various forms of possibly non-planar polygons. |  | 
| Sphere | A Sphere is |  | 
| StrokeCountChain | class StrokeCountChaincontains: |  | 
| 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 FacetLocationDetailfor a triangular facet. |  | 
| UnionOfConvexClipPlaneSets | A collection of ConvexClipPlaneSets. |  | 
| UnionRegion | * A UnionRegionis a collection of other planar region types --LoopandParityRegion. |  | 
| 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,yas properties |  | 
| Vector3d | 3D vector with x,y,zas properties |  | 
| Vector3dArray | The Vector3dArrayclass 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 | XYParitySearchContextis an internal class for callers that can feed points (without extracting to array structures) |  | 
| XYZ | * XYZis 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] |  |