更新版本

This commit is contained in:
ChenX
2024-12-09 10:12:56 +08:00
parent bfa2feca5b
commit 09a2b325fa
1076 changed files with 32219 additions and 15692 deletions

View File

@@ -0,0 +1,59 @@
import { Geom3 } from "@jscad/modeling/src/geometries/types";
import { BufferGeometry, Matrix4, Vector3 } from "three";
import { Arc } from "../../DatabaseServices/Entity/Arc";
import { Board } from "../../DatabaseServices/Entity/Board";
import { Line } from "../../DatabaseServices/Entity/Line";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { FuzzyFactory } from "../../csg/core/FuzzyFactory";
import { FaceDirection } from "../DrawDrilling/DrillType";
export declare class ArcBoardBuild {
private _board;
private _SweepPath;
private _SweepAngle;
private _FaceDir;
private _SweepLengths;
private _SweepCurves1;
private _SweepCurves2;
private _SweepPath1;
private _SweepPath2;
_OCS2RotateMtx: Matrix4;
_Rotate2OCSMtx: Matrix4;
constructor(_board: Board, _SweepPath?: Polyline, _SweepAngle?: number, _FaceDir?: FaceDirection);
get SweepPath1(): Polyline;
get SweepPath2(): Polyline;
ParseContourLength(): void;
static OffsetPolyline(path: Polyline, dist: number): Polyline;
get OCS2RotateMtx(): Matrix4;
get Rotate2OCSMtx(): Matrix4;
ParseRotateMtx(): void;
get SweepCurves1(): (Line | Arc)[];
get SweepCurves2(): (Line | Arc)[];
ParseSweepCurves(): this;
get SweepLengths(): number[];
get SweepLength(): number;
private _SweepEndDists;
get SweepEndDists(): number[];
_CacheFuzzXFactory: FuzzyFactory;
_Cache_X_PosDirMap: Map<number, [Vector3, Vector3]>;
_CornerFuzzFactory: FuzzyFactory;
_CornerSet: Set<number>;
/** 临时板 计算平板的CSG */
_csgBoard: Board;
/** 切割的位置 */
private _splitXList;
get CSGBoard(): Board;
get SplitXList(): number[];
/** 解析切割的位置 */
private ParseSplitXlist;
/** 解析临时板 */
private ParseCSGBoard;
/** 生成圆弧板的Geometry */
BuildMeshEdgeGeom(csg?: Geom3): [BufferGeometry, BufferGeometry];
/** 生成大孔面 */
BuildBigHoleFace(): BufferGeometry;
private ParseCorner;
ParseAllX_Map(xs: number[]): void;
ParseAllX_Map_BigHole(xs: number[]): [FuzzyFactory, Map<number, [Vector3, Vector3]>];
PosMap2ArcPos(p: Vector3, cacheFuzzXFactory?: FuzzyFactory, cache_X_PosDirMap?: Map<number, [Vector3, Vector3]>): void;
}
//# sourceMappingURL=ArcBoardBuild.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ArcBoardBuild.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/ArcBoard/ArcBoardBuild.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAS,MAAM,sCAAsC,CAAC;AAOpE,OAAO,EAAmB,cAAc,EAAS,OAAO,EAAS,OAAO,EAAE,MAAM,OAAO,CAAC;AAIxF,OAAO,EAAE,GAAG,EAAE,MAAM,mCAAmC,CAAC;AACxD,OAAO,EAAE,KAAK,EAAa,MAAM,qCAAqC,CAAC;AAGvE,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAOlE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAG1D,qBAAa,aAAa;IAkBV,OAAO,CAAC,MAAM;IAEtB,OAAO,CAAC,UAAU;IAElB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,QAAQ;IApBpB,OAAO,CAAC,aAAa,CAAW;IAEhC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,aAAa,CAAiB;IAEtC,OAAO,CAAC,WAAW,CAAW;IAC9B,OAAO,CAAC,WAAW,CAAW;IAG9B,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;gBAKJ,MAAM,EAAE,KAAK,EAErB,UAAU,GAAE,QAAgC,EAE5C,WAAW,GAAE,MAA0B,EACvC,QAAQ,gBAA0B;IAM9C,IAAI,UAAU,aAA+B;IAC7C,IAAI,UAAU,aAA+B;IAE7C,kBAAkB;IAOlB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ;IAO7D,IAAI,aAAa,IAAI,OAAO,CAQ3B;IACD,IAAI,aAAa,IAAI,OAAO,CAM3B;IACD,cAAc;IAcd,IAAI,YAAY,mBAGf;IAED,IAAI,YAAY,mBAGf;IAED,gBAAgB;IAoChB,IAAI,YAAY,aAKf;IAED,IAAI,WAAW,WAMd;IAED,OAAO,CAAC,cAAc,CAAW;IACjC,IAAI,aAAa,aAahB;IAoDD,kBAAkB,eAA6B;IAC/C,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAW;IAE9D,kBAAkB,EAAE,YAAY,CAAC;IACjC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB,mBAAmB;IACnB,SAAS,EAAE,KAAK,CAAC;IACjB,YAAY;IACZ,OAAO,CAAC,WAAW,CAAW;IAE9B,IAAI,QAAQ,UAKX;IAED,IAAI,UAAU,aAKb;IAED,cAAc;IACd,OAAO,CAAC,eAAe;IA6BvB,YAAY;IACZ,OAAO,CAAC,aAAa;IA4FrB,qBAAqB;IACrB,iBAAiB,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC;IAoMhE,YAAY;IACZ,gBAAgB;IAyHhB,OAAO,CAAC,WAAW;IAWnB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE;IA2C1B,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,GAoCmB,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAGpG,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,iBAAiB,eAA0B,EAAE,iBAAiB,kCAA0B;CAkBrH"}

