CurveOps Class

Static methods for miscellaneous curve operations.

Methods

Name Description
constructor(): CurveOps    
appendXYOffsets(curves: undefined | AnyCurve | AnyCurve[], offset: number, result: AnyCurve[]): number Static Construct a separate xy-offset for each input curve.  
collectChains(fragments: AnyCurve[], gapTolerance: number = Geometry.smallMetricDistance, planeTolerance: undefined | number = Geometry.smallMetricDistance): undefined | AnyChain Static Restructure curve fragments as Paths and Loops.  
collectChainsAsLineString3d(fragments: AnyCurve[], announceChain: (chainPoints: LineString3d) => void, strokeOptions?: StrokeOptions, gapTolerance: number = Geometry.smallMetricDistance, planeTolerance: undefined | number = Geometry.smallMetricDistance): void Static Restructure curve fragments as Paths and Loops, to be stroked and passed into the callback.  
collectInsideAndOutsideXYOffsets(fragments: AnyCurve[], offsetDistance: number, gapTolerance: number): { chains?: AnyChain, insideOffsets: AnyCurve[], outsideOffsets: AnyCurve[] } Static Restructure curve fragments as Paths and Loops, and construct xy-offsets of the chains.  
constructCurveXYOffset(curves: Loop | Path, offsetDistanceOrOptions: number | OffsetOptions): undefined | CurveCollection Static Construct curves that are offset from a Path or Loop as viewed in xy-plane (ignoring z).  
createSingleOffsetPrimitiveXY(curve: CurvePrimitive, offsetDistanceOrOptions: number | OffsetOptions): undefined | CurvePrimitive | CurvePrimitive[] Static Create the offset of a single curve primitive as viewed in the xy-plane (ignoring z).  
extendRange(range: Range3d, curves: AnyCurve | AnyCurve[]): Range3d Static Recursively extend the range by each curve's range, allowing CurvePrimitive, CurveCollection, or array of such at any level.  
sumLengths(curves: AnyCurve | AnyCurve[]): number Static Recursively sum curve lengths, allowing CurvePrimitive, CurveCollection, or array of such at any level.  

Defined in

Last Updated: 16 April, 2024