36 lines
1.5 KiB
TypeScript
36 lines
1.5 KiB
TypeScript
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
|