This commit is contained in:
xiefan
2020-09-24 11:04:12 +08:00
commit b654ca8c7f
1633 changed files with 86830 additions and 0 deletions

33
types/Nest/Common/Box2.d.ts vendored Normal file
View File

@@ -0,0 +1,33 @@
import { Vector2 } from "./Vector2";
import { Point } from "./Point";
export declare class Box2 {
min: Vector2;
max: Vector2;
constructor(min?: Vector2, max?: Vector2);
get area(): number;
set(min: Vector2, max: Vector2): Box2;
setFromPoints(points: Vector2[]): Box2;
private static _setFromCenterAndSize_v1;
setFromCenterAndSize(center: Vector2, size: Vector2): Box2;
clone(): Box2;
copy(box: Box2): Box2;
makeEmpty(): Box2;
isEmpty(): boolean;
getCenter(result?: Vector2): Vector2;
getSize(result?: Vector2): Vector2;
expandByPoint(point: Vector2): Box2;
expandByVector(vector: Vector2): Box2;
expandByScalar(scalar: number): Box2;
containsPoint(point: Vector2): boolean;
containsBox(box: Box2): boolean;
getParameter(point: Vector2, result?: Vector2): Vector2;
intersectsBox(box: Box2): boolean;
clampPoint(point: Vector2, result?: Vector2): Vector2;
private static _distanceToPoint_v1;
distanceToPoint(point: Vector2): number;
intersect(box: Box2): Box2;
union(box: Box2): Box2;
translate(offset: Point): Box2;
equals(box: Box2): boolean;
}
//# sourceMappingURL=Box2.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Box2.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Common/Box2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,IAAI;IAEb,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,OAAO,CAAC;gBACD,GAAG,UAAsC,EAAE,GAAG,UAAsC;IAMhG,IAAI,IAAI,IAAI,MAAM,CAGjB;IAED,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAMrC,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAStC,OAAO,CAAC,MAAM,CAAC,wBAAwB,CAAiB;IACxD,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAQ1D,KAAK,IAAI,IAAI;IAIb,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI;IAMrB,SAAS,IAAI,IAAI;IAMjB,OAAO,IAAI,OAAO;IAKlB,SAAS,CAAC,MAAM,GAAE,OAAuB,GAAG,OAAO;IAInD,OAAO,CAAC,MAAM,GAAE,OAAuB,GAAG,OAAO;IAIjD,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAMnC,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAMrC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAMpC,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAStC,WAAW,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO;IAS/B,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,GAAE,OAAuB,GAAG,OAAO;IAStE,aAAa,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO;IAUjC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,GAAE,OAAuB,GAAG,OAAO;IAIpE,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAiB;IACnD,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAMvC,SAAS,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI;IAM1B,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI;IAMtB,SAAS,CAAC,MAAM,EAAE,KAAK,GAAG,IAAI;IAM9B,MAAM,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO;CAI7B"}

6
types/Nest/Common/ClipperCpp.d.ts vendored Normal file
View File

@@ -0,0 +1,6 @@
import * as clipperLib from "js-angusj-clipper/web";
export declare let clipperCpp: {
lib?: clipperLib.ClipperLibWrapper;
};
export declare function InitClipperCpp(): Promise<void>;
//# sourceMappingURL=ClipperCpp.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ClipperCpp.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Common/ClipperCpp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAC;AAEpD,eAAO,IAAI,UAAU,EAAE;IAAE,GAAG,CAAC,EAAE,UAAU,CAAC,iBAAiB,CAAC;CAAO,CAAC;AACpE,wBAAgB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAiB9C"}

3
types/Nest/Common/ConvexHull2D.d.ts vendored Normal file
View File

@@ -0,0 +1,3 @@
import { Point } from "./Point";
export declare function ConvexHull2D(points: Point[]): Point[];
//# sourceMappingURL=ConvexHull2D.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ConvexHull2D.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Common/ConvexHull2D.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,wBAAgB,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAKrD"}

13
types/Nest/Common/Filer.d.ts vendored Normal file
View File

