InterpolationCurve3d Class

Interpolating curve.

Extends

Methods

Name Description
clone(): InterpolationCurve3d Return a deep clone  
cloneProps(): InterpolationCurve3dProps Clone the InterpolationCurve3dProps object in this InterpolationCurve3d  
copyFitPointsFloat64Array(): Float64Array Return a (copy of) the defining points, packed as a Float64Array  
dispatchToGeometryHandler(handler: GeometryHandler): any Double Dispatch call pattern.  
isAlmostEqual(other: GeometryQuery): boolean Test for exact structure and nearly identical geometry.  
isSameGeometryClass(other: GeometryQuery): boolean Test if other is also an InterpolationCurve3d  
reverseInPlace(): void Reverse the curve direction.  
toJSON(): any Return json key-value pairs for for this InterpolationCurve3d.  
tryTransformInPlace(transform: Transform): boolean Transform this InterpolationCurve3d and its defining data in place  
create(options: InterpolationCurve3dProps | InterpolationCurve3dOptions): undefined | InterpolationCurve3d Static Create an InterpolationCurve3d based on points, knots, and other properties in the InterpolationCurve3dProps or InterpolationCurve3dOptions.  
createCapture(options: InterpolationCurve3dOptions): undefined | InterpolationCurve3d Static Create an InterpolationCurve3d  

Inherited methods

