Name 
Description 

AbstractNewtonIterator 
base class for Newton iterations in various dimensions. 

AlternatingCCTreeBuilder 
Context structure for building an AlternatingConvexClipTreeNode from a polygon. 

AlternatingCCTreeNode 
An AlternatingConvexClipTreeNode is a node in a tree structure in which 

AlternatingCCTreeNodeCurveClipper 


AnalyticRoots 
AnalyticRoots has static methods for solving quadratic, cubic, and quartic equations. 

Angle 
Carries the numeric value of an angle. 

AngleSweep 
An AngleSweep is a pair of angles at start and end of an interval. 

AnnotatedLineString3d 
An AnnotatedLineString3d is a linestring with additional data attached to each point 

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. 

Bezier1dNd 
Implements a multidimensional bezier curve of fixed order. 

BezierCoffs 
* BezierCoffs is an abstract base class for onedimensional (u to f(u)) Bezier polynomials. 

BezierCurve3d 
3d Bezier curve class. 

BezierCurve3dH 
3d curve with homogeneous weights. 

BezierCurveBase 
Base class for CurvePrimitve (necessarily 3D) with _polygon. 

BezierPolynomialAlgebra 
Static methods to operate on univariate beizer polynomials, with coefficients in simple Float64Array or as components of blocked arrays. 

BilinearPatch 
* A Bilinear patch is defined by its 4 corner points. 

Box 


BoxTopology 


BSpline1dNd 
Bspline knots and poles for 1dtoNd. 

BSpline2dNd 
Bspline knots and poles for 2dtoNd. 

BSplineCurve3d 
A BSplineCurve3d is a bspline curve whose poles are Point3d. 

BSplineCurve3dBase 
Base class for BSplineCurve3d and BSplineCurve3dH. 

BSplineCurve3dH 
Weighted (Homogeneous) BSplineCurve in 3d 

BSplineSurface3d 
BSplineSurface3d is a parametric surface in xyz space. 

BSplineSurface3dH 
BsplinceCurve in xyzw homogeneous space 

ClipPlane 
A ClipPlane is a single plane represented as 

ClipPrimitive 
* ClipPrimitve 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 
Static class whose various methods are functions for clipping geometry. 

ClipVector 
Class holding an array structure of shapes defined by clip plane sets 

ClusterableArray 


Complex 


Cone 
A cone with axis along the z axis of a (possibly skewed) local coordinate system. 

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. 

ConvexPolygon2d 


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 


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 

CylindricalQuery 
Context for computing geometry range around an axis. 

DeepCompare 
Comparison utilities 

Degree2PowerPolynomial 


Degree3PowerPolynomial 


Degree4PowerPolynomial 


FacetFaceData 
Data for a face in a polyface containing facets. 

FrameBuilder 
Helper class to accumulate points and vectors until there is enough data to define a coordinate system. 

Geometry 


GeometryHandler 


GeometryQuery 
Queries to be supported by Curve, Surface, and Solid objects 

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 
Use a Float64Array to pack xyz coordinates. 

GrowableXYZArray 
Use a Float64Array to pack xyz coordinates. 

HalfEdge 
* A HalfEdge is "one side of an edge" in a structure of faces, edges and vertices. 

HalfEdgeGraph 
A HalfEdgeGraph has: 

HalfEdgeGraphSearch 


HalfEdgeMaskValidation 
static methods to inpsect mask consistency properties in HalfEdgeGraph. 

HalfEdgePointerInspector 
HalfEdgePointerInspector has methods to check HalfEdge objects for pointer errors. 

IndexedEdgeMatcher 
An IndexedEdgeMatcher carres an array (edges ) of edges start & end indices for sorting and subsequent analyses (such as testing for closed mesh) 

IndexedPolyface 


IndexedPolyfaceVisitor 


IndexedXYCollection 
abstract base class for access to XYZ data with indexed reference. 

IndexedXYZCollection 
abstract base class for access to XYZ data with indexed reference. 

KnotVector 
Array of nondecreasing numbers acting as a knot array for bsplines. 

LinearSweep 
A LinearSweep is 

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. 

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 structrue carries data used in calculation of moments of inertia. 

Newton1dUnbounded 
Newton iterator for use when both function and derivative can be evaluated. 

Newton1dUnboundedApproximateDerivative 
Newton iteration for a univariate function, using approximate derivatives. 

Newton2dUnboundedWithDerivative 
Implement evaluation steps for newton iteration in 2 dimensions. 

NewtonEvaluatorRRtoRRD 
object to evaluate a 2parameter newton function (with derivatives!!). 

NewtonEvaluatorRtoR 
object to evaluate a newton function (without derivative). 

NewtonEvaluatorRtoRD 
object to evaluate a newton function. 

NullGeometryHandler 
NullGeometryHandler is a base class for dispatching various geometry types to 

NumberArray 