@@ -0,0 +1,13 @@
/**
* CAD文件数据
*/
export declare class NestFiler {
_datas: any[];
private readIndex;
constructor(_datas?: any[]);
Clear(): this;
Reset(): this;
Write(data: any): this;
Read(): any;
}
//# sourceMappingURL=Filer.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Filer.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Common/Filer.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,SAAS;IAGC,MAAM,EAAE,GAAG,EAAE;IADhC,OAAO,CAAC,SAAS,CAAa;gBACX,MAAM,GAAE,GAAG,EAAO;IAErC,KAAK;IAKL,KAAK;IAML,KAAK,CAAC,IAAI,EAAE,GAAG;IAMf,IAAI,IAAI,GAAG;CAId"}

5
types/Nest/Common/Point.d.ts vendored Normal file
View File

@@ -0,0 +1,5 @@
export interface Point {
x: number;
y: number;
}
//# sourceMappingURL=Point.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Point.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Common/Point.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,KAAK;IAElB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACb"}

2
types/Nest/Common/Random.d.ts vendored Normal file
View File

@@ -0,0 +1,2 @@
export declare function RandomIndex(count: number, exclude?: number): number;
//# sourceMappingURL=Random.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Random.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Common/Random.ts"],"names":[],"mappings":"AAEA,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAMnE"}

2
types/Nest/Common/Shuffle.d.ts vendored Normal file
View File

@@ -0,0 +1,2 @@
export declare function ShuffleArray<T = any>(array: T[]): void;
//# sourceMappingURL=Shuffle.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Shuffle.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Common/Shuffle.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,QAO/C"}

8
types/Nest/Common/Util.d.ts vendored Normal file
View File

@@ -0,0 +1,8 @@
export declare function equaln(v1: number, v2: number, fuzz?: number): boolean;
export declare function FixIndex(index: number, arr: Array<any> | number): number;
/**
* @param compart 如果t2大于t1那么返回t2
* @returns 索引
*/
export declare function Max<T>(arr: T[], compart: (t1: T, t2: T) => boolean): number;
//# sourceMappingURL=Util.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Util.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Common/Util.ts"],"names":[],"mappings":"AAAA,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,SAAO,WAGzD;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,UAS/D;AAED;;;GAGG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,OAAO,GAAG,MAAM,CAc3E"}

60
types/Nest/Common/Vector2.d.ts vendored Normal file
View File

@@ -0,0 +1,60 @@
import { Point } from "./Point";
export declare class Vector2 {
x: number;
y: number;
readonly isVector2: boolean;
constructor(x?: number, y?: number);
get width(): number;
set width(value: number);
get height(): number;
set height(value: number);
set(x: number, y: number): Vector2;
setScalar(scalar: number): Vector2;
setX(x: number): Vector2;
setY(y: number): Vector2;
setComponent(index: number, value: number): Vector2;
getComponent(index: number): number;
clone(): Vector2;
copy(v: Vector2): Vector2;
add(v: Point): Vector2;
addScalar(s: number): Vector2;
addVectors(a: Vector2, b: Vector2): Vector2;
addScaledVector(v: Vector2, s: number): Vector2;
sub(v: Vector2): Vector2;
subScalar(s: number): Vector2;
subVectors(a: Vector2, b: Vector2): Vector2;
multiply(v: Vector2): Vector2;
multiplyScalar(scalar: number): Vector2;
divide(v: Vector2): Vector2;
divideScalar(scalar: number): Vector2;
min(v: Vector2): Vector2;
max(v: Vector2): Vector2;
clamp(min: Vector2, max: Vector2): Vector2;
private static clampScalar_min;
private static clampScalar_max;
clampScalar(minVal: number, maxVal: number): Vector2;
clampLength(min: number, max: number): Vector2;
floor(): Vector2;
ceil(): Vector2;
round(): Vector2;
roundToZero(): Vector2;
negate(): Vector2;
dot(v: Vector2): number;
lengthSq(): number;
length(): number;
lengthManhattan(): number;
normalize(): Vector2;
angle(): number;
distanceTo(v: Vector2): number;
distanceToSquared(v: Vector2): number;
distanceToManhattan(v: Vector2): number;
setLength(length: number): Vector2;
lerp(v: Vector2, alpha: number): Vector2;
lerpVectors(v1: Vector2, v2: Vector2, alpha: number): Vector2;
equals(v: Vector2): boolean;
fromArray(array: Float32Array | number[], offset?: number): Vector2;
toArray(array?: Float32Array | number[], offset?: number): Float32Array | number[];
fromAttribute(attribute: any, index: number, offset?: number): Vector2;
rotateAround(center: Vector2, angle: number): Vector2;
}
//# sourceMappingURL=Vector2.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Vector2.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Common/Vector2.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,12 @@
import { Board } from "../../DatabaseServices/Entity/Board";
import { Circle } from "../../DatabaseServices/Entity/Circle";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { Part } from "../Core/Part";
import { Point } from "../Common/Point";
/**
* 针对板件的曲线变点表做的特殊优化
*/
export declare function Curves2Points(cu: Circle | Polyline, outside: boolean, knifRadius: number): [(Circle | Polyline), Point[]];
export declare function Polylin2Points(pl: Polyline, outside: boolean, knifRadius: number): [Polyline, Point[]];
export declare function ConverBoard2Part(board: Board, knifRadius?: number): Part;
//# sourceMappingURL=ConverBoard2Part.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ConverBoard2Part.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Converter/ConverBoard2Part.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAKlE,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AASxC;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAMzH;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,CA+CtG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,SAAM,GAAG,IAAI,CAwCrE"}

