功能:支持切割函数

This commit is contained in:
ChenX
2023-05-08 12:01:37 +08:00
parent ee08cb516b
commit d92ad67a75
829 changed files with 6049 additions and 151 deletions

View File

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

View File

@@ -0,0 +1 @@
{"version":3,"file":"CheckDrawHole.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/CheckDrawHole.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAKtD,qBAAa,aAAc,YAAW,OAAO;IAEnC,IAAI;CAoBb"}

View File

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

View File

@@ -0,0 +1 @@
{"version":3,"file":"CheckHasHole.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/CheckHasHole.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAKtD,qBAAa,iBAAkB,YAAW,OAAO;IAEvC,IAAI;CA8Bb"}

View File

@@ -0,0 +1,16 @@
import * as React from 'react';
import { Board } from '../../DatabaseServices/Entity/Board';
import { Face } from '../../Geometry/DrillParse/Face';
export interface ICollsionBrs {
LocalBoard: Board;
InterBoard: Board;
}
interface ICollsionModalProps {
faces: (Face | ICollsionBrs)[];
}
export declare class CollsionModal extends React.Component<ICollsionModalProps> {
render(): JSX.Element;
private click;
}
export {};
//# sourceMappingURL=CollisionModal.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"CollisionModal.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/CollisionModal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AAGtD,MAAM,WAAW,YAAY;IAEzB,UAAU,EAAE,KAAK,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC;CACrB;AAED,UAAU,mBAAmB;IAEzB,KAAK,EAAE,CAAC,IAAI,GAAG,YAAY,CAAC,EAAE,CAAC;CAClC;AAED,qBACa,aAAc,SAAQ,KAAK,CAAC,SAAS,CAAC,mBAAmB,CAAC;IAC5D,MAAM;IAwBb,OAAO,CAAC,KAAK,CAUX;CACL"}

View File

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

View File

@@ -0,0 +1 @@
{"version":3,"file":"DeleteDrill.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/DeleteDrill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAuBtD,qBAAa,WAAY,YAAW,OAAO;IAEvC,OAAO,CAAC,UAAU,CAA2C;IACvD,IAAI;CAwFb"}

View File

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

View File

@@ -0,0 +1 @@
{"version":3,"file":"DrawDrilling.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/DrawDrilling.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAKtD,qBAAa,YAAa,YAAW,OAAO;IAElC,IAAI;CAiBb"}

View File

@@ -0,0 +1,67 @@
import { Matrix4 } from "three";
import { Singleton } from "../../Common/Singleton";
import { Board } from "../../DatabaseServices/Entity/Board";
import { ObjectId } from "../../DatabaseServices/ObjectId";
import { Box3Ext } from "../../Geometry/Box";
import { DrillingOption } from "../../UI/Store/drillInterface";
export declare class DrawDrillingTool extends Singleton {
private m_MoveDistList;
private m_Face;
private m_Option;
private backupOption; /**备选配置 */
private woodPins;
private drillEnts;
private _configCache;
private _drillEntsCache;
private _woodPinsCache;
private _collsionFaces;
private _hasBackupOption;
private _useBackup;
private _isDrillTouch;
constructor();
HasConfig(type: string): boolean;
/**获取用户正在使用的配置 */
private GetDrillingConfig;
private GetRuleByFace;
private InitWoodPins;
get CacheKey(): string;
get IsPostive(): boolean;
get EvalParam(): {
H: number;
L: number;
W: number;
};
private InitDrill;
private _InitDrill;
InitDrillTemp(suitableOption: DrillingOption): boolean;
private EqulalSpacing;
private Multiple32;
private GetMoveDist;
private GetBoxes;
private BuildDrill;
private CheckDrillInBoard;
private CheckWoodInBoard;
private CheckModelingCollision;
private IsDrillCollisionModeling;
private ParseDrillList;
private SaveDrillToBoard;
private ParseThroughHoles;
private ParseHolesisThrough;
private MoveDrillEnts;
IsTk(ds: ObjectId[]): boolean;
GetDrillsBox(ids: ObjectId[], OCSInv: Matrix4): Box3Ext[];
CheckCollision(drills: ObjectId[][], refDrillList: ObjectId[][], woodPinss: ObjectId[][]): void;
private InitTool;
private ClassifyBoardList;
ClearExitDrilling(brs: Board[]): void;
private StartGangDrill;
private Exec;
/**分类并排钻 */
ClassifyAndDrilling(brList: Board[] | Set<Board>): Promise<void>;
private IsSplitBoard;
private GetSpliteBoards;
DrillIsCollsion(b1: Box3Ext, b2: Box3Ext): boolean;
Check(brs: Board[]): Promise<string[]>;
CheckDrillList(result: string[]): void;
}
//# sourceMappingURL=DrawDrillingTool.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"DrawDrillingTool.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/DrawDrillingTool.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,OAAO,EAAW,MAAM,OAAO,CAAC;AAQ/C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AASnD,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAM5D,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAG3D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAO7C,OAAO,EAAE,cAAc,EAAe,MAAM,+BAA+B,CAAC;AAG5E,qBAAa,gBAAiB,SAAQ,SAAS;IAE3C,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,MAAM,CAAO;IACrB,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,YAAY,CAAiB,CAAC,UAAU;IAChD,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,SAAS,CAAc;IAE/B,OAAO,CAAC,YAAY,CAA4C;IAEhE,OAAO,CAAC,eAAe,CAA0C;IACjE,OAAO,CAAC,cAAc,CAA0C;IACpD,OAAO,CAAC,cAAc,CAAc;IAChD,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,aAAa,CAAS;;IAW9B,SAAS,CAAC,IAAI,EAAE,MAAM;IAKtB,iBAAiB;IACjB,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,YAAY;IA2DpB,IAAI,QAAQ,WAMX;IACD,IAAI,SAAS,YAGZ;IACD,IAAI,SAAS;;;;MAOZ;IAED,OAAO,CAAC,SAAS;IAiBjB,OAAO,CAAC,UAAU;IA4ElB,aAAa,CAAC,cAAc,EAAE,cAAc;IAyC5C,OAAO,CAAC,aAAa;IA4CrB,OAAO,CAAC,UAAU;IAyDlB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,QAAQ;IAkChB,OAAO,CAAC,UAAU;IAwHlB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,sBAAsB;IAsB9B,OAAO,CAAC,wBAAwB;IAqBhC,OAAO,CAAC,cAAc;IA4DtB,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,iBAAiB;IAyDzB,OAAO,CAAC,mBAAmB;IA+E3B,OAAO,CAAC,aAAa;IAoBrB,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE;IAInB,YAAY,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO;IAa7C,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE;IAuCxF,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,iBAAiB;IAczB,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE;YAehB,cAAc;IAuB5B,OAAO,CAAC,IAAI;IA6EZ,WAAW;IACL,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAyCtE,OAAO,CAAC,YAAY;YAON,eAAe;IAwB7B,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO;IAmClC,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE;IAsGxB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE;CAmBlC"}