View File

@@ -0,0 +1,26 @@
import { Board, IModeling } from "../../DatabaseServices/Entity/Board";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { FaceDirection } from "../DrawDrilling/DrillType";
export interface ArcBoardOptions {
arcLength: number;
grooveSpacing: number;
grooveWidth: number;
retainedThickness: number;
knifeRadius: number;
grooveAddLength: number;
grooveAddWidth: number;
grooveAddDepth: number;
arcExtension: number;
}
export declare const defultArcBoardOption: ArcBoardOptions;
/**
* 解析圆弧板需要的走刀数据
* @param br
* @param path 圆弧放样路径
* @param angle 角度
* @param dir 圆弧板见光面 见光面正面走刀颜色黄色,背面颜色红色
* @param [onlyVert=false] 仅解析交点位置 (默认解析所有的槽)
* @returns 返回需要增加的槽的数据
*/
export declare function ParseBoardArcFeed(br: Board, path: Polyline, angle: number, dir: FaceDirection, arcBoardOptions: Map<number, ArcBoardOptions>, onlyVert?: boolean): IModeling[];
//# sourceMappingURL=ArcBoardFeeding.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ArcBoardFeeding.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/ArcBoard/ArcBoardFeeding.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAC;AAEvE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAIlE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAG1D,MAAM,WAAW,eAAe;IAE5B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACxB;AAGD,eAAO,MAAM,oBAAoB,EAAE,eAUlC,CAAC;AAGF;;;;;;;;KAQK;AACL,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,QAAQ,UAAQ,GAAG,SAAS,EAAE,CAyR5K"}

View File

@@ -0,0 +1,16 @@
import React from "react";
import { BoardModalType } from "../../../UI/Components/Board/BoardModalType";
import { IArcBoardGrooveOption } from "../../../UI/Store/OptionInterface/IOptionInterface";
import { ArcBoardGrooveStore } from "./ArcBoardGrooveStore";
export declare class ArcBoardGroove extends React.Component<{
store: ArcBoardGrooveStore;
type: BoardModalType;
}, {}> {
curveBoardPars: string[][];
defaultArcGroovePars1: string[][];
defaultArcGroovePars2: string[][];
curOption: IArcBoardGrooveOption;
componentDidMount(): void;
render(): JSX.Element;
}
//# sourceMappingURL=ArcBoardGroove.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ArcBoardGroove.d.ts","sourceRoot":"","sources":["../../../../../src/Add-on/ArcBoard/ArcBoardGeooveConfig/ArcBoardGroove.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAI7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,qBACa,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC;IAAE,KAAK,EAAE,mBAAmB,CAAC;IAAC,IAAI,EAAE,cAAc,CAAC;CAAE,EAAE,EAAE,CAAC;IAE1G,cAAc,aAMZ;IAEF,qBAAqB,aAGnB;IAEF,qBAAqB,aAOnB;IAEF,SAAS,EAAE,qBAAqB,CAAC;IAEjC,iBAAiB,IAAI,IAAI;IAKzB,MAAM;CAoIT"}