32
types/Nest/Converter/Curves2Parts.d.ts vendored Normal file
View File

@@ -0,0 +1,32 @@
import { Box3 } from "three";
import { Circle } from "../../DatabaseServices/Entity/Circle";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { Point } from "../Common/Point";
import { Part } from "../Core/Part";
import { Path } from "../Core/Path";
import { IOffset } from "./Simplify2";
/** 内外接多边形 */
export declare function Circle2Points(circle: Circle, knifRadius: number, splitSize?: number, outside?: boolean): Point[];
export declare function Curve2Path(curve: Circle | Polyline, outside?: boolean): Path;
export declare class CurveWrap {
Curve: Polyline | Circle;
KnifRadius: number;
BoundingBox: Box3;
Area: number;
SimplyPolyline: Polyline;
SimplyOffset: IOffset;
Used: boolean;
Holes: CurveWrap[];
Points: Point[];
constructor(Curve: Polyline | Circle, KnifRadius?: number);
ContainsCurve(curve: CurveWrap): boolean;
GetOutsidePoints(): Point[];
GetInsidePoints(): Point[];
}
/**
* 曲线集合转零件集合.
* 如果存在曲线嵌套,那么自动设置为网洞
* 零件会和曲线绑定,以便后续应用坐标系变换
*/
export declare function Curves2Parts(curves: (Polyline | Circle)[], binPath: Path, KnifRadius?: number): Part[];
//# sourceMappingURL=Curves2Parts.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Curves2Parts.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Converter/Curves2Parts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAW,MAAM,OAAO,CAAC;AAEtC,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAGlE,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,IAAI,EAAa,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,OAAO,EAA0B,MAAM,aAAa,CAAC;AAE9D,aAAa;AACb,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,SAAK,EAAE,OAAO,UAAQ,GAAG,KAAK,EAAE,CAe1G;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,OAAO,UAAQ,GAAG,IAAI,CAa1E;AAED,qBAAa,SAAS;IAaC,KAAK,EAAE,QAAQ,GAAG,MAAM;IAAS,UAAU;IAX9D,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;IAsBlE,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;IAOxC,gBAAgB,IAAI,KAAK,EAAE;IA8B3B,eAAe,IAAI,KAAK,EAAE;CAwB7B;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,SAAM,GAAG,IAAI,EAAE,CAmDnG"}

View File

@@ -0,0 +1,4 @@
import { Point } from "../Common/Point";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
export declare function Path2Polyline(path: Point[]): Polyline;
//# sourceMappingURL=Path2Polyline.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Path2Polyline.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Converter/Path2Polyline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAGlE,wBAAgB,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,QAAQ,CASrD"}

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"}

45
types/Nest/Core/Container.d.ts vendored Normal file
View File

