import { Vec2, Vector2 } from "three"; import { Arc } from "./Entity/Arc"; import { Line } from "./Entity/Line"; import { Polyline } from "./Entity/Polyline"; import { Spline } from "./Spline"; export declare function SplineConver2Polyline(spl: Spline, tolerance?: number): Polyline; /** * 将碎点简化为多段线,(尝试转换为简单圆弧,或者使用双圆弧插值) * @param pts 点表 * @param [tolerance=0.1] 容差 * @param [parseArc=true] 解析成简单圆弧 * @param [lineLengthSq=2000] * @returns 多段线 */ export declare function PointsSimplify2PolylineAndParseArc(pts: Vector2[], buls?: number[], tolerance?: number, parseArc?: boolean, lineLengthSq?: number): Polyline; export declare function SmartPointsSimply2Polyline(pts: Vector2[], buls?: number[], tolerance?: number, lineLengthSq?: number): Polyline; /** * 简化多段线,返回结果比较好的多段线 * @param pl * @param [tolerance=0.1] * @param [lineLengthSq=2000] * @returns 返回undefined时,简化失败 */ export declare function SmartPolylineSimply2Polyline(pl: Polyline, tolerance?: number, lineLengthSq?: number): Polyline | undefined; declare function Vec2(x: number, y: number): void; /** * 计算双圆弧插值的圆弧 * @param p1 起点 * @param p2 终点 * @param t1 起点切线 * @param t2 终点切线 * @returns 两个圆弧(或者其中一个是直线) */ export declare function ComputeBiarc(p1: Vec2, p2: Vec2, t1: Vec2, t2: Vec2): [Arc | Line, Arc | Line]; export {}; //# sourceMappingURL=SplineConver2Polyline.d.ts.map