CurveLocationDetail Class
CurveLocationDetail carries point and parameter data about a point evaluated on a curve.
- These are returned by a variety of queries.
- Particular contents can vary among the queries.
Methods
| Name | Description | |
|---|---|---|
| constructor(): CurveLocationDetail | Constructor | |
| captureFraction1Point1(fraction1: number, point1: Point3d): void | Set the (optional) fraction1 and point1, using direct assignment (capture!) to point1. |
|
| captureFractionPoint(fraction: number, point: Point3d): void | Set the fraction and point, using direct assignment (capture!) to point. |
|
| clone(result?: CurveLocationDetail): CurveLocationDetail | Return a complete copy, WITH CAVEATS. | |
| collapseToEnd(): void | If (fraction1, point1) are defined, make them the primary (and only) data. | |
| collapseToStart(): void | Make (fraction, point) the primary (and only) data. | |
| inverseInterpolateFraction(f: number, defaultFraction: number = 0): number | Return the fraction where f falls between fraction and fraction1. | |
| isSameCurveAndFraction(other: CurveLocationDetail | { curve: CurvePrimitive, fraction: number }): boolean | Compare only the curve and fraction of this detail with other. |
|
| setCurve(curve: CurvePrimitive): void | Set the CurvePrimitive pointer, leaving all other properties untouched. | |
| setDistanceTo(point: Readonly<WritableXYAndZ>): void | Record the distance from the CurveLocationDetail's point to the parameter point. | |
| setFP(fraction: number, point: Readonly<WritableXYAndZ>, vector?: Vector3d, a: number = 0.0): void | Updated in this instance. | |
| setFR(fraction: number, ray: Ray3d, a: number = 0): void | Updated in this instance. | |
| setIntervalRole(value: CurveIntervalRole): void | Set the (optional) intervalRole field. | |
| swapFractionsAndPoints(): void | Exchange the (fraction,fraction1) and (point, point1) pairs. | |
| tryTransformInPlace(transform: Transform): boolean | Transform the detail in place. | |
| updateIfCloserCurveFractionPointDistance(curve: CurvePrimitive, fraction: number, point: Readonly<WritableXYAndZ>, a: number): boolean | Update or create if closer than current contents. | |
| chooseSmallerA(detailA: CurveLocationDetail, detailB: CurveLocationDetail): undefined | CurveLocationDetail Static | Return the detail with smaller a value -- detailA returned if equal. |
|
| create(curve?: CurvePrimitive, result?: CurveLocationDetail): CurveLocationDetail Static | Create with a CurvePrimitive pointer but no coordinate data. | |
| createConditionalMoveSignedDistance(allowExtension: boolean, curve: CurvePrimitive, startFraction: number, endFraction: number, requestedSignedDistance: number, result?: CurveLocationDetail): CurveLocationDetail Static | Create with curveSearchStatus affected by allowExtension. | |
| createCurveEvaluatedFraction(curve: CurvePrimitive, fraction: number, result?: CurveLocationDetail): CurveLocationDetail Static | Create with CurvePrimitive pointer and fraction for evaluation. | |
| createCurveEvaluatedFractionFraction(curve: CurvePrimitive, fraction0: number, fraction1: number, result?: CurveLocationDetail): CurveLocationDetail Static | Create with CurvePrimitive pointer and 2 fractions for evaluation. | |
| createCurveEvaluatedFractionPointAndDerivative(curve: CurvePrimitive, fraction: number, result?: CurveLocationDetail): CurveLocationDetail Static | Create with CurvePrimitive pointer and fraction for evaluation. | |
| createCurveFractionPoint(curve: CurvePrimitive, fraction: number, point: Readonly<WritableXYAndZ>, result?: CurveLocationDetail): CurveLocationDetail Static | Create a new detail using CurvePrimitive pointer, fraction, and point coordinates. | |
| createCurveFractionPointDistance(curve: CurvePrimitive, fraction: number, point: Readonly<WritableXYAndZ>, a: number, result?: CurveLocationDetail): CurveLocationDetail Static | Create with CurvePrimitive pointer, fraction, and point coordinates. | |
| createCurveFractionPointDistanceCurveSearchStatus(curve: CurvePrimitive, fraction: number, point: Readonly<WritableXYAndZ>, distance: number, status: CurveSearchStatus, result?: CurveLocationDetail): CurveLocationDetail Static | Create with CurvePrimitive pointer, fraction, and point coordinates. | |
| createRayFractionPoint(ray: Ray3d, fraction: number, point: Readonly<WritableXYAndZ>, result?: CurveLocationDetail): CurveLocationDetail Static | Create a new detail with only ray, fraction, and point. |
Properties
| Name | Type | Description | |
|---|---|---|---|
| a | number | A context-specific numeric value (e.g., a distance). | |
| childDetail | CurveLocationDetail | undefined | Optional CurveLocationDetail with more detail of location. | |
| curve | CurvePrimitive | undefined | The curve being evaluated. | |
| curveSearchStatus | CurveSearchStatus | undefined | A status indicator for certain searches. | |
| fraction | number | The fractional position along the curve. | |
| fraction1 | number | undefined | (Optional) second fraction, e.g. | |
| fractionDelta Accessor ReadOnly | number | Return the fraction delta. | |
| hasFraction1 Accessor ReadOnly | boolean | Test if this pair has fraction1 defined. | |
| intervalRole | CurveIntervalRole | undefined | Detail condition of the role this point has in some context. | |
| isIsolated Accessor ReadOnly | boolean | Test if this is an isolated point. | |
| point | Point3d | The point on the curve. | |
| point1 | Point3d | undefined | (Optional) second point, e.g. | |
| pointQ | Point3d | A context-specific temporary point, e.g. | |
| ray | Ray3d | undefined | Optional ray. | |
| vectorInCurveLocationDetail | Vector3d | undefined | A vector (e.g. |
Defined in
- curve/CurveLocationDetail.ts Line 62
Last Updated: 28 October, 2025
Found something wrong, missing, or unclear on this page? Raise an issue in our repo.