@@ -0,0 +1,45 @@
import { Paths } from "js-angusj-clipper/web";
import { Box2 } from "../Common/Box2";
import { NestFiler } from "../Common/Filer";
import { Part } from "./Part";
import { Path } from "./Path";
import { PlaceType } from "./PlaceType";
import { Point } from "../Common/Point";
/**
* 排料零件的容器,用来放置零件
* 它是一块大板
* 也可以是一个网洞
* 也可以是余料
*/
export declare class Container {
protected BinPath?: Path;
ParentId: number;
ChildrenIndex: number;
ParentM: Point;
Placed: Part[];
PlaceType: PlaceType;
PlacedArea: number;
PlacedBox: Box2;
PlacedHull: Point[];
StatusKey: string;
constructor(BinPath?: Path);
get UseRatio(): number;
private _NotPuts;
private PrePut;
private Calc;
PutPart(p: Part, greedy?: boolean): boolean;
protected GetNFPs(part: Part, binNfp: Point[][]): Paths;
/**
* 将Part添加的Placed列表
* @param part 零件,已经计算了放置状态
* @param [calc=true] 是否计算当前的容器状态?
*/
private AppendPart;
/**
* 得到最左边的点
*/
protected GetFarLeftP(nfp: Point[][]): Point;
ReadFile(file: NestFiler, parts: Part[]): this;
WriteFile(file: NestFiler): void;
}
//# sourceMappingURL=Container.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/Container.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEtE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAGtC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAQ,IAAI,EAAiB,MAAM,QAAQ,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAexC;;;;;GAKG;AACH,qBAAa,SAAS;IAeN,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI;IAbpC,QAAQ,EAAE,MAAM,CAAM;IACtB,aAAa,EAAE,MAAM,CAAK;IAC1B,OAAO,EAAE,KAAK,CAAC;IAEf,MAAM,EAAE,IAAI,EAAE,CAAM;IACpB,SAAS,EAAE,SAAS,CAAiB;IAGrC,UAAU,SAAK;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,KAAK,EAAE,CAAC;IAEpB,SAAS,EAAE,MAAM,CAAC;gBACI,OAAO,CAAC,EAAE,IAAI;IAMpC,IAAI,QAAQ,IAAI,MAAM,CAGrB;IAED,OAAO,CAAC,QAAQ,CAAqB;IAErC,OAAO,CAAC,MAAM;IAwHd,OAAO,CAAC,IAAI;IAkCZ,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,UAAQ,GAAG,OAAO;IAuCzC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK;IAoCvD;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA0BlB;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,GAAG,KAAK;IAkB5C,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE;IAkBvC,SAAS,CAAC,IAAI,EAAE,SAAS;CAc5B"}

3
types/Nest/Core/DefaultBin.d.ts vendored Normal file
View File

@@ -0,0 +1,3 @@
import { Path } from "./Path";
export declare let DefaultBin: Path;
//# sourceMappingURL=DefaultBin.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"DefaultBin.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/DefaultBin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,eAAO,IAAI,UAAU,MAA+F,CAAC"}

36
types/Nest/Core/Individual.d.ts vendored Normal file
View File

@@ -0,0 +1,36 @@
import { Container } from "./Container";
import { NestFiler } from "../Common/Filer";
import { Part } from "./Part";
import { Path } from "./Path";
import { PlaceType } from "./PlaceType";
/**
* 个体(表示某一次优化的结果,或者还没开始优化的状态)
* 个体是由一堆零件组成的,零件可以有不同的状态。
*
* 个体单独变异
* 可以是某个零件的旋转状态发生改变
* 可以是零件的顺序发生改变
*
* 个体交配(感觉暂时不需要)
* 个体和其他个体进行基因交换
*/
export declare class Individual {
Parts?: Part[];
mutationRate: number;
Fitness: number;
constructor(Parts?: Part[], mutationRate?: number);
Clone(): Individual;
/**
* 突变
*/
Mutate(): this;
Containers: Container[];
HoleContainers: Container[];
/**
* 评估健康程度
*/
Evaluate(bin: Path, bestCount: number, greedy?: boolean, type?: PlaceType): void;
ReadFile(file: NestFiler): void;
WriteFile(f: NestFiler): void;
}
//# sourceMappingURL=Individual.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Individual.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/Individual.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;;;;;;;;;GAUG;AACH,qBAAa,UAAU;IAIA,KAAK,CAAC,EAAE,IAAI,EAAE;IAAS,YAAY;IADtD,OAAO,EAAE,MAAM,CAAC;gBACG,KAAK,CAAC,EAAE,IAAI,EAAE,EAAS,YAAY,SAAM;IAE5D,KAAK;IAOL;;MAEE;IACF,MAAM;IA6CN,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,UAAQ,EAAE,IAAI,CAAC,EAAE,SAAS;IA6EvE,QAAQ,CAAC,IAAI,EAAE,SAAS;IAexB,SAAS,CAAC,CAAC,EAAE,SAAS;CAYzB"}