View File

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

View File

@@ -0,0 +1 @@
{"version":3,"file":"DrillConfig.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/DrillConfig.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAItD,qBAAa,WAAY,YAAW,OAAO;IAEjC,IAAI;CAKb"}

View File

@@ -0,0 +1,7 @@
import { Board } from "../../DatabaseServices/Entity/Board";
export declare class DrillingReactor {
constructor();
private GetSurroundBoards;
StartReactor(brs: Set<Board>): Promise<void>;
}
//# sourceMappingURL=DrillingReactor.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"DrillingReactor.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/DrillingReactor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AA4C5D,qBAAa,eAAe;;IAwExB,OAAO,CAAC,iBAAiB;IAqBnB,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC;CAmBrC"}

View File

@@ -0,0 +1,24 @@
import { Matrix4 } from "three";
import { CylinderHole } from "../../DatabaseServices/3DSolid/CylinderHole";
import { ExtrudeHole } from "../../DatabaseServices/3DSolid/ExtrudeHole";
import { Hole } from "../../DatabaseServices/3DSolid/Hole";
import { Board } from "../../DatabaseServices/Entity/Board";
export declare const SCALAR = 0.1;
export declare function CyHoleInBoard(cys: CylinderHole[], br: Board, ocs: Matrix4): boolean;
/**
* 板的排钻 <上下左右>
*/
export interface IBoardRectHoleType {
up: string;
down: string;
left: string;
right: string;
}
export declare const TempRectHoleOption: IBoardRectHoleType;
/**分析上下左右排钻 */
export declare function ParseBoardRectHoleType(br: Board, outBrRectHoleType?: IBoardRectHoleType): IBoardRectHoleType;
export declare function ExtureHoleInBoard(holes: ExtrudeHole[], board: Board, ocs: Matrix4): boolean;
export declare function HoleInBoard(holes: Hole[], br: Board, ocs?: Matrix4): boolean;
/**上下左右排钻写入到板件的高级排钻中 */
export declare function SetBrHighHoleTypeFromRectHoleType(br: Board, brRectHoleType: IBoardRectHoleType): void;
//# sourceMappingURL=HoleUtils.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"HoleUtils.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/HoleUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAW,MAAM,OAAO,CAAC;AAG/C,OAAO,EAAE,YAAY,EAAiB,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,qCAAqC,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAQ5D,eAAO,MAAM,MAAM,MAAM,CAAC;AAE1B,wBAAgB,aAAa,CAAC,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,WA4HzE;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAE/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,kBAAkB,EAAE,kBAKhC,CAAC;AAEF,cAAc;AACd,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,KAAK,EAAE,iBAAiB,GAAE,kBAA8B,sBA2BlG;AACD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,WAIjF;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,OAAO,WAYlE;AAED,uBAAuB;AACvB,wBAAgB,iCAAiC,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,kBAAkB,QA+B9F"}

View File

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

View File

@@ -0,0 +1 @@
{"version":3,"file":"ReverseDrillFace.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/ReverseDrillFace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAMtD,qBAAa,gBAAiB,YAAW,OAAO;IAEtC,IAAI;CAeb"}

View File

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

View File

@@ -0,0 +1 @@
{"version":3,"file":"ShowDrillingTemplate.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/ShowDrillingTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAItD,qBAAa,oBAAqB,YAAW,OAAO;IAE1C,IAAI;CAIb"}

View File

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

View File

@@ -0,0 +1 @@
{"version":3,"file":"ToggleDrillingReactor.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/DrawDrilling/ToggleDrillingReactor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAItD,qBAAa,qBAAsB,YAAW,OAAO;IAEjD,YAAY,UAAQ;IACd,IAAI;CASb"}