View File

@@ -0,0 +1,11 @@
import { IConfigOption } from "../../../UI/Components/Board/UserConfigComponent";
import { BoardStore } from "../../../UI/Store/BoardStore";
import { IArcBoardGrooveOption } from "../../../UI/Store/OptionInterface/IOptionInterface";
export declare class ArcBoardGrooveStore extends BoardStore<IArcBoardGrooveOption> {
title: string;
m_Option: IArcBoardGrooveOption;
InitOption(): void;
UpdateOption(cof: IConfigOption<IArcBoardGrooveOption>): void;
SaveConfig(): IConfigOption<import("../../../UI/Store/OptionInterface/IOptionInterface").AnyObject>;
}
//# sourceMappingURL=ArcBoardGrooveStore.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ArcBoardGrooveStore.d.ts","sourceRoot":"","sources":["../../../../../src/Add-on/ArcBoard/ArcBoardGeooveConfig/ArcBoardGrooveStore.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAE3F,qBAAa,mBAAoB,SAAQ,UAAU,CAAC,qBAAqB,CAAC;IAEtE,KAAK,SAAa;IACN,QAAQ,EAAE,qBAAqB,CAAuC;IAElF,UAAU;IAKV,YAAY,CAAC,GAAG,EAAE,aAAa,CAAC,qBAAqB,CAAC,GAAG,IAAI;IAyB7D,UAAU;CAMb"}

View File

@@ -0,0 +1,13 @@
import { IConfigOption } from "../../UI/Components/Board/UserConfigComponent";
import { BoardStore } from "../../UI/Store/BoardStore";
import { BoardConfigOption } from "../../UI/Store/OptionInterface/IOptionInterface";
export declare class ArcBoardStore extends BoardStore<BoardConfigOption> {
title: string;
m_Option: BoardConfigOption;
UpdateUIOption(): void;
InitOption(): void;
UpdateOption(cof: IConfigOption<BoardConfigOption>): void;
SaveConfig(): IConfigOption<import("../../UI/Store/OptionInterface/IOptionInterface").AnyObject>;
}
export declare const arcBoardStore: ArcBoardStore;
//# sourceMappingURL=ArcBoardStore.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ArcBoardStore.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/ArcBoard/ArcBoardStore.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AAGpF,qBAAa,aAAc,SAAQ,UAAU,CAAC,iBAAiB,CAAC;IAE5D,KAAK,SAAS;IACF,QAAQ,EAAE,iBAAiB,CAMrC;IAEF,cAAc;IAKd,UAAU;IAMV,YAAY,CAAC,GAAG,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAAG,IAAI;IAKzD,UAAU;CAMb;AAED,eAAO,MAAM,aAAa,eAA8B,CAAC"}

17
types/Add-on/ArcBoard/DrawArcBoard.d.ts vendored Normal file
View File

@@ -0,0 +1,17 @@
import { Board } from "../../DatabaseServices/Entity/Board";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { Command } from "../../Editor/CommandMachine";
export declare class Command_DrawArcBoard implements Command {
exec(): Promise<void>;
}
export declare function GetArcBoardParams(path1: Polyline): Promise<{
odir: number;
fdir: number;
}>;
export declare function DrawArcBoard(params: {
odir: number;
fdir: number;
}, path1: Polyline): Promise<void>;
export declare function ApplyArcBoardByPathInfo(brs: Board[], odir: number, fdir: number, path1: Polyline): Promise<void>;
export declare function Path2BoardPath(br: Board, path: Polyline): [number, boolean];
//# sourceMappingURL=DrawArcBoard.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"DrawArcBoard.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/ArcBoard/DrawArcBoard.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAmBtD,qBACa,oBAAqB,YAAW,OAAO;IAE1C,IAAI;CAwBb;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,QAAQ;;;GAmEtD;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;CAAE,EAAE,KAAK,EAAE,QAAQ,iBA8G1F;AAGD,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,iBA+FtG;AAGD,wBAAgB,cAAc,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAoG3E"}