19
types/Nest/Core/NestCache.d.ts vendored Normal file
View File

@@ -0,0 +1,19 @@
import { Path } from "./Path";
import { Point } from "../Common/Point";
export declare class NestCache {
static count1: number;
static count2: number;
static PositionCache: {
[key: string]: Point;
};
static NoPutCache: {
[key: string]: Set<number>;
};
private static CacheRect;
/**
* 用于创建原点在0点的矩形路径
*/
static CreatePath(x: number, y: number, knifRadius?: number): Path;
static Clear(): void;
}
//# sourceMappingURL=NestCache.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"NestCache.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/NestCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,qBAAa,SAAS;IAElB,MAAM,CAAC,MAAM,SAAK;IAClB,MAAM,CAAC,MAAM,SAAK;IAElB,MAAM,CAAC,aAAa,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC;KAAE,CAAM;IACrD,MAAM,CAAC,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;KAAE,CAAM;IACxD,OAAO,CAAC,MAAM,CAAC,SAAS,CAA2B;IAEnD;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,SAAM,GAAG,IAAI;IAc/D,MAAM,CAAC,KAAK;CAOf"}

15
types/Nest/Core/NestDatabase.d.ts vendored Normal file
View File

@@ -0,0 +1,15 @@
import { Part } from "./Part";
import { Path } from "./Path";
import { NestFiler } from "../Common/Filer";
/**
* 排料数据库,用这个类来序列化需要排料的数据
* 用于在Work间传输
*/
export declare class NestDatabase {
Paths: Path[];
Bin: Path;
Parts: Part[];
ReadFile(file: NestFiler): void;
WriteFile(file: NestFiler): void;
}
//# sourceMappingURL=NestDatabase.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"NestDatabase.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/NestDatabase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C;;;GAGG;AACH,qBAAa,YAAY;IAErB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,GAAG,EAAE,IAAI,CAAC;IACV,KAAK,EAAE,IAAI,EAAE,CAAC;IAId,QAAQ,CAAC,IAAI,EAAE,SAAS;IAuBxB,SAAS,CAAC,IAAI,EAAE,SAAS;CAa5B"}

33
types/Nest/Core/OptimizeMachine.d.ts vendored Normal file
View File

@@ -0,0 +1,33 @@
import { Individual } from "./Individual";
import { Part } from "./Part";
import { Path } from "./Path";
/**
* 优化器
* 配置优化器
* 放入零件
* 按下启动
* 按下暂停
* 清理机台
*/
export declare class OptimizeMachine {
Config: {
PopulationCount: number;
};
Bin: Path;
Parts: Part[];
private _IsSuspend;
protected _Individuals: Individual[];
constructor();
PutParts(parts: Part[]): void;
callBack: (i: Individual) => Promise<void>;
Start(): Promise<void>;
calcCount: number;
best: number;
bestP: Individual;
bestCount: number;
private Run;
Suspend(): void;
Continue(): void;
Clear(): void;
}
//# sourceMappingURL=OptimizeMachine.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"OptimizeMachine.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/OptimizeMachine.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B;;;;;;;GAOG;AACH,qBAAa,eAAe;IAGxB,MAAM,EAAE;QACJ,eAAe,EAAE,MAAM,CAAC;KAC3B,CAAC;IAEF,GAAG,EAAE,IAAI,CAAC;IAEV,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,OAAO,CAAC,UAAU,CAAS;IAE3B,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC;;IAQrC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE;IAOtB,QAAQ,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAGrC,KAAK;IA0BX,SAAS,SAAK;IACd,IAAI,SAAY;IAChB,KAAK,EAAE,UAAU,CAAC;IAClB,SAAS,SAAK;YACA,GAAG;IAkEjB,OAAO;IAQP,QAAQ;IAMR,KAAK;CAGR"}

View File

@@ -0,0 +1,6 @@
declare const _default: {
new (stringUrl: string | URL, options?: WorkerOptions): Worker;
prototype: Worker;
} & (new () => Worker);
export default _default;
//# sourceMappingURL=OptimizeWorker.worker.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"OptimizeWorker.worker.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/OptimizeWorker.worker.ts"],"names":[],"mappings":";;;eA0BgD,MAAM;AAAtD,wBAAwD"}

44
types/Nest/Core/Part.d.ts vendored Normal file
View File

