Curve
Curves in the GeometryQuery hierarchy: LineSegment3d, LineString3d, Arc3d, TransitionSpiral3d
- CurvePrimitive -- base class for parametric curves
- LineSegment3d -- a (bounded) portion of an unbounded line
- Arc3d -- a circular or elliptic arc
- LineString3d -- a sequence of points joined by line segments
- TransitionSpiral -- controlled transition between curvatures
- Support classes
- PointString3d -- a sequence of isolated points
- StrokeOptions -- tolerances to describe stroking accuracy
- RecursiveCurveProcessor, RecursiveCurveProcessorWithStack -- algorithmic support for trees with CurvePrimitives at the leaf level.
Classes
| Name | Description | |
|---|---|---|
| Arc3d | Circular or elliptic arc. | |
| BagOfCurves | * A BagOfCurves object is a collection of AnyCurve objects. |
|
| CloneCurvesContext | Algorithmic class for cloning curve collections. | |
| ConsolidateAdjacentCurvePrimitivesOptions | * Options to control method consolidateAdjacentPrimitives. | |
| ConstructCurveBetweenCurves | Context for constructing a curve that is interpolated between two other curves. | |
| 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. | |
| DirectSpiral3d | DirectSpiral3d acts like a TransitionSpiral3d for serialization purposes, but implements spiral types that have | |
| EllipticalArcApproximationOptions | Options for generating samples for the construction of an approximation to an elliptical arc. | |
| GeometryQuery | Queries to be supported by Curve, Surface, and Solid objects. | |
| IntegratedSpiral3d | An IntegratedSpiral3d is a curve defined by integrating its curvature. | |
| JointOptions | Control parameters for joint construction, used in offset construction methods such as constructPolygonWireXYOffset and constructCurveXYOffset. | |
| LineSegment3d | A LineSegment3d is: | |
| LineString3d | * A LineString3d (sometimes called a PolyLine) is a sequence of xyz coordinates that are to be joined by line | |
| 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. | |
| 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. | |
| PointString3d | A PointString3d is an array of points. | |
| ProxyCurve | A ProxyCurve is expected to be used as a base class for curve types that use some existing curve (the proxy) | |
| 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). |
|
| StrokeCountMap | Data carrier interface for per-primitive stroke counts and distances used by PolyfaceBuilder. | |
| StrokeOptions | Tolerance blob for various stroking methods. | |
| 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. | |
| UnionRegion | * A UnionRegion is a collection of other planar region types -- Loop and ParityRegion. |
|
| UVSurfaceLocationDetail | CurveLocationDetail carries point and parameter data about a point evaluated on a curve. |
Enumerations
| Name | Description | |
|---|---|---|
| CurveCurveApproachType | Enumeration of configurations for intersections and min/max distance-between-curve | |
| CurveExtendMode | Enumeration of condition for extending a curve beyond start or end point. | |
| CurveIntervalRole | An enumeration of special conditions being described by a CurveLocationDetail. | |
| CurveSearchStatus | Return code for CurvePrimitive method moveSignedDistanceFromFraction |
|
| EllipticalArcSampleMethod | Enumeration of methods used to sample an elliptical arc in constructCircularArcChainApproximation. | |
| MiteredSweepOutputSelect | Enumeration of geometric output for [CurveFactory.createMiteredSweepSections]. | |
| RegionBinaryOpType | Enumeration of the binary operation types for Boolean operations. |
Interfaces
| Name | Description | |
|---|---|---|
| ArcBlendData | Carrier structure for an arc with fractional data on incoming, outgoing curves. | |
| ArcVectors | Compact vector form of an elliptic arc defined by center, vectors at 0 and 90 degrees, and angular sweep. | |
| CreateFilletsInLineStringOptions | Interface bundling options for createFilletsInLineString. | |
| CurveCurveOptions | Options used for method closeApproachProjectedXYPairs and closestApproachProjectedXYPair. | |
| FilletedLineStringOptions | Options used for method fromFilletedLineString. | |
| MiteredSweepOptions | Interface bundling options for [CurveFactory.createMiteredSweepSections]. | |
| PlanarColinearOptions | Options bundle for use in isPlanar and isColinear. | |
| RegionBooleanXYOptions | Options bundle for use in regionBooleanXY. | |
| SectionSequenceWithPlanes | Interface to carry parallel arrays of planes and sections, and optional geometry assembled from them, | |
| SignedLoops | Carrier object for loops characterized by area sign | |
| TangentOptions | Options for computing tangents to a curve from a fixed point P. |
Type Aliases
| Name | Description | |
|---|---|---|
| AnnounceCurvePrimitive | Function signature for a callback which announces a curve primitive | |
| AnnounceNumberNumber | Function signature for a callback which announces a pair of numbers | |
| AnnounceNumberNumberCurvePrimitive | Function signature for callback which announces a pair of numbers, such as a fractional interval, along with a | |
| AnyChain | Union type for a general curve chain, or a BagOfCurves understood to be a collection of unrelated chains. |
|
| AnyCurve | Union type for GeometryQuery classes that have contain curves, either as individual parameter space or as collections. |
|
| AnyCurvePrimitive | Union type for subclasses of CurvePrimitive. | |
| AnyGeometryQuery | Union type for subclasses of GeometryQuery. | |
| AnyRegion | Union type for GeometryQuery classes that bound (planar) regions. |
|
| ChainTypes | Union type for a general curve chain, or a BagOfCurves understood to be a collection of unrelated chains. |
Deprecated |
| CurveCollectionType | Describes the concrete type of a CurveCollection. | |
| CurvePrimitiveType | Describes the concrete type of a CurvePrimitive. | |
| DirectSpiralTypeName | This is the set of valid type names for "direct" spirals. | |
| FractionMapper | A function that maps [0,1]->[0,1]. | |
| GeometryQueryCategory | Describes the category of a GeometryQuery, enabling type-switching like: | |
| IntegratedSpiralTypeName | This is the set of valid type names for "integrated" spirals. | |
| LinearCurvePrimitive | Union type for a linear CurvePrimitive. | |
| VariantCurveExtendParameter | Variant options for extending a curve. |
Last Updated: 25 May, 2026
Found something wrong, missing, or unclear on this page? Raise an issue in our repo.