/** @packageDocumentation * @module Curve */ import { Matrix4d } from "../geometry4d/Matrix4d"; import { CurveLocationDetailArrayPair } from "./CurveCurveIntersectXY"; import { CurveLocationDetailPair } from "./CurveLocationDetail"; import { CurvePrimitive } from "./CurvePrimitive"; import { GeometryQuery } from "./GeometryQuery"; /** * `CurveCurve` has static method for various computations that work on a pair of curves or curve collections. * @public */ export declare class CurveCurve { /** * Return xy intersections of 2 curves. * @param geometryA second geometry * @param extendA true to allow geometryA to extend * @param geometryB second geometry * @param extendB true to allow geometryB to extend */ static intersectionXYPairs(geometryA: GeometryQuery, extendA: boolean, geometryB: GeometryQuery, extendB: boolean): CurveLocationDetailPair[]; /** * Return xy intersections of 2 projected curves * @param geometryA second geometry * @param extendA true to allow geometryA to extend * @param geometryB second geometry * @param extendB true to allow geometryB to extend */ static intersectionProjectedXYPairs(worldToLocal: Matrix4d, geometryA: GeometryQuery, extendA: boolean, geometryB: GeometryQuery, extendB: boolean): CurveLocationDetailPair[]; /** * Return full 3d xyz intersections of 2 curves. * * Implemented for combinations of LineSegment3d, LineString3d, Arc3d. * * Not Implemented for bspline and bezier curves. * @beta * @param geometryA second geometry * @param extendA true to allow geometryA to extend * @param geometryB second geometry * @param extendB true to allow geometryB to extend */ static intersectionXYZ(geometryA: GeometryQuery, extendA: boolean, geometryB: GeometryQuery, extendB: boolean): CurveLocationDetailArrayPair; /** * Return xy intersections of 2 curves. * @param geometryA second geometry * @param extendA true to allow geometryA to extend * @param geometryB second geometry * @param extendB true to allow geometryB to extend */ static allIntersectionsAmongPrimitivesXY(primitives: CurvePrimitive[]): CurveLocationDetailPair[]; /** * Return xy close approaches of 2 projected curves * @param geometryA second geometry * @param geometryB second geometry */ static closeApproachProjectedXYPairs(geometryA: GeometryQuery, geometryB: GeometryQuery, maxDistance: number): CurveLocationDetailPair[]; } //# sourceMappingURL=CurveCurve.d.ts.map