@@ -0,0 +1,44 @@
import { NestFiler } from "../Common/Filer";
import { PartState } from "./PartState";
import { Path } from "./Path";
import { Point } from "../Common/Point";
/**
* 零件类
* 零件类可以绑定数据,也存在位置和旋转状态的信息
*
* 初始化零件:
* 传入零件的轮廓,刀半径,包围容器(或者为空?)
* 初始化用于放置的轮廓。将轮廓首点移动到0点记录移动的点P。
*
* 零件放置位置:
* 表示零件轮廓首点的位置。
*
* 零件的旋转:
* 表示零件轮廓按照首点0旋转。
*
* 还原零件的放置状态:
* 同样将零件移动到0点
* 同样将零件旋转
* 同样将零件移动到指定的位置
* 零件可能处于容器中,变换到容器坐标系
*
*/
export declare class Part<T = any, Matrix = any> {
Id: number;
Holes: PartState[];
StateIndex: number;
RotatedStates: PartState[];
PlacePosition: Point;
UserData: T;
Parent: Part;
PlaceCS: Matrix;
get State(): PartState;
Init(path: Path, bin: Path, rotateCount?: number): this;
Init2(path: Path, bin: Path, rotations?: number[]): this;
AppendHole(path: Path): void;
Clone(): Part<any, any>;
Mutate(): this;
ReadFile(file: NestFiler): void;
WriteFile(file: NestFiler): void;
}
//# sourceMappingURL=Part.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Part.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/Part.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAIxC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG;IAEnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,EAAE,CAAM;IAExB,UAAU,SAAK;IACf,aAAa,EAAE,SAAS,EAAE,CAAM;IAChC,aAAa,EAAE,KAAK,CAAC;IAIrB,QAAQ,EAAE,CAAC,CAAC;IACZ,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAGhB,IAAI,KAAK,IAAI,SAAS,CAGrB;IAGD,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,SAAI,GAAG,IAAI;IAalD,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,GAAE,MAAM,EAAO,GAAG,IAAI;IAmD5D,UAAU,CAAC,IAAI,EAAE,IAAI;IAWrB,KAAK;IAYL,MAAM,IAAI,IAAI;IAOd,QAAQ,CAAC,IAAI,EAAE,SAAS;IAqBxB,SAAS,CAAC,IAAI,EAAE,SAAS;CAY5B"}

15
types/Nest/Core/PartState.d.ts vendored Normal file
View File

@@ -0,0 +1,15 @@
import { Path } from "./Path";
import { Point } from "../Common/Point";
import { NestFiler } from "../Common/Filer";
/**
* 用于存放零件旋转后的状态
* 记录了用于放置时的轮廓。该轮廓总是首点等于0便于放置时的计算。
*/
export declare class PartState {
Rotation: number;
OrigionMinPoint: Point;
Contour: Path;
ReadFile(file: NestFiler): void;
WriteFile(file: NestFiler): void;
}
//# sourceMappingURL=PartState.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"PartState.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/PartState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;GAGG;AACH,qBAAa,SAAS;IAElB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,KAAK,CAAC;IACvB,OAAO,EAAE,IAAI,CAAC;IAGd,QAAQ,CAAC,IAAI,EAAE,SAAS;IAUxB,SAAS,CAAC,IAAI,EAAE,SAAS;CAO5B"}

55
types/Nest/Core/Path.d.ts vendored Normal file
View File

