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. 

ConstructCurveBetweenCurves 
Context for constructing a curve that is interpolated between two other curves. 

CoordinateXYZ 
A Coordinate is a persistable Point3d 

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 (noninstantiable) 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. 

CurveLocationDetail 
CurveLocationDetail carries point and paramter data about a point evaluated on a curve. 

CurveLocationDetailArrayPair 
Data bundle for a pair of arrays of CurveLocationDetail structures such as produced by CurveCurve,IntersectXY and 

CurveLocationDetailPair 
A pair of CurveLocationDetail. 

CurvePrimitive 
A curve primitive is bounded 

CylindricalRangeQuery 
Context for computing geometry range around an axis. 

GeometryQuery 
* GeometryQuery is an abstract base class with (abstract) methods for querying curve, solid primitive, mesh, and bspline surfaces 

LineSegment3d 
A LineSegment3d is: 

LineString3d 
* A LineString3d (sometimes called a PolyLine) is a sequence of xyz coordinates that are to be joined by line segments. 

Loop 
A Loop is a curve chain that is the boundary of a closed (planar) loop. 

ParityRegion 
* A ParityRegion is a collection of Loop objects. 

Path 
* A Path object is a collection of curves that join headtotail to form a path. 

PathFragment 
* Annotation of an interval of a curve. 

PointString3d 
A PointString3d is an array of points. 

RecursiveCurveProcessor 
base class for detailed traversal of curve artifacts. 

RecursiveCurveProcessorWithStack 
base class for detailed traversal of curve artifacts 

StrokeOptions 
tolerance blob for various stroking methods. 

UnionRegion 
* A UnionRegion is a collection of other planar region types  Loop and ParityRegion . 

Enumerations
Name 
Description 

CurveCurveApproachType 
Enumeration of configurations for intersections and min/max distancebetweencurve 

CurveIntervalRole 
An enumeration of special conditions being described by a CurveLocationDetail. 

CurveSearchStatus 
Return code for CurvePrimitive method moveSignedDistanceFromFraction 

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 containing CurvePrimitive. 

AnyCurve 
Union type for GeometryQuery classes that have contain curves, either as individual parameter space or as collections 

AnyRegion 
Union type for GeometryQuery classes that bound (planar) regions. 

Last Updated:
03 June, 2019