暴露CurveWrap

This commit is contained in:
ChenX
2023-11-02 15:15:50 +08:00
parent 78b1c316da
commit 063a010609
11 changed files with 336 additions and 5 deletions

26
types/Nest/Converter/CurveWrap.d.ts vendored Normal file
View File

@@ -0,0 +1,26 @@
import { Box3 } from "three";
import { Circle } from "../../DatabaseServices/Entity/Circle";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { Point } from "../Common/Point";
import { IOffset } from "./Simplify2";
/**
* 运用此代码将曲线转换为点,并且精简它.
* @class CurveWrap
*/
export declare class CurveWrap {
Curve: Polyline | Circle;
KnifRadius: number;
IsOutside: boolean;
BoundingBox: Box3;
Area: number;
SimplyPolyline: Polyline;
SimplyOffset: IOffset;
Used: boolean;
Holes: CurveWrap[];
Points: Point[];
constructor(Curve: Polyline | Circle, KnifRadius?: number, IsOutside?: boolean);
ContainsCurve(curve: CurveWrap): boolean;
GetOutsidePoints(): Point[];
GetInsidePoints(): Point[];
}
//# sourceMappingURL=CurveWrap.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"CurveWrap.d.ts","sourceRoot":"","sources":["../../../../src/Nest/Converter/CurveWrap.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAElE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIxC,OAAO,EAAE,OAAO,EAA0B,MAAM,aAAa,CAAC;AAG9D;;;GAGG;AACH,qBAAa,SAAS;IAaC,KAAK,EAAE,QAAQ,GAAG,MAAM;IAAS,UAAU;IAAa,SAAS,EAAE,OAAO;IAX7F,WAAW,EAAE,IAAI,CAAC;IAElB,IAAI,EAAE,MAAM,CAAC;IAEb,cAAc,EAAE,QAAQ,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,UAAS;IACb,KAAK,EAAE,SAAS,EAAE,CAAM;IAExB,MAAM,EAAE,KAAK,EAAE,CAAC;gBAEG,KAAK,EAAE,QAAQ,GAAG,MAAM,EAAS,UAAU,SAAI,EAAS,SAAS,GAAE,OAAc;IAwBpG,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;IAOxC,gBAAgB,IAAI,KAAK,EAAE;IA+B3B,eAAe,IAAI,KAAK,EAAE;CA2B7B"}

View File

@@ -9,7 +9,7 @@ export declare function Circle2Points(circle: Circle, knifRadius: number, splitS
export declare function Curves2Points(cu: Circle | Polyline, outside: boolean, knifeRadius: number): [(Circle | Polyline), Point[]];
export declare function Polyline2Points(pl: Polyline, outside: boolean, knifeRadius: number): [Polyline, Point[]];
/**
* 移除小圆弧,使用尖角直连
* 移除小圆弧,使用尖角直连(有可能产生自交 概率不大)
* @param pl 请传入逆时针多段线(我们将直接修改这个多段线,如果你不想被修改 你应该拷贝一个)
* @param [radius=30]
*/

11
types/Nest/Converter/Simplify2.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
interface P {
x: number;
y: number;
}
export interface IOffset {
negativeOffset: number;
positiveOffset: number;
}
export declare function SimplifyDouglasPeucker(points: P[], sqTolerance: number): [P[], IOffset];
export {};
//# sourceMappingURL=Simplify2.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Simplify2.d.ts","sourceRoot":"","sources":["../../../../src/Nest/Converter/Simplify2.ts"],"names":[],"mappings":"AAEA,UAAU,CAAC;IAEP,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,OAAO;IAEpB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CAC1B;AA0ED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CAQvF"}