@@ -0,0 +1,55 @@
import { Box2 } from "../Common/Box2";
import { NestFiler } from "../Common/Filer";
import { Point } from "../Common/Point";
import { Vector2 } from "../Common/Vector2";
/**
* 轮廓路径类
* 可以求NFP和保存NFPCahce
* 因为NFP结果是按照最低点移动的,所以将点旋转后,按照盒子将点移动到0点.
*/
export declare class Path {
Id: number;
Points: Point[];
OutsideNFPCache: {
[key: number]: Point[][];
};
InsideNFPCache: {
[key: number]: Point[][];
};
constructor(origionPoints?: Point[], rotation?: number);
Origion: Path;
OrigionMinPoint: Vector2;
Rotation: number;
Size: Vector2;
Init(origionPoints: Point[], rotation: number): void;
GetNFPs(path: Path, outside: boolean): Point[][];
GetOutsideNFP(path: Path): Point[][];
GetInsideNFP(path: Path): Point[][];
private _InPoint;
/**
* 用这个点来检测是否在Path内部
*/
private get InPoint();
protected _BigIntPoints: Point[];
get BigIntPoints(): Point[];
private _BigSize;
get BigSize(): Vector2;
protected _MirrorPoints: Point[];
get MirrorPoints(): Point[];
protected _BoundingBox: Box2;
get BoundingBox(): Box2;
protected _Area: number;
get Area(): number;
set Area(a: number);
private _IsRect;
get IsRect(): boolean;
ReadFile(file: NestFiler): void;
WriteFile(file: NestFiler): void;
}
export declare function Area(pts: Point[]): number;
/**
* 平移点表,返回新点表
*/
export declare function TranslatePath(pts: Point[], p: Point): Point[];
export declare function PathScale(pts: Point[], scale: number): Point[];
//# sourceMappingURL=Path.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Path.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/Path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,IAAI;IAEb,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,eAAe,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,EAAE,EAAE,CAAC;KAAE,CAAM;IACpD,cAAc,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,EAAE,EAAE,CAAC;KAAE,CAAM;gBAEvC,aAAa,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,GAAE,MAAU;IAMzD,OAAO,EAAE,IAAI,CAAC;IAEd,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IAEjB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM;IAyC7C,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,GAAG,KAAK,EAAE,EAAE;IA2ChD,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,EAAE;IA6BpC,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,EAAE;IAgCnC,OAAO,CAAC,QAAQ,CAAQ;IAExB;;OAEG;IACH,OAAO,KAAK,OAAO,GAalB;IAED,SAAS,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC;IACjC,IAAI,YAAY,YAWf;IAED,OAAO,CAAC,QAAQ,CAAU;IAC1B,IAAI,OAAO,YAKV;IAED,SAAS,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC;IACjC,IAAI,YAAY,YASf;IAED,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC;IAC7B,IAAI,WAAW,SAKd;IAED,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;IACxB,IAAI,IAAI,IAMI,MAAM,CADjB;IACD,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM,EAGjB;IAED,OAAO,CAAC,OAAO,CAAU;IACzB,IAAI,MAAM,YAQT;IAED,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAsB/B,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;CAuBnC;AAID,wBAAgB,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,MAAM,CAYzC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,CAM7D;AAGD,wBAAgB,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,CAQ9D"}

26
types/Nest/Core/PathGenerator.d.ts vendored Normal file
View File

@@ -0,0 +1,26 @@
import { Path } from "./Path";
/**
* 轮廓路径构造器
* 传递一组简化后的点表过来如果已经有同样的点表时返回已经生产的Path避免重复产生Path。
* 使用相同的PATH有复用路径缓存。
*
* 每次进行优化时必须清理构造器保证Path生成是对本次优化唯一。
*/
declare class PathGenerator {
paths: Path[];
pathAreaMap: {
[key: string]: Path[];
};
cacheCount: number;
/**
* 如果存在同样的轮廓,则返回已经构造的轮廓,
* 如果没有,则返回自身,并且注册它。
* 如果id没有被注册,那么证明它无法放置在bin中
*/
Allocate(path: Path): Path;
RegisterId(path: Path): void;
Clear(): void;
}
export declare let PathGeneratorSingle: PathGenerator;
export {};
//# sourceMappingURL=PathGenerator.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"PathGenerator.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/PathGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B;;;;;;GAMG;AACH,cAAM,aAAa;IAEf,KAAK,EAAE,IAAI,EAAE,CAAM;IACnB,WAAW,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,CAAC;KAAE,CAAM;IAG7C,UAAU,SAAK;IACf;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAqB1B,UAAU,CAAC,IAAI,EAAE,IAAI;IASrB,KAAK;CAMR;AA0BD,eAAO,IAAI,mBAAmB,eAAoB,CAAC"}

6
types/Nest/Core/PlaceType.d.ts vendored Normal file
View File

@@ -0,0 +1,6 @@
export declare enum PlaceType {
Hull = 0,
Box = 1,
Gravity = 2
}
//# sourceMappingURL=PlaceType.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"PlaceType.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Core/PlaceType.ts"],"names":[],"mappings":"AACA,oBAAY,SAAS;IAEjB,IAAI,IAAI;IACR,GAAG,IAAI;IACP,OAAO,IAAI;CACd"}