Name Inherited from Description
addMappedStrokesToLineString3D(map: StrokeCountMap, linestring: LineString3d): number Inherited ProxyCurve Evaluate strokes at fractions indicated in a StrokeCountMap.
announceClipIntervals(_clipper: Clipper, _announce?: AnnounceNumberNumberCurvePrimitive): boolean Inherited ProxyCurve Find intervals of this curvePrimitive that are interior to a clipper
appendPlaneIntersectionPoints(plane: PlaneAltitudeEvaluator, result: CurveLocationDetail[]): number Inherited ProxyCurve Compute intersections of the curve with a plane.
clonePartialCurve(fractionA: number, fractionB: number): undefined | CurvePrimitive Inherited ProxyCurve Implement by proxyCurve.
cloneTransformed(transform: Transform): undefined | ProxyCurve Inherited ProxyCurve Return a transformed clone.
closestPoint(spacePoint: Point3d, extend: VariantCurveExtendParameter, result?: CurveLocationDetail): undefined | CurveLocationDetail Inherited ProxyCurve Search for a point on the curve that is closest to the spacePoint.
collectCurvePrimitives(collectorArray?: CurvePrimitive[], smallestPossiblePrimitives: booleanfalse, explodeLinestrings: booleanfalse): CurvePrimitive[] Inherited ProxyCurve Return an array containing only the curve primitives.
collectCurvePrimitivesGo(collectorArray: CurvePrimitive[], _smallestPossiblePrimitives: boolean, _explodeLinestrings: booleanfalse): void Inherited ProxyCurve Return an array containing only the curve primitives.
computeAndAttachRecursiveStrokeCounts(options?: StrokeOptions, parentMap?: StrokeCountMap): void Inherited ProxyCurve Attach StrokeCountMap structure to this primitive (and recursively to any children)
computeStrokeCountForOptions(options?: StrokeOptions): number Inherited ProxyCurve Implement by proxyCurve
constructOffsetXY(offsetDistanceOrOptions: number | OffsetOptions): undefined | CurvePrimitive | CurvePrimitive[] Inherited ProxyCurve Implement by proxyCurve
curveLength(): number Inherited ProxyCurve Return the length of the curve.
curveLengthBetweenFractions(fraction0: number, fraction1: number): number Inherited ProxyCurve Returns a (high accuracy) length of the curve between fractional positions.
curveLengthWithFixedIntervalCountQuadrature(fraction0: number, fraction1: number, numInterval: number, numGauss: number5): number Inherited ProxyCurve Run an integration (with a default Gaussian quadrature) with a fixed fractional step
emitStrokableParts(dest: IStrokeHandler, options?: StrokeOptions): void Inherited ProxyCurve Implement by proxyCurve
emitStrokes(dest: LineString3d, options?: StrokeOptions): void Inherited ProxyCurve Implement by proxyCurve
endPoint(result?: Point3d): Point3d Inherited ProxyCurve Return the end point of the primitive.
extendRange(rangeToExtend: Range3d, transform?: Transform): void Inherited ProxyCurve Implement by proxyCurve
fractionAndDistanceToPointOnTangent(fraction: number, distance: number): Point3d Inherited ProxyCurve Construct a point extrapolated along tangent at fraction.
fractionToCurvature(fraction: number): undefined | number Inherited ProxyCurve Returns the (absolute) curvature magnitude.
fractionToFrenetFrame(fraction: number, result?: Transform): undefined | Transform Inherited ProxyCurve Construct a frenet frame:
fractionToPoint(fraction: number, result?: Point3d): Point3d Inherited ProxyCurve Implement by proxyCurve
fractionToPointAnd2Derivatives(fraction: number, result?: Plane3dByOriginAndVectors): undefined | Plane3dByOriginAndVectors Inherited ProxyCurve Implement by proxyCurve
fractionToPointAndDerivative(fraction: number, result?: Ray3d): Ray3d Inherited ProxyCurve Implement by proxyCurve
fractionToPointAndUnitTangent(fraction: number, result?: Ray3d): Ray3d Inherited ProxyCurve Returns a ray whose origin is the curve point and direction is the unit tangent.
fractionToSignedXYRadiusOfCurvature(fraction: number): number Inherited ProxyCurve Construct signed distance from a point on the planar curve to its center of curvature (in xy only).
getFractionToDistanceScale(): undefined | number Inherited ProxyCurve If the curve primitive has distance-along-curve strictly proportional to curve fraction, return the scale factor.
isInPlane(plane: Plane3dByOriginAndUnitNormal): boolean Inherited ProxyCurve Implement by proxyCurve
moveSignedDistanceFromFraction(startFraction: number, signedDistance: number, allowExtension: boolean, result?: CurveLocationDetail): CurveLocationDetail Inherited ProxyCurve (Attempt to) find a position on the curve at a signed distance from start fraction.
moveSignedDistanceFromFractionGeneric(startFraction: number, signedDistance: number, allowExtension: boolean, result?: CurveLocationDetail): CurveLocationDetail Protected Inherited ProxyCurve Generic algorithm to search for point at signed distance from a fractional startPoint.
projectedParameterRange(ray: Vector3d | Ray3d, lowHigh?: Range1d): undefined | Range1d Inherited ProxyCurve Implement by proxyCurve
quickLength(): number Inherited ProxyCurve Implement by proxyCurve
range(transform?: Transform, result?: Range3d): Range3d Inherited ProxyCurve Implement by proxyCurve
rangeBetweenFractions(fraction0: number, fraction1: number, transform?: Transform): Range3d Inherited ProxyCurve Returns a (high accuracy) range of the curve between fractional positions
rangeBetweenFractionsByClone(fraction0: number, fraction1: number, transform?: Transform): Range3d Inherited ProxyCurve Returns a (high accuracy) range of the curve between fractional positions
rangeBetweenFractionsByCount(fraction0: number, fraction1: number, count: number, transform?: Transform, extrapolationFactor: number0.0): Range3d Inherited ProxyCurve Returns an approximate range based on a fixed number of evaluations
startPoint(result?: Point3d): Point3d Inherited ProxyCurve Return the startPoint of the primitive.
tryTranslateInPlace(dx: number, dy: number0.0, dz: number0.0): boolean Inherited ProxyCurve Try to move the geometry by dx,dy,dz.
areAlmostEqual(a: GeometryQuery, b: GeometryQuery): boolean Static Inherited ProxyCurve Apply instance method isAlmostEqual if both are defined.
installStrokeCountMap(curve: CurvePrimitive, curveMap: StrokeCountMap, parentMap?: StrokeCountMap): void Static Inherited ProxyCurve Final install step to save curveMap in curve.

Properties

Name Type Description
curvePrimitiveType Readonly "interpolationCurve" String name for schema properties  
options Accessor ReadOnly InterpolationCurve3dOptions return the options pointer  

Inherited properties

Name Type Inherited from Description
_proxyCurve Protected Inherited CurvePrimitive ProxyCurve  
children Accessor Inherited ReadOnly undefined | GeometryQuery[] ProxyCurve Return GeometryQuery children for recursive queries.
* leaf classes do not need to implement.
geometryCategory Readonly Inherited "curvePrimitive" ProxyCurve String name for schema properties
isExtensibleFractionSpace Accessor Inherited ReadOnly boolean ProxyCurve * Returns true if the curve can be easily extended past its start/end point (i.e., beyond the usual
fraction space [0,1]). Otherwise, returns false.
* Base class default implementation returns false.
* These classes (and perhaps others in the future) will return true:
* LineSegment3d
* LineString3d
* Arc3d
parent Inherited any | undefined ProxyCurve Data attached by various algorithms (e.g.
proxyCurve Accessor Inherited ReadOnly CurvePrimitive ProxyCurve Return the (pointer to) the proxy curve.
strokeData Inherited StrokeCountMap | undefined ProxyCurve Data attached during stroking for facets.

Defined in

Last Updated: 17 December, 2024