import { NullGeometryHandler } from "../geometry3d/GeometryHandler"; import { Arc3d } from "./Arc3d"; import { GeometryQuery } from "./GeometryQuery"; import { LineSegment3d } from "./LineSegment3d"; import { LineString3d } from "./LineString3d"; /** * Context for constructing a curve that is interpolated between two other curves. * * The only callable method is the static `InterpolateBetween`. * * Other methods are called only by `dispatchToGeometryHandler` * @public */ export declare class ConstructCurveBetweenCurves extends NullGeometryHandler { private _geometry1; private _fraction; private constructor(); /** * * To be directly called only by double dispatcher * * Assumes this.geometry1 was set by calling context. * * Construct the interpolated curve between this.geometry1 and the supplied segment0. */ handleLineSegment3d(segment0: LineSegment3d): any; /** * * To be directly called only by double dispatcher * * Assumes this.geometry1 was set by calling context. * * Construct the interpolated curve between this.geometry1 and the supplied ls0. */ handleLineString3d(ls0: LineString3d): any; /** * * To be directly called only by double dispatcher * * Assumes this.geometry1 was set by calling context. * * Construct the interpolated curve between this.geometry1 and the supplied arc0. */ handleArc3d(arc0: Arc3d): any; /** * Construct a geometry item which is fractionally interpolated between two others. * * The construction is only supported between certain types: * * * LineSegment3d+LineSegment3d -- endpoints are interpolated * * * LineString3d+LineString3d with matching counts. Each point is interpolated. * * * Arc3d+Arc3d -- center, vector0, vector90, and limit angles of the sweep are interpolated. * @param geometry0 geometry "at fraction 0" * @param fraction fractional position * @param geometry1 geometry "at fraction 1" */ static interpolateBetween(geometry0: GeometryQuery, fraction: number, geometry1: GeometryQuery): GeometryQuery | undefined; } //# sourceMappingURL=ConstructCurveBetweenCurves.d.ts.map