5
types/Nest/Test/TestData.d.ts vendored Normal file
View File

@@ -0,0 +1,5 @@
import { Command } from "../../Editor/CommandMachine";
export declare class Command_NFPData implements Command {
exec(): Promise<void>;
}
//# sourceMappingURL=TestData.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TestData.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Test/TestData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAOtD,qBAAa,eAAgB,YAAW,OAAO;IAErC,IAAI;CAgBb"}

4
types/Nest/Test/TestHull.d.ts vendored Normal file
View File

@@ -0,0 +1,4 @@
export declare class Command_TestHull {
exec(): Promise<void>;
}
//# sourceMappingURL=TestHull.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TestHull.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Test/TestHull.ts"],"names":[],"mappings":"AAQA,qBAAa,gBAAgB;IAEnB,IAAI;CAab"}

5
types/Nest/Test/TestNFP.d.ts vendored Normal file
View File

@@ -0,0 +1,5 @@
import { Command } from "../../Editor/CommandMachine";
export declare class Command_TestNFP implements Command {
exec(): Promise<void>;
}
//# sourceMappingURL=TestNFP.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TestNFP.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Test/TestNFP.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAStD,qBAAa,eAAgB,YAAW,OAAO;IAErC,IAAI;CAsEb"}

7
types/Nest/Test/TestOffset.d.ts vendored Normal file
View File

@@ -0,0 +1,7 @@
/**
* 测试结果 19-20点以上时使用c++进行偏移会更快
*/
export declare class Command_TestOffset {
exec(): Promise<void>;
}
//# sourceMappingURL=TestOffset.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TestOffset.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Test/TestOffset.ts"],"names":[],"mappings":"AAMA;;GAEG;AAEH,qBAAa,kBAAkB;IAErB,IAAI;CA8Bb"}

5
types/Nest/Test/TestPlace.d.ts vendored Normal file
View File

@@ -0,0 +1,5 @@
import { Command } from "../../Editor/CommandMachine";
export declare class Command_TestPlace implements Command {
exec(): Promise<void>;
}
//# sourceMappingURL=TestPlace.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TestPlace.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Test/TestPlace.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAUtD,qBAAa,iBAAkB,YAAW,OAAO;IAEvC,IAAI;CA4Eb"}

5
types/Nest/Test/TestSimply.d.ts vendored Normal file
View File

@@ -0,0 +1,5 @@
import { Command } from "../../Editor/CommandMachine";
export declare class Command_TestSimply implements Command {
exec(): Promise<void>;
}
//# sourceMappingURL=TestSimply.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TestSimply.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Test/TestSimply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAWtD,qBAAa,kBAAmB,YAAW,OAAO;IAExC,IAAI;CAoCb"}

8
types/Nest/Test/TestVariant.d.ts vendored Normal file
View File

@@ -0,0 +1,8 @@
import { Individual } from "../Core/Individual";
import { Curve } from "../../DatabaseServices/Entity/Curve";
import { Matrix4 } from "three";
export declare let NestVariant: {
best?: Individual;
curveMap?: Map<Curve, Matrix4>;
};
//# sourceMappingURL=TestVariant.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TestVariant.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Test/TestVariant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,eAAO,IAAI,WAAW,EAAE;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,QAAQ,CAAC,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;CACR,CAAC"}

5
types/Nest/Test/TestYH2.d.ts vendored Normal file
View File

@@ -0,0 +1,5 @@
import { Command } from "../../Editor/CommandMachine";
export declare class Command_TestYH2 implements Command {
exec(): Promise<void>;
}
//# sourceMappingURL=TestYH2.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TestYH2.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Test/TestYH2.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAgBtD,qBAAa,eAAgB,YAAW,OAAO;IAErC,IAAI;CA4Jb"}

5
types/Nest/Test/TestYHWorker.d.ts vendored Normal file
View File

@@ -0,0 +1,5 @@
import { Command } from "../../Editor/CommandMachine";
export declare class Command_TestYHWorker implements Command {
exec(): Promise<void>;
}
//# sourceMappingURL=TestYHWorker.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"TestYHWorker.d.ts","sourceRoot":"","sources":["../../../../../src/Nest/Test/TestYHWorker.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAe,MAAM,6BAA6B,CAAC;AAoBnE,qBACa,oBAAqB,YAAW,OAAO;IAE1C,IAAI;CAwKb"}