Order2Bezier 
Bezier polynomial specialized to order 2 (2 coefficients, straight line function) 

Order3Bezier 
Bezier polynomial specialized to order 3 (3 coefficients, paraboloa function) 

Order4Bezier 
Bezier polynomial specialized to order 4 (4 coefficients, cubic function) 

Order5Bezier 
Bezier polynomial specialized to order 5 (5 coefficients, quartic function) 

OrderedRotationAngles 
OrderedRotationAngles represents a nontrivial rotation using three simple axis rotation angles, and an order in which to apply them. 

PackedPointsWithIndex 
Data carrier class for 

ParityRegion 
* A ParityRegion is a collection of Loop objects. 

PascalCoefficients 
PascalCoeffients class has static methods which return rows of the PascalTriangle. 

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

Plane3dByOriginAndUnitNormal 
A plane defined by 

Plane3dByOriginAndVectors 
A Point3dVector3dVector3d is an origin and a pair of vectors. 

PlaneByOriginAndVectors4d 
A Plane4dByOriginAndVectors is a 4d origin and pair of 4d "vectors" defining a 4d plane. 

PlaneSetParamsCache 
Cache structure that holds a ClipPlaneSet and various parameters for adding new ClipPlanes to the set. 

Point2d 


Point2dArray 


Point2dArrayCarrier 
Helper object to access members of a Point2d[] in geometric calculations. 

Point3d 
3D point with x,y,z properties 

Point3dArray 


Point3dArrayCarrier 
Helper object to access members of a Point3d[] in geometric calculations. 

Point4d 
4 Dimensional point (x,y,z,w) used in perspective calculations. 

Point4dArray 


PointString3d 
A PointString3d is an array of points. 

Polyface 
A Polyface is n 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 . 

PolyfaceBuilder 
* Simple construction for strongly typed GeometryQuery objects: 

PolyfaceData 
PolyfaceData carries data arrays for point, normal, param, color and their indices. 

PolyfaceQuery 
PolyfaceQuery is a static class whose methods implement queries on a polyface or polyface visitor provided as a parameter to each mtehod. 

PolygonOps 
Static class for operations that treat an array of points as a polygon (with area!) 

PowerPolynomial 


Quadrature 
Support class for quadrature  approximate integrals by summing weighted function values. 

Range1d 


Range1dArray 
A Range1d array is a set of intervals, such as occur when a line is clipped to a (nonconvex) polygon 

Range2d 


Range3d 


RangeBase 


Ray2d 


Ray3d 
A Ray3d contains 

RecurseToCurvesGeometryHandler 
Implement GeometryHandler methods, with all curve collection methods recursing to children. 

RecursiveCurveProcessor 
base class for detailed traversal of curve artifacts. 

RecursiveCurveProcessorWithStack 
base class for detailed traversal of curve artifacts, maintaining a stack that shows complete path to each artifact. 

RotationalSweep 


RuledSweep 


Sample 


Segment1d 
* A Segment1d is an interval of an axis named x. 

SmallSystem 


SmoothTransformBetweenFrusta 


SolidPrimitive 
Base class for SolidPrimitve variants. 

SortableEdge 
* For boundary sorting, an edge is a (packed!) Float64Array. 

Sphere 
A Sphere is 

SphereImplicit 
evaluation methods for an implicit sphere x*x + y*y + z*z  r*r = 0 . 

StrokeCountChain 
class StrokeCountChain contains: 

StrokeCountMap 
data carrier interface for perprimitive stroke counts and distances used by PolyfaceBuilder. 

StrokeCountSection 
class StrokeCountSection \ 

StrokeOptions 
tolerance blob for various stroking methods. 

SweepContour 
Sweepable contour with Transform for local to world interaction. 

TorusImplicit 


TorusPipe 
the stored form of the torus pipe is oriented for positive volume: 

Transform 
A transform is an origin and a Matrix3d. 

TransitionConditionalProperties 
A transition spiral is a curve defined by its curvature, with the curvature function symmetric about midpoint. 

TransitionSpiral3d 


Triangulator 


TriDiagonalSystem 


TrigPolynomial 


UnionOfConvexClipPlaneSets 
A collection of ConvexClipPlaneSets. 

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

UnivariateBezier 
* The UnivariateBezier class is a univariate bezier polynomial with no particular order. 

UVSurfaceOps 
UVSurfaceOps is a class containing static methods operating on UVSurface objects. 

Vector2d 
3D vector with x,y properties 

Vector3d 
3D vector with x,y,z properties 

Vector3dArray 


XY 
Minimal object containing x,y and operations that are meaningful without change in both point and vector. 

XYParitySearchContext 
* XYParitySerachContext is an internal class for callers that can feed points (without extracting to array structures) 

XYZ 
Minimal object containing x,y,z and operations that are meaningful without change in both point and vector. 

YawPitchRollAngles 
Three angles that determine the orientation of an object in space. 