37 Commits

Author SHA1 Message Date
e21e0dc96c 1 2025-04-27 15:04:14 +08:00
ChenX
a29566e9b4 更新版本 2025-04-10 15:53:49 +08:00
ChenX
b08fc5ee5e 更新包 2025-04-01 14:56:29 +08:00
ChenX
dccd6ec73e ver 2024-10-29 17:14:43 +08:00
ChenX
3cdbeeb178 开发:更新 2024-10-14 15:36:05 +08:00
ChenX
46dd7d3cc2 ver 2024-09-25 17:41:08 +08:00
ChenX
00b2b3fb90 ver 2024-09-25 17:40:49 +08:00
ChenX
20c3f892e7 ver 2024-09-25 11:57:15 +08:00
ChenX
acd7eaaca0 up 2024-08-29 20:03:59 +08:00
ChenX
cd52d00b3c 版本号 2024-08-14 17:09:43 +08:00
ChenX
53ec26cde9 更新代码 2024-08-14 17:08:00 +08:00
ChenX
cad3b381d9 更新版本 2024-06-24 16:22:43 +08:00
ChenX
53d81a3461 更新 2024-06-04 16:00:08 +08:00
ChenX
e41aee75a0 更新代码 2024-05-27 11:18:18 +08:00
ChenX
27b333c830 更新版本 2024-05-10 11:33:53 +08:00
ChenX
cc062c79c8 up 2024-04-17 18:27:39 +08:00
ChenX
d61ef7270d 更新代码 2024-03-14 14:18:39 +08:00
ChenX
7ad2143637 更新版本 2024-02-05 17:17:48 +08:00
ChenX
bd2fff239e 开发:导出api 2023-12-11 09:23:55 +08:00
ChenX
0b53d5eaa9 更新版本 2023-12-07 09:34:41 +08:00
ChenX
5cc4e64b73 同步代码 2023-10-13 09:52:24 +08:00
ChenX
9c91cdaec4 修复:eval2生成代码丢失 2023-09-12 17:22:44 +08:00
ChenX
05589d99d5 同步代码 2023-09-09 17:26:43 +08:00
ChenX
f1a1373831 同步代码 2023-08-09 15:33:14 +08:00
ChenX
2adf047675 同步代码 2023-08-07 14:56:19 +08:00
ChenX
b535db4ba8 同步版本 2023-07-21 15:56:48 +08:00
ChenX
48e15326a5 实现板件倒角 2023-07-06 10:23:55 +08:00
ChenX
bf1b1186c1 update 2023-05-30 18:22:43 +08:00
ChenX
738c42e64e 同步代码 2023-05-18 21:45:34 +08:00
ChenX
b3cfd62996 同步源码 2023-05-05 11:18:24 +08:00
ChenX
72cd78190b 同步源码 2023-04-20 15:08:17 +08:00
ChenX
6ce49f3885 开发:更新版本 2023-04-06 10:23:13 +08:00
ChenX
b1026b0769 同步源码 2023-03-15 16:40:54 +08:00
ChenX
8e22f4d0c8 同步源码 2023-02-25 16:20:42 +08:00
ChenX
72af70545a 同步源码 2023-02-23 10:36:06 +08:00
ChenX
ba2be9949d 同步源码 2023-02-22 09:27:57 +08:00
ChenX
8f005232a8 同步最新的源代码 2023-02-17 09:40:24 +08:00
1815 changed files with 67619 additions and 30296 deletions

156
CSGSubtract.worker.cjs Normal file
View File

@@ -0,0 +1,156 @@
'use strict';
var poly3 = require('@jscad/modeling/src/geometries/poly3');
var booleans = require('@jscad/modeling/src/operations/booleans');
/**
* @param compart true => t2 , false => t1
* @returns 索引
*/
function Max(arr, compart)
{
let best = arr[0];
let bestIndex = 0;
for (let i = 1; i < arr.length; i++) {
let t1 = arr[i];
if (compart(best, t1)) {
best = t1;
bestIndex = i;
}
}
return bestIndex;
}
/** Epsilon used during determination of near zero distances.
* @default
*/
const EPS = 5e-2;
// //////////////////////////////
// tolerance: The maximum difference for each parameter allowed to be considered a match
class FuzzyFactory
{
constructor(numdimensions = 3, tolerance = EPS)
{
this.lookuptable = {};
this.multiplier = 1.0 / tolerance;
}
// let obj = f.lookupOrCreate([el1, el2, el3], function(elements) {/* create the new object */});
// Performs a fuzzy lookup of the object with the specified elements.
// If found, returns the existing object
// If not found, calls the supplied callback function which should create a new object with
// the specified properties. This object is inserted in the lookup database.
lookupOrCreate(els, object)
{
let hash = "";
let multiplier = this.multiplier;
for (let el of els) {
let valueQuantized = Math.round(el * multiplier);
hash += valueQuantized + "/";
}
if (hash in this.lookuptable)
return this.lookuptable[hash];
else {
let hashparts = els.map(el =>
{
let q0 = Math.floor(el * multiplier);
let q1 = q0 + 1;
return ["" + q0 + "/", "" + q1 + "/"];
});
let numelements = els.length;
let numhashes = 1 << numelements;
for (let hashmask = 0; hashmask < numhashes; ++hashmask) {
let hashmaskShifted = hashmask;
hash = "";
hashparts.forEach(hashpart =>
{
hash += hashpart[hashmaskShifted & 1];
hashmaskShifted >>= 1;
});
this.lookuptable[hash] = object;
}
return object;
}
}
}
//并集path2dCsgs 差集 删除小面积结果
function CSGSubtract(geom, path2dCsgs)
{
let gemUnion = path2dCsgs[0];
for (let i = 1; i < path2dCsgs.length; i++)
gemUnion = booleans.union(gemUnion, path2dCsgs[i]);
let newGeom = booleans.subtract(geom, gemUnion);
//删除小面积(只留一个)
{
let fuzz = new FuzzyFactory;
let vmap = new Map;
for (let poly of newGeom.polygons) {
for (let v of poly.vertices) {
let key = fuzz.lookupOrCreate(v, v);
let arr = vmap.get(key);
if (!arr) {
arr = [];
vmap.set(key, arr);
}
arr.push(poly);
v["__key__"] = key;
}
}
let polys = newGeom.polygons.concat();
let polyGroups = [];
let calcs = new Set;
while (polys.length) {
let poly1 = polys.pop();
calcs.add(poly1);
let polyGroup = [poly1];
polyGroups.push(polyGroup);
for (let i = 0; i < polyGroup.length; i++) {
let poly = polyGroup[i];
for (let v of poly.vertices) {
let key = v["__key__"];
let arr = vmap.get(key);
for (let vpoly of arr) {
if (calcs.has(vpoly))
continue;
calcs.add(vpoly);
polyGroup.push(vpoly);
}
}
}
// arrayRemoveIf(polys, poly => !calcs.has(poly)); //加上这个无法提高性能
}
let areas = polyGroups.map(polys =>
{
let area = 0;
for (let poly of polys)
area += poly3.measureArea(poly);
return area;
});
let maxIndex = Max(areas, (t1, t2) => t2 > t1);
newGeom.polygons = polyGroups[maxIndex];
}
return newGeom;
}
addEventListener("message", e =>
{
const [path2dCsgs, geom] = e.data;
try {
const newGeom = CSGSubtract(geom, path2dCsgs);
postMessage({
status: 0,
geom: newGeom
});
}
catch (error) {
postMessage({
status: 1,
error
});
}
});
var CSGSubtract_worker = {};
module.exports = CSGSubtract_worker;
//# sourceMappingURL=CSGSubtract.worker.cjs.map

File diff suppressed because one or more lines are too long

146
CSGSubtract.worker.mjs Normal file
View File

@@ -0,0 +1,146 @@
import { measureArea } from '@jscad/modeling/src/geometries/poly3';
import { union, subtract } from '@jscad/modeling/src/operations/booleans';
/**
* @param compart true => t2 , false => t1
* @returns 索引
*/
function Max(arr, compart) {
let best = arr[0];
let bestIndex = 0;
for (let i = 1; i < arr.length; i++) {
let t1 = arr[i];
if (compart(best, t1)) {
best = t1;
bestIndex = i;
}
}
return bestIndex;
}
/** Epsilon used during determination of near zero distances.
* @default
*/
const EPS = 5e-2;
// //////////////////////////////
// tolerance: The maximum difference for each parameter allowed to be considered a match
class FuzzyFactory {
constructor(numdimensions = 3, tolerance = EPS) {
this.lookuptable = {};
this.multiplier = 1.0 / tolerance;
}
// let obj = f.lookupOrCreate([el1, el2, el3], function(elements) {/* create the new object */});
// Performs a fuzzy lookup of the object with the specified elements.
// If found, returns the existing object
// If not found, calls the supplied callback function which should create a new object with
// the specified properties. This object is inserted in the lookup database.
lookupOrCreate(els, object) {
let hash = "";
let multiplier = this.multiplier;
for (let el of els) {
let valueQuantized = Math.round(el * multiplier);
hash += valueQuantized + "/";
}
if (hash in this.lookuptable)
return this.lookuptable[hash];
else {
let hashparts = els.map(el => {
let q0 = Math.floor(el * multiplier);
let q1 = q0 + 1;
return ["" + q0 + "/", "" + q1 + "/"];
});
let numelements = els.length;
let numhashes = 1 << numelements;
for (let hashmask = 0; hashmask < numhashes; ++hashmask) {
let hashmaskShifted = hashmask;
hash = "";
hashparts.forEach(hashpart => {
hash += hashpart[hashmaskShifted & 1];
hashmaskShifted >>= 1;
});
this.lookuptable[hash] = object;
}
return object;
}
}
}
//并集path2dCsgs 差集 删除小面积结果
function CSGSubtract(geom, path2dCsgs) {
let gemUnion = path2dCsgs[0];
for (let i = 1; i < path2dCsgs.length; i++)
gemUnion = union(gemUnion, path2dCsgs[i]);
let newGeom = subtract(geom, gemUnion);
//删除小面积(只留一个)
{
let fuzz = new FuzzyFactory;
let vmap = new Map;
for (let poly of newGeom.polygons) {
for (let v of poly.vertices) {
let key = fuzz.lookupOrCreate(v, v);
let arr = vmap.get(key);
if (!arr) {
arr = [];
vmap.set(key, arr);
}
arr.push(poly);
v["__key__"] = key;
}
}
let polys = newGeom.polygons.concat();
let polyGroups = [];
let calcs = new Set;
while (polys.length) {
let poly1 = polys.pop();
calcs.add(poly1);
let polyGroup = [poly1];
polyGroups.push(polyGroup);
for (let i = 0; i < polyGroup.length; i++) {
let poly = polyGroup[i];
for (let v of poly.vertices) {
let key = v["__key__"];
let arr = vmap.get(key);
for (let vpoly of arr) {
if (calcs.has(vpoly))
continue;
calcs.add(vpoly);
polyGroup.push(vpoly);
}
}
}
// arrayRemoveIf(polys, poly => !calcs.has(poly)); //加上这个无法提高性能
}
let areas = polyGroups.map(polys => {
let area = 0;
for (let poly of polys)
area += measureArea(poly);
return area;
});
let maxIndex = Max(areas, (t1, t2) => t2 > t1);
newGeom.polygons = polyGroups[maxIndex];
}
return newGeom;
}
const ctx = self;
ctx.addEventListener("message", e => {
const [path2dCsgs, geom] = e.data;
try {
const newGeom = CSGSubtract(geom, path2dCsgs);
postMessage({
status: 0,
geom: newGeom
});
}
catch (error) {
postMessage({
status: 1,
error
});
}
});
var CSGSubtract_worker = {};
export { CSGSubtract_worker as default };
//# sourceMappingURL=CSGSubtract.worker.mjs.map

File diff suppressed because one or more lines are too long

41816
api.cjs.js

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

41802
api.esm.js

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -1,6 +1,6 @@
{
"name": "webcad_ue4_api",
"version": "0.3.11",
"version": "0.3.19",
"description": "",
"main": "api.esm.js",
"module": "api.esm.js",

View File

@@ -1 +1 @@
{"version":3,"file":"DxfEntityConvert.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/ACAD/DxfEntityConvert.ts"],"names":[],"mappings":"AAAA,OAAkB,EAA+C,IAAI,EAAkB,OAAO,EAAyG,MAAM,YAAY,CAAC;AAS1N,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAY9D,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,YAQzC;AAkBD,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAsRhF"}
{"version":3,"file":"DxfEntityConvert.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/ACAD/DxfEntityConvert.ts"],"names":[],"mappings":"AAAA,OAAkB,EAA+C,IAAI,EAAkB,OAAO,EAAyG,MAAM,YAAY,CAAC;AAU1N,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAY9D,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,YAQzC;AAkBD,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAoShF"}

View File

@@ -0,0 +1,4 @@
import { AngularDimLines, Arc as DxfArc, ArcDimension as DxfArcDimension, Circle as DxfCircle, DiameterDimension as DxfDiameterDimension, Ellipse as DxfEllipse, Line as DxfLine, LinearDimension as DxfLinearDimension, Text as DxfText, DxfWriter, Insert, LWPolyline, RadialDimension } from "dxf-write";
import { Entity } from "../../DatabaseServices/Entity/Entity";
export declare function Conver2DxfEntity(e: Entity, dxf: DxfWriter, blkName?: string): DxfLine | DxfArc | DxfCircle | LWPolyline | DxfEllipse | DxfLinearDimension | AngularDimLines | DxfDiameterDimension | RadialDimension | DxfArcDimension | Insert | DxfText;
//# sourceMappingURL=Entity2DxfEntity.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Entity2DxfEntity.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/ACAD/Entity2DxfEntity.ts"],"names":[],"mappings":"AAAA,OACA,EACI,eAAe,EAGf,GAAG,IAAI,MAAM,EAAE,YAAY,IAAI,eAAe,EAE9C,MAAM,IAAI,SAAS,EACnB,iBAAiB,IAAI,oBAAoB,EACzC,OAAO,IAAI,UAAU,EACrB,IAAI,IAAI,OAAO,EAAE,eAAe,IAAI,kBAAkB,EACtD,IAAI,IAAI,OAAO,EACf,SAAS,EACI,MAAM,EACnB,UAAU,EAGV,eAAe,EAElB,MAAM,WAAW,CAAC;AAkBnB,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAmB9D,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,+KAkR3E"}

View File

@@ -1 +1 @@
{"version":3,"file":"ActivityLayerBoard.d.ts","sourceRoot":"","sources":["../../../src/Add-on/ActivityLayerBoard.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AASnD,qBAAa,kBAAmB,YAAW,OAAO;IAExC,IAAI;CA0Eb"}
{"version":3,"file":"ActivityLayerBoard.d.ts","sourceRoot":"","sources":["../../../src/Add-on/ActivityLayerBoard.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AASnD,qBAAa,kBAAmB,YAAW,OAAO;IAExC,IAAI;CA+Eb"}

View File

@@ -1,7 +1,7 @@
import { Command } from "../Editor/CommandMachine";
import { PromptPointResult } from "../Editor/PromptResult";
import { Board } from "../DatabaseServices/Entity/Board";
import { Polyline } from "../DatabaseServices/Entity/Polyline";
import { Command } from "../Editor/CommandMachine";
import { PromptPointResult } from "../Editor/PromptResult";
declare abstract class PtOnBoard implements Command {
prompt: string;
exec(): Promise<void>;

View File

@@ -1 +1 @@
{"version":3,"file":"AddPtOnBoard.d.ts","sourceRoot":"","sources":["../../../src/Add-on/AddPtOnBoard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAgB,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAG/D,uBAAe,SAAU,YAAW,OAAO;IAEvC,MAAM,EAAE,MAAM,CAAC;IACT,IAAI;IAkCV,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,GAAG,QAAQ;CACpE;AAED,qBAAa,YAAa,SAAQ,SAAS;IAEvC,MAAM,SAAQ;IAEd,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB;CAqBhD;AAED,qBAAa,eAAgB,SAAQ,SAAS;IAE1C,MAAM,SAAQ;IAEd,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB;CAgChD"}
{"version":3,"file":"AddPtOnBoard.d.ts","sourceRoot":"","sources":["../../../src/Add-on/AddPtOnBoard.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAgB,MAAM,wBAAwB,CAAC;AAGzE,uBAAe,SAAU,YAAW,OAAO;IAEvC,MAAM,EAAE,MAAM,CAAC;IACT,IAAI;IAkCV,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,GAAG,QAAQ;CACpE;AAED,qBAAa,YAAa,SAAQ,SAAS;IAEvC,MAAM,SAAQ;IAEd,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB;CAqBhD;AAED,qBAAa,eAAgB,SAAQ,SAAS;IAE1C,MAAM,SAAQ;IAEd,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB;CAgChD"}

View File

@@ -0,0 +1,45 @@
import { ITreeNode } from "@blueprintjs/core";
import React from "react";
import { AlignLineGroupRecord } from "../../DatabaseServices/AlignLine/AlignLineGroupRecord";
import "./AlignLineGroupCSS.less";
import { AlignLineGroupModalStore } from "./AlignLineGroupStore";
interface AlignLineGroupModalState {
nodes: ITreeNode[];
rightNodes: ITreeNode[];
canAlertOpen1: boolean;
alertType: number;
}
declare class NodeIDGenerator {
protected _nextID: number;
get nextID(): number;
}
export declare class AlignLineGroupPanel extends React.Component<{
store: AlignLineGroupModalStore;
}, AlignLineGroupModalState> {
_RemoveFuncs: Function[];
_CanCreateGroup: import("mobx").IObservableValue<boolean>;
_CategoryMap: Map<string, number>;
_SearchTypeInputRef: React.RefObject<HTMLInputElement>;
_SearchGroupInputRef: React.RefObject<HTMLInputElement>;
_GetNodeID: NodeIDGenerator;
_NeedUpdate: boolean;
constructor(props: any);
componentDidMount(): void;
componentWillUnmount(): void;
ParseNodes: () => ITreeNode<{}>[];
RecoverSelectedNode: (nodes: ITreeNode[], leftNodes: ITreeNode[]) => void;
ForEachNode(nodes: ITreeNode[], callback: (node: ITreeNode) => void): void;
HandleNodeCollapse: (nodeData: ITreeNode, isCollapse: boolean) => void;
HandleNodeSelect: (node: ITreeNode, _nodePath: number[], e: React.MouseEvent<HTMLElement> | MouseEvent) => void;
ClearSelect: () => void;
ShowGroups: () => void;
AddAlignLineGroup: () => Promise<void>;
AddProcessGroup: (name: string) => void;
DelGroup: (alignLineGroup: AlignLineGroupRecord) => void;
DelAlertConfirm: () => void;
ShowSelectBoards: () => Promise<void>;
_Return: () => void;
render(): JSX.Element;
}
export {};
//# sourceMappingURL=AlignLineGroupPanel.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"AlignLineGroupPanel.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/AlignLine/AlignLineGroupPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA0B,SAAS,EAAgB,MAAM,mBAAmB,CAAC;AAGpF,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAgB7F,OAAO,0BAA0B,CAAC;AAClC,OAAO,EAAE,wBAAwB,EAAqB,MAAM,uBAAuB,CAAC;AAEpF,UAAU,wBAAwB;IAE9B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,cAAM,eAAe;IAEjB,SAAS,CAAC,OAAO,EAAE,MAAM,CAAK;IAC9B,IAAI,MAAM,WAGT;CACJ;AAED,qBACa,mBAAoB,SAAQ,KAAK,CAAC,SAAS,CAAC;IAAE,KAAK,EAAE,wBAAwB,CAAC;CAAE,EAAE,wBAAwB,CAAC;IAEpH,YAAY,EAAE,QAAQ,EAAE,CAAM;IAC9B,eAAe,2CAAyB;IACxC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IAC9C,mBAAmB,oCAAuC;IAC1D,oBAAoB,oCAAuC;IAC3D,UAAU,EAAE,eAAe,CAAyB;IACpD,WAAW,UAAS;gBAER,KAAK,KAAA;IAYjB,iBAAiB;IAkBjB,oBAAoB;IAUpB,UAAU,wBAyHR;IAGF,mBAAmB,UAAW,SAAS,EAAE,aAAa,SAAS,EAAE,UAsB/D;IAGF,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI;IAcnE,kBAAkB,aAAc,SAAS,cAAc,OAAO,UAY5D;IAGF,gBAAgB,SAAU,SAAS,aAAa,MAAM,EAAE,KAAK,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,UAAU,UA8DrG;IAGF,WAAW,aAKT;IAGF,UAAU,aAqER;IAEF,iBAAiB,sBAsMf;IAGF,eAAe,SAAU,MAAM,UA2B7B;IAIF,QAAQ,mBAAoB,oBAAoB,UAS9C;IAGF,eAAe,aAmEb;IAEF,gBAAgB,sBAqCd;IAEF,OAAO,aAIL;IAEF,MAAM;CA6FT"}

View File

@@ -0,0 +1,39 @@
import { Singleton } from "../../Common/Singleton";
import { AlignLineGroupRecord } from "../../DatabaseServices/AlignLine/AlignLineGroupRecord";
import { CADObject } from "../../DatabaseServices/CADObject";
import { Board } from "../../DatabaseServices/Entity/Board";
import { Entity } from "../../DatabaseServices/Entity/Entity";
import { IConfigOption } from "../../UI/Components/Board/UserConfigComponent";
import { IConfigStore } from "../../UI/Store/BoardStore";
export interface AlignLineNodeData {
self: CADObject;
parent: AlignLineGroupRecord;
}
interface TemplatePgData {
nodeName: string;
brarr: Board[];
}
export interface AlignLineGroupOption {
alignLineGroupCategory: string[];
alignLineGroupSpacing: number;
}
export declare class AlignLineGroupModalStore extends Singleton implements IConfigStore {
configName: string;
configsNames: string[];
m_Option: AlignLineGroupOption;
flag: number;
checkEnts: Entity[];
selectedLeftNode: string;
selectedRightNodeSet: Set<string>;
selectedGroupSet: Set<AlignLineGroupRecord>;
selectedObjectSet: Set<AlignLineNodeData>;
selectedTempPgs: TemplatePgData[];
tempPgs: TemplatePgData[];
expandedNodesId: any[];
InitOption: () => void;
UpdateOption: (config: IConfigOption<AlignLineGroupOption>) => void;
SaveConfig: () => IConfigOption<AlignLineGroupOption>;
ResetData: () => void;
}
export {};
//# sourceMappingURL=AlignLineGroupStore.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"AlignLineGroupStore.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/AlignLine/AlignLineGroupStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uDAAuD,CAAC;AAC7F,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,WAAW,iBAAiB;IAE9B,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,oBAAoB,CAAC;CAChC;AAED,UAAU,cAAc;IAEpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,KAAK,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IAEjC,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,qBAAqB,EAAE,MAAM,CAAC;CAEjC;AAOD,qBAAa,wBAAyB,SAAQ,SAAU,YAAW,YAAY;IAE3E,UAAU,EAAE,MAAM,CAAQ;IAC1B,YAAY,EAAE,MAAM,EAAE,CAAC;IACX,QAAQ,EAAE,oBAAoB,CAAkC;IAC5E,IAAI,EAAE,MAAM,CAAK;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB,gBAAgB,EAAE,MAAM,CAAM;IAC9B,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAE9C,gBAAgB,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAa;IAExD,iBAAiB,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAa;IACtD,eAAe,EAAE,cAAc,EAAE,CAAM;IACvC,OAAO,EAAE,cAAc,EAAE,CAAM;IAC/B,eAAe,QAAM;IAErB,UAAU,aAGR;IAEF,YAAY,WAAY,aAAa,CAAC,oBAAoB,CAAC,UAGzD;IAEF,UAAU,4CAKR;IAEF,SAAS,aAUP;CACL"}

View File

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

View File

@@ -0,0 +1 @@
{"version":3,"file":"Command_AlignLineGroup.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/AlignLine/Command_AlignLineGroup.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAQtD,qBAAa,sBAAuB,YAAW,OAAO;IAElD,SAAS,UAAQ;IACX,IAAI;CAab"}

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;IA8FrB,qBAAqB;IACrB,iBAAiB,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC;IAsMhE,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,24 @@
import { Board, IModeling } from "../../DatabaseServices/Entity/Board";
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 angle 角度
* @param dir 圆弧板见光面 见光面正面走刀颜色黄色,背面颜色红色
* @param [onlyVert=false] 仅解析交点位置 (默认解析所有的槽)
* @returns 返回需要增加的槽的数据
*/
export declare function ParseBoardArcFeed(br: Board, 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;AAMvE,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;;;;;;;KAOK;AACL,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,QAAQ,UAAQ,GAAG,SAAS,EAAE,CAyR5J"}

View File

@@ -0,0 +1,15 @@
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[][];
defaultArcGroovePars: 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;AAG1B,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,oBAAoB,aASlB;IAEF,SAAS,EAAE,qBAAqB,CAAC;IAEjC,iBAAiB,IAAI,IAAI;IAKzB,MAAM;CA6GT"}

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":"AAGA,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;IAmB7D,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":"AAMA,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;CAgBb;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"}

View File

@@ -1,6 +1,6 @@
import { Singleton } from '../Common/Singleton';
import { Command } from '../Editor/CommandMachine';
import { IBaseOption, IUiOption } from '../UI/Store/BoardInterface';
import { IBaseOption, IUiOption } from "../UI/Store/OptionInterface/IOptionInterface";
export declare enum ArrayType {
Rectangle = "R",
Circle = "C"

View File

@@ -1 +1 @@
{"version":3,"file":"Array.d.ts","sourceRoot":"","sources":["../../../src/Add-on/Array.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAKhD,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAQnD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEpE,oBAAY,SAAS;IAEjB,SAAS,MAAM;IACf,MAAM,MAAM;CACf;AAED,oBAAY,YAAY;IAEpB,aAAa,IAAI;IACjB,eAAe,IAAI;IACnB,mBAAmB,IAAI;CAC1B;AACD,oBAAY,IAAI;IAEZ,WAAW,IAAI;IACf,SAAS,IAAI;IACb,SAAS,IAAI;IACb,eAAe,IAAI;IACnB,UAAU,IAAI;IACd,SAAS,IAAI;IACb,YAAY,IAAI;CACnB;AACD,MAAM,WAAW,aAAc,SAAQ,WAAW;IAE9C,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACtB;AACD,qBAAa,UAAW,SAAQ,SAAS;IAErC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;IACnC,QAAQ,EAAE,aAAa,CAgBjC;IACF,IAAI,QAAQ,6BAKX;IACD,cAAc;IAYd,MAAM;IAIN,IAAI;IAIJ,OAAO,CAAC,KAAK,EAAE,MAAM;CAKxB;AACD,qBAAa,aAAc,YAAW,OAAO;IAEzC,UAAU,EAAE,UAAU,CAA4B;IAE5C,IAAI;CA4Pb"}
{"version":3,"file":"Array.d.ts","sourceRoot":"","sources":["../../../src/Add-on/Array.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIhD,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAQnD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAC;AAGtF,oBAAY,SAAS;IAEjB,SAAS,MAAM;IACf,MAAM,MAAM;CACf;AAED,oBAAY,YAAY;IAEpB,aAAa,IAAI;IACjB,eAAe,IAAI;IACnB,mBAAmB,IAAI;CAC1B;AACD,oBAAY,IAAI;IAEZ,WAAW,IAAI;IACf,SAAS,IAAI;IACb,SAAS,IAAI;IACb,eAAe,IAAI;IACnB,UAAU,IAAI;IACd,SAAS,IAAI;IACb,YAAY,IAAI;CACnB;AACD,MAAM,WAAW,aAAc,SAAQ,WAAW;IAE9C,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACtB;AACD,qBAAa,UAAW,SAAQ,SAAS;IAErC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;IACnC,QAAQ,EAAE,aAAa,CAgBjC;IACF,IAAI,QAAQ,6BAKX;IACD,cAAc;IAYd,MAAM;IAIN,IAAI;IAIJ,OAAO,CAAC,KAAK,EAAE,MAAM;CAKxB;AACD,qBAAa,aAAc,YAAW,OAAO;IAEzC,UAAU,EAAE,UAAU,CAA4B;IAE5C,IAAI;CA4Pb"}

View File

@@ -1,25 +1,21 @@
import { Singleton } from "../Common/Singleton";
import { Command } from "../Editor/CommandMachine";
import { IConfigOption } from "../UI/Components/Board/UserConfigComponent";
import { IConfigStore } from "../UI/Store/BoardStore";
import { IAutoHoleFaceOption, IUiOption } from "../UI/Store/OptionInterface/IOptionInterface";
export declare class AutoHoleFaceSetting implements Command {
store: AutoHoleFaceSettingStore;
exec(): Promise<void>;
}
declare class AutoHoleFaceSettingStore implements IConfigStore {
export declare class AutoHoleFaceSettingStore extends Singleton implements IConfigStore {
configName: string;
configsNames: string[];
config: {
option: {
hight: number;
};
};
option: IAutoHoleFaceOption;
uiOption: IUiOption<IAutoHoleFaceOption>;
InitOption(): void;
SaveConfig(): {
option: {
hight: number;
};
};
get UiOption(): IUiOption<IAutoHoleFaceOption>;
SaveConfig(): IConfigOption<IAutoHoleFaceOption>;
UpdateOption(conf: IConfigOption<any>): void;
HasInvailValue(): string;
}
export {};
export declare const autoHoleFaceSettingStore: AutoHoleFaceSettingStore;
//# sourceMappingURL=AutoHoleFaceSetting.d.ts.map

View File

@@ -1 +1 @@
{"version":3,"file":"AutoHoleFaceSetting.d.ts","sourceRoot":"","sources":["../../../src/Add-on/AutoHoleFaceSetting.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAGnD,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGtD,qBAAa,mBAAoB,YAAW,OAAO;IAE/C,KAAK,EAAE,wBAAwB,CAAC;IAC1B,IAAI;CAmDb;AAGD,cAAM,wBAAyB,YAAW,YAAY;IAElD,UAAU,SAAQ;IAClB,YAAY,WAAU;IACtB,MAAM;;;;MAIJ;IACF,UAAU;IAQV,UAAU;;;;;IAIV,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;CAIxC"}
{"version":3,"file":"AutoHoleFaceSetting.d.ts","sourceRoot":"","sources":["../../../src/Add-on/AutoHoleFaceSetting.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIhD,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAG3E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAC;AAG9F,qBAAa,mBAAoB,YAAW,OAAO;IAEzC,IAAI;CAgDb;AAGD,qBAAa,wBAAyB,SAAQ,SAAU,YAAW,YAAY;IAE/D,UAAU,SAAQ;IAClB,YAAY,WAAU;IACtB,MAAM,EAAE,mBAAmB,CAKrC;IACU,QAAQ,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAErD,UAAU;IASV,IAAI,QAAQ,mCAKX;IACD,UAAU;IAMV,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;IAmBrC,cAAc;CAOjB;AAED,eAAO,MAAM,wBAAwB,EAA6C,wBAAwB,CAAC"}

View File

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

View File

@@ -1 +1 @@
{"version":3,"file":"BackgroundSwitching.d.ts","sourceRoot":"","sources":["../../../src/Add-on/BackgroundSwitching.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,qBAAa,mBAAoB,YAAW,OAAO;IAE/C,YAAY,EAAE,IAAI,CAAC;IACb,IAAI;CASb"}
{"version":3,"file":"BackgroundSwitching.d.ts","sourceRoot":"","sources":["../../../src/Add-on/BackgroundSwitching.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,qBAAa,mBAAoB,YAAW,OAAO;IAE/C,YAAY,UAAQ;IACd,IAAI;CASb"}

View File

@@ -1 +1 @@
{"version":3,"file":"BatchModifySealOrDrill.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/Batch/BatchModifySealOrDrill.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAgCtD,qBAAa,WAAY,YAAW,OAAO;IAEjC,IAAI;CAoCb;AAGD,qBAAa,6BAA8B,YAAW,OAAO;IAEnD,IAAI;CAoBb;AAGD,qBAAa,6BAA8B,YAAW,OAAO;IAEnD,IAAI;CAYb"}
{"version":3,"file":"BatchModifySealOrDrill.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/Batch/BatchModifySealOrDrill.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAgCtD,qBAAa,WAAY,YAAW,OAAO;IAEjC,IAAI;CAuFb;AAGD,qBAAa,6BAA8B,YAAW,OAAO;IAEnD,IAAI;CAoBb;AAGD,qBAAa,6BAA8B,YAAW,OAAO;IAEnD,IAAI;CAYb"}

View File

@@ -1 +1 @@
{"version":3,"file":"BatchModifyPanel.d.ts","sourceRoot":"","sources":["../../../src/Add-on/BatchModifyPanel.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAOnD,qBAAa,gBAAiB,YAAW,OAAO;IAEtC,IAAI;CAwFb"}
{"version":3,"file":"BatchModifyPanel.d.ts","sourceRoot":"","sources":["../../../src/Add-on/BatchModifyPanel.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAOnD,qBAAa,gBAAiB,YAAW,OAAO;IAEtC,IAAI;CAwFb"}

View File

@@ -1 +1 @@
{"version":3,"file":"BoardBatchCurtail.d.ts","sourceRoot":"","sources":["../../../src/Add-on/BoardBatchCurtail.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AA8BnD,qBAAa,iBAAkB,YAAW,OAAO;IAEvC,IAAI;CAkNb"}
{"version":3,"file":"BoardBatchCurtail.d.ts","sourceRoot":"","sources":["../../../src/Add-on/BoardBatchCurtail.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AA8BnD,qBAAa,iBAAkB,YAAW,OAAO;IAEvC,IAAI;CA2Qb"}

View File

@@ -1,8 +1,3 @@
import { Board } from "../../DatabaseServices/Entity/Board";
export declare class AutoCuttingReactor {
constructor();
StartReactor(ents: Board[]): Promise<void>;
}
/**
* 对绘制出来的板件自动切割其周围的板件
*/

View File

@@ -1 +1 @@
{"version":3,"file":"AutoCuttingReactor.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/AutoCuttingReactor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAK5D,qBAAa,kBAAkB;;IAwBrB,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE;CAWnC;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,WAAW,EAAE,OAAO,iBAUrD"}
{"version":3,"file":"AutoCuttingReactor.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/AutoCuttingReactor.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,wBAAsB,WAAW,CAAC,WAAW,EAAE,OAAO,iBAkBrD"}

View File

@@ -0,0 +1,66 @@
import { ExtrudeSolid } from "../../DatabaseServices/Entity/Extrude";
/**
* @Finish 目前已实现
* 1. 圆弧板垂直切普通板
* 2. 普通板穿透切圆弧板
* @TODO 当前问题记录
* 1. 普通板切圆弧板,凹槽的长度与厚度如何确定?(目前写死厚度切穿, 长度切断)
* 2. 圆弧板切普通版, 若二者不垂直,存在夹角,怎么办?(目前不考虑)
* 3. 圆弧板切圆弧板,如何处理?(目前不考虑)
* 4. 平行情况,如何处理?(目前不考虑)
* @Log 2024/06/20
* 处理问题1采用CSG的包围盒与路径求交方式来确定凹槽的长度
* @Log 2024/06/21
* 发现问题并处理: 若圆弧板为异形板,垂直切普通板,生成的凹槽还是整段路径
* 发现问题并处理: 由于精度问题,导致切割后在切割,依旧有交集,故这里加了体积过滤
* @Log 2024/06/25
* 优化: 优化体积过滤改用CSG真实的体积计算
* 重构: 重构了代码结构修复了普通板切圆弧板的bug(采用点集投影,而非之前的包围盒)
* @Log 2024/06/26
* 处理问题2采用对CSG上下面进行投影然后转为面域做并集从而生成凹槽
* @Log 2024/06/27
* 优化问题2面域的布尔运算很慢容易造成肉眼可见的卡顿(约1-2秒)现在改用project
* @Log 2024/07/02
* 发现问题并处理: project存在精度问题导致凹槽的长度不准确故做了修正(若快切断则为切断)
* @Log 2024/07/10
* 优化: 当普通版斜切圆弧板时,采用逆映射生成凹槽轮廓,而非原有的矩形轮廓
* @Log 2024/07/11
* 优化: 改用C2R生成凹槽的轮廓线而非之前的project因为它不准
* 处理问题3通过逆映射实现圆弧板切圆弧板
*/
/** 针对圆弧板的板件切割*/
export declare class BoardCuttingForSweep {
private meat;
private knife;
/** 生成圆弧板的切割器*/
constructor(meat: ExtrudeSolid, knife: ExtrudeSolid);
/** 生成凹槽 */
ConverToLocalGroove(): ExtrudeSolid[];
/** 圆弧板切普通板 */
private ArcCutBoard;
/** 普通板切圆弧板 */
private BoardCutArc;
/** 圆弧板切圆弧板 */
private ArcCutArc;
/** 生成基础的凹槽 */
private CreateBaseGroove;
/** 更新凹槽厚度 */
private UpdateGrooveThickness;
/** 计算点集到多段线的距离 */
private GetDistToPl;
/** 对CSG进行逆映射(根据放样路径) */
private InverseCSG;
/** 对CSG进行投影返回点集 */
private ProjectCSGToPts;
/** 对CSG进行投影返回多段线 */
private CSGToPolyline;
/** 获取CSG在路径上的param范围 */
private GetParamRange;
/** 获取pA-pB之间的曲线 */
private Get_Pl_InAtoB;
/** 修正轮廓线(避免造型的布尔运算错误) */
private AdjustPolyline;
/** 调整点到线的最近点 */
private AdjustPtClosePl;
}
//# sourceMappingURL=BoardCuttingForSweep.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"BoardCuttingForSweep.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/BoardCuttingForSweep.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AASrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,gBAAgB;AAChB,qBAAa,oBAAoB;IAGjB,OAAO,CAAC,IAAI;IAAgB,OAAO,CAAC,KAAK;IADrD,eAAe;gBACK,IAAI,EAAE,YAAY,EAAU,KAAK,EAAE,YAAY;IAMnE,WAAW;IACX,mBAAmB;IAmBnB,cAAc;IACd,OAAO,CAAC,WAAW;IAwGnB,cAAc;IACd,OAAO,CAAC,WAAW;IA0GnB,cAAc;IACd,OAAO,CAAC,SAAS;IAiDjB,cAAc;IACd,OAAO,CAAC,gBAAgB,CAatB;IAEF,aAAa;IACb,OAAO,CAAC,qBAAqB;IAkD7B,kBAAkB;IAClB,OAAO,CAAC,WAAW;IAWnB,wBAAwB;IACxB,OAAO,CAAC,UAAU;IAwBlB,oBAAoB;IACpB,OAAO,CAAC,eAAe;IAgCvB,qBAAqB;IACrB,OAAO,CAAC,aAAa;IAmBrB,wBAAwB;IACxB,OAAO,CAAC,aAAa;IAsBrB,mBAAmB;IACnB,OAAO,CAAC,aAAa;IAUrB,yBAAyB;IACzB,OAAO,CAAC,cAAc;IAkBtB,gBAAgB;IAChB,OAAO,CAAC,eAAe;CAO1B"}

View File

@@ -1 +1 @@
{"version":3,"file":"CuttingByFace.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/CuttingByFace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,MAAM,OAAO,CAAC;AAIzC,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAErF,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAOtD,qBAAa,aAAc,YAAW,OAAO;IAEnC,IAAI;cAkHM,kBAAkB;;;IAKlC,SAAS,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO;YAShD,cAAc;YAiBd,cAAc;CA4C/B;AAED,qBAAa,iBAAkB,SAAQ,aAAa;cAEhC,kBAAkB,IAAI,OAAO,CAAC;QAAE,YAAY,CAAC,EAAE,GAAG,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;KAAE,CAAC;CAiBnG"}
{"version":3,"file":"CuttingByFace.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/CuttingByFace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,OAAO,EAAE,MAAM,OAAO,CAAC;AAIzC,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAErF,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAOtD,qBAAa,aAAc,YAAW,OAAO;IAEnC,IAAI;cAkGM,kBAAkB;;;IAKlC,SAAS,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO;YAShD,cAAc;YAiBd,cAAc;CAgC/B;AAED,qBAAa,iBAAkB,SAAQ,aAAa;cAEhC,kBAAkB,IAAI,OAAO,CAAC;QAAE,YAAY,CAAC,EAAE,GAAG,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;KAAE,CAAC;CAgBnG"}

View File

@@ -1,5 +1,5 @@
import { ReactElement } from 'react';
import { IGrooveOption } from '../../UI/Store/BoardInterface';
import { IGrooveOption } from "../../UI/Store/OptionInterface/IOptionInterface";
interface Props {
option: IGrooveOption;
}

View File

@@ -1 +1 @@
{"version":3,"file":"CuttingPropsModal.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/CuttingPropsModal.tsx"],"names":[],"mappings":"AAEA,OAAc,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAI5C,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,UAAU,KAAK;IAEX,MAAM,EAAE,aAAa,CAAC;CACzB;AAOD,iBAAS,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,GAAG,YAAY,CA8C1D;;AAED,wBAA2C"}
{"version":3,"file":"CuttingPropsModal.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/CuttingPropsModal.tsx"],"names":[],"mappings":"AAEA,OAAc,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAI5C,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AAEhF,UAAU,KAAK;IAEX,MAAM,EAAE,aAAa,CAAC;CACzB;AAOD,iBAAS,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,GAAG,YAAY,CA8C1D;;AAED,wBAA2C"}

View File

@@ -1,3 +0,0 @@
import { ExtrudeSolid } from "../../DatabaseServices/Entity/Extrude";
export declare function CuttingBoard(orgBoard: ExtrudeSolid, knifBoards: ExtrudeSolid[]): ExtrudeSolid[];
//# sourceMappingURL=CuttingUtils.d.ts.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"CuttingUtils.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/CuttingUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAErE,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAK/F"}

View File

@@ -1,5 +1,14 @@
import { Board } from "../../DatabaseServices/Entity/Board";
import { HardwareCompositeEntity } from "../../DatabaseServices/Hardware/HardwareCompositeEntity";
export declare function CuttingBoardByBoard(meats: Board[], knifs: Board[], isRelevance?: boolean): void;
export declare function CuttingBoardByHardware(meats: Board[], hardwares: HardwareCompositeEntity[]): Promise<void>;
/**
* 五金切板
*
* @export
* @param {Board[]} meats 被切割的板
* @param {HardwareCompositeEntity[]} hardwares 五金当做刀
* @param {boolean} [relevanceCut=true] 默认是关联切割
* @return {*} {Promise<void>}
*/
export declare function CuttingBoardByHardware(meats: Board[], hardwares: HardwareCompositeEntity[], relevanceCut?: boolean): Promise<void>;
//# sourceMappingURL=CuttingUtils2.d.ts.map

View File

@@ -1 +1 @@
{"version":3,"file":"CuttingUtils2.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/CuttingUtils2.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAE5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAGlG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,WAAW,UAAO,QA0DrF;AAED,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuEhH"}
{"version":3,"file":"CuttingUtils2.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/CuttingUtils2.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAE5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAGlG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,WAAW,UAAO,QA0DrF;AAED;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,EAAE,YAAY,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAqFrI"}

View File

@@ -1 +1 @@
{"version":3,"file":"DeleteRelevance.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/DeleteRelevance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAKtD,qBAAa,eAAgB,YAAW,OAAO;IAErC,IAAI;CA8Cb"}
{"version":3,"file":"DeleteRelevance.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/DeleteRelevance.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAGtD,qBAAa,eAAgB,YAAW,OAAO;IAErC,IAAI;CA8Cb"}

View File

@@ -1 +1 @@
{"version":3,"file":"HardwareCuttingReactor.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/HardwareCuttingReactor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAGlG,qBAAa,sBAAsB;IAE/B,cAAc,UAAQ;;IA4BhB,YAAY,CAAC,SAAS,EAAE,uBAAuB,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC;CAU5E"}
{"version":3,"file":"HardwareCuttingReactor.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/HardwareCuttingReactor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAGlG,qBAAa,sBAAsB;IAG/B,cAAc,UAAQ;;IA+BhB,YAAY,CAAC,SAAS,EAAE,uBAAuB,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC;CAU5E"}

View File

@@ -1,10 +1,22 @@
import { Vector3 } from "three";
import { Board } from "../../DatabaseServices/Entity/Board";
import { ExtrudeContourCurve } from "../../DatabaseServices/Entity/Extrude";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
import { Command } from "../../Editor/CommandMachine";
export declare class LinearCutting implements Command {
exec(): Promise<void>;
protected SplitBoard(br: Board, cus: ExtrudeContourCurve[]): void;
/** 针对圆弧板的分裂处理 */
private ProcessForSweepInSplitBoard;
/** 根据轮廓曲线分裂板件
* @param br 被切割的板件
* @param cus 切割后的轮廓曲线
* @param SweepPaths 切割后的放样路径(针对圆弧板)
* @param contourBiases 用于修正轮廓位置的偏移值(针对圆弧板)
*/
protected SplitBoard(br: Board, cus: ExtrudeContourCurve[], SweepPaths: Polyline[], contourBiases: {
x: number;
y: number;
}[]): void;
protected GetCuttingPoints(): Promise<Vector3[] | undefined>;
}
export declare class RectLinearCutting extends LinearCutting {

View File

@@ -1 +1 @@
{"version":3,"file":"LinearCutting.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/LinearCutting.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,OAAO,EAAE,MAAM,OAAO,CAAC;AAIhD,OAAO,EAAE,KAAK,EAAe,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAStD,qBAAa,aAAc,YAAW,OAAO;IAEnC,IAAI;IA+LV,SAAS,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE;cA2B1C,gBAAgB,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;CAwBrE;AAED,qBAAa,iBAAkB,SAAQ,aAAa;cAEhC,gBAAgB,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;CAgBrE"}
{"version":3,"file":"LinearCutting.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/LinearCutting.ts"],"names":[],"mappings":"AACA,OAAO,EAA8B,OAAO,EAAE,MAAM,OAAO,CAAC;AAK5D,OAAO,EAAE,KAAK,EAAe,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAoB,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAUtD,qBAAa,aAAc,YAAW,OAAO;IAEnC,IAAI;IA2JV,iBAAiB;IACjB,OAAO,CAAC,2BAA2B;IAmDnC;;;;;OAKG;IACH,SAAS,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,aAAa,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;KAAE,EAAE;cAkD9G,gBAAgB,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;CAwBrE;AAED,qBAAa,iBAAkB,SAAQ,aAAa;cAEhC,gBAAgB,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;CAerE"}

View File

@@ -0,0 +1,145 @@
import { Matrix4, Vector2, Vector3 } from "three";
import { Board } from "../../DatabaseServices/Entity/Board";
import { Line } from "../../DatabaseServices/Entity/Line";
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
/** 针对圆弧板的线性切割 */
export declare class LinearCuttingForSweep {
br: Board;
splitPl: Polyline;
/** 点集生成二维刀 */
static CreateSplitPl(pts: Vector3[]): Polyline;
/** 生成圆弧板的切割器*/
constructor(br: Board, splitPl: Polyline);
/**
* 进行切割
* @param {Polyline[]} clipPls 用于切割的刀
* @returns {[Polyline[], Polyline[], {x:number; y:number}[]]} [切割后轮廓, 切割后路径, 切割后轮廓的偏移值]
* @第一步 判断当前切割的视图类型
* @第二步 根据视图类型判断切割的是路径还是面
* @第三步 把被切割对象(路径与板包围盒)平移到对应视图的平面
* @第四步 旋转被切割对象到XOY平面
* @第五步 在XOY平面下进行切割
*/
Split(ucs: Matrix4, clipPls?: Polyline[]): [Polyline[], Polyline[], {
x: number;
y: number;
}[]];
/**
* 切割面
* @param {Polyline} sweepPathInWCS 放样路径
* @param {Line[]} brBoxLines 板包围盒
* @param {Polyline} pathBoxPl 路径包围盒
* @第一步 计算刀与板包围盒的交点,以及在盒内的顶点,记住采样点
* @第二步 记录采样点在刀上的位置,并移动到路径所在的平面
* @第三步 根据采样点生成垂直于XOY平面的直线
* @第四步 计算这些直线与路径的交点
* @第五步 将这些交点映射到展开后的路径上
* @第六步 根据记录的位置排序这些点,并生成新的刀
*/
SplitInPlane(sweepPathInWCS: Polyline, brBoxLines: Line[], pathBoxPl: Polyline): [Polyline[], Polyline[], {
x: number;
y: number;
}[]];
/** 判断视图类型 */
private GetViewStr;
/** 判断切割的是路径还是面 */
private IsPathOrPlane;
/** 获取调整角度(用于处理放样角度带来的影响) */
private GetAdjustAngle;
/** 统一板包围盒与路径包围盒一致 */
private UnifyBrBoxAndPathBox;
/** 平移路径到对应视图平面 */
private MovePathToView;
/** 平移板包围盒到对应视图平面 */
private MoveBrBoxToView;
/** 旋转到俯视图下(即XOY平面) */
private RotateToXOY;
/** 修正放样角度带来的影响(比如求不到交点) */
private AdjustForSweepAngle;
/** 对路径进行细化 */
private Tessellate;
/** 规范超出的部分 */
private AdjustOverBox;
/** 获取板件坐标系下的放样路径 */
private GetSweepPathInOCS;
/** 获取板件坐标系下的放样路径并与板件的边对齐 */
private GetSweepPathInOCSWithBr;
/** 求得的板包围盒的交点与盒内的顶点 */
private GetPtsInbrBox;
/** 切割路径 */
SplitInPath(sweepPathInWCS: Polyline): [Polyline[], Polyline[], {
x: number;
y: number;
}[]];
/** 获取原始位置与切割位置的变换信息 */
private GetPositionData;
/** 旋转平移到切割位置 */
private ToSplitPosition;
/** 平移旋转到原始位置 */
private ReSplitPosition;
/** 用刀去切割板(包括轮廓与路径) */
private SplitBrByKnifes;
/**
* @todo 这个是旧方案,先临时用一用,后面再重构
* 针对圆弧板进行切割
* @param br 被切割的板
* @param clipPls 用于切割的线
* @问 圆弧板的切割与普通板有何区别?
* @答 切割位置应变长(因为板弯曲了,而板轮廓没有),且放样路径也应被切割
* @着手点 [1]修正板轮廓的切割位置 [2]获取正确的放样路径集
* @修正位置 通过param进行逆映射从而得到正确的切割位置
* @获取路径 首先要明确一件事,路径需要改变,是因为切割后的板的基点(aabb中X最小的点)可能发生变化
* 所以,我们需要根据新的基点生成新的路径,新基点沿路径方向与旧基点的差值(恒正)作为生成新路径的切割线(垂直X轴)
* 若切割线与路径平行,则新旧基点一致,无需修改
*/
private SplitBySweep;
/** 获得新的刀(多段线) */
private GetSplitPls;
/** 获取被切割后的放样路径集 */
private GetSweepPaths;
}
/** 视图类型 */
export declare enum ViewType {
Normal = "\u6B63\u89C6\u56FE",
Front = "\u524D\u89C6\u56FE",
Back = "\u540E\u89C6\u56FE",
Left = "\u5DE6\u89C6\u56FE",
Right = "\u53F3\u89C6\u56FE",
Down = "\u4FEF\u89C6\u56FE",
Up = "\u4EF0\u89C6\u56FE",
Unknown = "\u672A\u77E5\u89C6\u56FE"
}
/** 视图管理器 */
export declare class ViewManager {
/** 映射: 视图->矩阵 */
static viewMatrixMap: Map<ViewType, Matrix4>;
/** 映射: 视图->向量(相机角度) */
static viewVectorMap: Map<ViewType, Vector3>;
/** 映射: 视图->法向量(实体朝向) */
static viewNormalMap: Map<ViewType, Vector3>;
/** 判断矩阵位于哪个视图 */
static MatrixIsView(m: Matrix4): ViewType;
/** 判断向量朝向哪个视图 */
static VectorIsView(v: Vector3): ViewType;
}
/** 线段管理器 */
export declare class CurveManager {
/** X轴的平行线 */
static CreateXLine: (p: Vector3) => Line;
/** Y轴的平行线 */
static CreateYLine: (p: Vector3) => Line;
/** Z轴的平行线 */
static CreateZLine: (p: Vector3) => Line;
/** 通过点集生成多段线 */
static CreatePolyline: (ps: Vector2[]) => Polyline;
static CreateExpandPl(pl: Polyline): Polyline;
/** 绘制矩阵所表示的坐标系 */
static CreateAxis(m: Matrix4): Line[];
/** 点集转线段簇 */
static PtsToLines(pts: Vector3[]): Line[];
/** 线段簇转多段线 */
static LinesToPl(lines: Line[]): Polyline;
/** 获取pA-pB之间的曲线 */
static Get_Pl_InPtAtoPtB(pl: Polyline, pA: Vector3, pB: Vector3): Polyline;
}
//# sourceMappingURL=LinearCuttingForSweep.d.ts.map

View File

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

View File

@@ -1 +1 @@
{"version":3,"file":"NonAssociativeCutting.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/NonAssociativeCutting.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAqBtD,qBAAa,qBAAsB,YAAW,OAAO;IAE3C,IAAI;CA4Hb"}
{"version":3,"file":"NonAssociativeCutting.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/NonAssociativeCutting.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAetD,qBAAa,qBAAsB,YAAW,OAAO;IAE3C,IAAI;CA4Hb"}

View File

@@ -1 +1 @@
{"version":3,"file":"ReferenceCutting.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/ReferenceCutting.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAStD,qBAAa,gBAAiB,YAAW,OAAO;IAEtC,IAAI;CA2Jb"}
{"version":3,"file":"ReferenceCutting.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/ReferenceCutting.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAQtD,qBAAa,gBAAiB,YAAW,OAAO;IAEtC,IAAI;CAgKb"}

View File

@@ -1,6 +1,7 @@
import * as React from 'react';
import { Singleton } from "../../Common/Singleton";
import { BoardType, IBaseOption } from "../../UI/Store/BoardInterface";
import { BoardType } from "../../DatabaseServices/Entity/BoardInterface";
import { IBaseOption } from "../../UI/Store/OptionInterface/IOptionInterface";
export declare enum CuttingOffset {
Front = "front",
Middle = "middle",
@@ -15,7 +16,7 @@ export interface ReferenceCuttingOptioins extends IBaseOption {
export declare class ReferenceCuttingStore extends Singleton {
protected m_UiOption: any;
m_Option: ReferenceCuttingOptioins;
get UIOption(): import("../../UI/Store/BoardInterface").IUiOption<ReferenceCuttingOptioins>;
get UIOption(): import("../../UI/Store/OptionInterface/IOptionInterface").IUiOption<ReferenceCuttingOptioins>;
Cancel(): void;
OnOk(): void;
_Return(state: number): void;

View File

@@ -1 +1 @@
{"version":3,"file":"ReferenceCuttingModal.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/ReferenceCuttingModal.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAInD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAEvE,oBAAY,aAAa;IAErB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,IAAI,SAAS;CAChB;AAMD,MAAM,WAAW,wBAAyB,SAAQ,WAAW;IAEzD,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,aAAa,CAAC;CACrC;AACD,qBAAa,qBAAsB,SAAQ,SAAS;IAEhD,SAAS,CAAC,UAAU,MAAC;IACT,QAAQ,EAAE,wBAAwB,CAK5C;IACF,IAAI,QAAQ,gFAGX;IACD,MAAM;IAIN,IAAI;IAIJ,OAAO,CAAC,KAAK,EAAE,MAAM;IAKrB,cAAc;CAIjB;AAED,qBAEa,qBAAsB,SAAQ,KAAK,CAAC,SAAS,CAAC;IAAE,KAAK,EAAE,qBAAqB,CAAC;CAAE,EAAE,EAAE,CAAC;IAC7F,OAAO,CAAC,QAAQ,CAAC;IACjB,OAAO,CAAC,qBAAqB,CAc3B;IACF,OAAO,CAAC,gBAAgB,CAWtB;IACF,OAAO,CAAC,KAAK,CAAW;IACxB,aAAa;IAqBb,yBAAyB;IAKzB,oBAAoB;IAKpB,MAAM;CAmET"}
{"version":3,"file":"ReferenceCuttingModal.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/ReferenceCuttingModal.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAC;AAIzE,OAAO,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAE9E,oBAAY,aAAa;IAErB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,IAAI,SAAS;CAChB;AAMD,MAAM,WAAW,wBAAyB,SAAQ,WAAW;IAEzD,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,aAAa,CAAC;CACrC;AACD,qBAAa,qBAAsB,SAAQ,SAAS;IAEhD,SAAS,CAAC,UAAU,MAAC;IACT,QAAQ,EAAE,wBAAwB,CAK5C;IACF,IAAI,QAAQ,kGAGX;IACD,MAAM;IAIN,IAAI;IAIJ,OAAO,CAAC,KAAK,EAAE,MAAM;IAKrB,cAAc;CAIjB;AAED,qBAEa,qBAAsB,SAAQ,KAAK,CAAC,SAAS,CAAC;IAAE,KAAK,EAAE,qBAAqB,CAAC;CAAE,EAAE,EAAE,CAAC;IAC7F,OAAO,CAAC,QAAQ,CAAC;IACjB,OAAO,CAAC,qBAAqB,CAc3B;IACF,OAAO,CAAC,gBAAgB,CAWtB;IACF,OAAO,CAAC,KAAK,CAAW;IACxB,aAAa;IAqBb,yBAAyB;IAKzB,oBAAoB;IAKpB,MAAM;CAmET"}

View File

@@ -0,0 +1,13 @@
import { Board } from "../../DatabaseServices/Entity/Board";
export declare class SplitBoardSideModelUtil {
private OrgBoardOCS;
private CacheSideModel;
private OldSealCurves;
constructor(br: Board);
Init(br: Board, isSpecialShape?: boolean): void;
CheckSideModel(): boolean;
SetBoardSideModel(br: Board): void;
SpiltSideModelOfBrContour(br: Board): void;
SpiltSideModelOfBrThickness(br: Board, thickness: number): void;
}
//# sourceMappingURL=SplitBoardSideModel.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"SplitBoardSideModel.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/SplitBoardSideModel.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAa5D,qBAAa,uBAAuB;IAGhC,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,cAAc,CAA0C;IAChE,OAAO,CAAC,aAAa,CAAe;gBAExB,EAAE,EAAE,KAAK;IAKrB,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,cAAc,UAAQ;IA2BtC,cAAc,IAAI,OAAO;IASzB,iBAAiB,CAAC,EAAE,EAAE,KAAK;IAW3B,yBAAyB,CAAC,EAAE,EAAE,KAAK;IA4GnC,2BAA2B,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM;CAmD3D"}

View File

@@ -0,0 +1,10 @@
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
/**
* 线性切割多线段
* @param {Polyline} meatPl 被切割的曲线
* @param {Polyline[]} knifePls 刀曲线
* @param {boolean} [isSweep = false] 是否为圆弧板(被切割的曲线是否为圆弧板的轮廓)
* @return {Polyline[]} 切割后的多线段
*/
export declare function SplitPolyline(meatPl: Polyline, knifePls: Polyline[], isSweep?: boolean): Polyline[];
//# sourceMappingURL=SplitPolyline.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"SplitPolyline.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardCutting/SplitPolyline.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAKlE;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,OAAO,UAAQ,GAAG,QAAQ,EAAE,CA+DjG"}

View File

@@ -1 +1 @@
{"version":3,"file":"ChangeBoardColorByPBFace.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/ChangeBoardColorByPBFace.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAKtD,qBAAa,gCAAiC,YAAW,OAAO;IAEtD,IAAI;CAqBb"}
{"version":3,"file":"ChangeBoardColorByPBFace.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/ChangeBoardColorByPBFace.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAKtD,qBAAa,gCAAiC,YAAW,OAAO;IAEtD,IAAI;CAwBb"}

View File

@@ -1 +1 @@
{"version":3,"file":"SelectThinBehindBoard.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/SelectThinBehindBoard.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAGtD,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,qBAAa,qBAAsB,YAAW,OAAO;IAEjD,KAAK,EAAE,0BAA0B,CAAC;IAC5B,IAAI;CAmDb;AAGD,cAAM,0BAA2B,YAAW,YAAY;IAEpD,UAAU,SAAQ;IAClB,YAAY,WAAU;IACtB,MAAM;;;;MAIJ;IACF,UAAU;IAQV,UAAU;;;;;IAIV,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;CAIxC"}
{"version":3,"file":"SelectThinBehindBoard.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/SelectThinBehindBoard.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAGtD,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,qBAAa,qBAAsB,YAAW,OAAO;IAEjD,KAAK,EAAE,0BAA0B,CAAC;IAC5B,IAAI;CAmDb;AAGD,cAAM,0BAA2B,YAAW,YAAY;IAEpD,UAAU,SAAQ;IAClB,YAAY,WAAU;IACtB,MAAM;;;;MAIJ;IACF,UAAU;IAQV,UAAU;;;;;IAIV,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;CAIxC"}

View File

@@ -1,6 +1,7 @@
import { CADFiler } from "../../DatabaseServices/CADFiler";
import { I2DModeling, I3DModeling } from "../../DatabaseServices/Entity/Board";
import { BoardProcessOption } from "../../UI/Store/BoardInterface";
import { ExtrudeSolid } from "../../DatabaseServices/Entity/Extrude";
import { BoardProcessOption } from "../../UI/Store/OptionInterface/BoardProcessOption";
/**序列化板件数据 */
export declare function serializeBoardData(file: CADFiler, processData: BoardProcessOption): void;
export declare function deserializationBoardData(file: CADFiler, processData: BoardProcessOption, ver: number): void;
@@ -8,4 +9,6 @@ export declare function SerializeBoard2DModeingData(file: CADFiler, modelList: I
export declare function SerializeBoard3DModeingData(file: CADFiler, modelList: I3DModeling[]): void;
export declare function DeserializationBoard2DModeingData(file: CADFiler, data: I2DModeling[], ver: number): void;
export declare function DeserializationBoard3DModeingData(file: CADFiler, data: I3DModeling[], ver: number): void;
export declare function SerializeBoardSideModeingData(file: CADFiler, sideModelingMap: Map<number, ExtrudeSolid[]>): void;
export declare function DeserializationBoardSideModeingData(file: CADFiler, sideModelingMap: Map<number, ExtrudeSolid[]>): void;
//# sourceMappingURL=SerializeBoardData.d.ts.map

View File

@@ -1 +1 @@
{"version":3,"file":"SerializeBoardData.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/SerializeBoardData.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAa,MAAM,qCAAqC,CAAC;AAE1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,aAAa;AACb,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,QAoCjF;AAGD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,QAkDpG;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAkBnF;AACD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAiBnF;AAGD,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,QA8BjG;AAED,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,QAwBjG"}
{"version":3,"file":"SerializeBoardData.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/SerializeBoardData.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAa,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAErE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAEvF,aAAa;AACb,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,QAqCjF;AAGD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,QAyDpG;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAmBnF;AACD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAiBnF;AAGD,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,QAuCjG;AAED,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,EAAE,MAAM,QAwBjG;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,QAYzG;AAED,wBAAgB,mCAAmC,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,QAmB/G"}

View File

@@ -1,5 +1,5 @@
import { ComposingType, LinesType } from "../../DatabaseServices/Entity/BoardInterface";
import { Command } from "../../Editor/CommandMachine";
import { ComposingType, LinesType } from "../../UI/Store/BoardInterface";
export declare class SetBoardLines implements Command {
private lines;
constructor(lines: LinesType);

View File

@@ -1 +1 @@
{"version":3,"file":"SetBoardLines.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/SetBoardLines.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAEzE,qBAAa,aAAc,YAAW,OAAO;IAE7B,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,SAAS;IAE9B,IAAI;CAcb;AAED,qBAAa,gBAAiB,YAAW,OAAO;IAEhC,OAAO,CAAC,aAAa;gBAAb,aAAa,EAAE,aAAa;IAE1C,IAAI;CAcb"}
{"version":3,"file":"SetBoardLines.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/SetBoardLines.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAGtD,qBAAa,aAAc,YAAW,OAAO;IAE7B,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,SAAS;IAE9B,IAAI;CAcb;AAED,qBAAa,gBAAiB,YAAW,OAAO;IAEhC,OAAO,CAAC,aAAa;gBAAb,aAAa,EAAE,aAAa;IAE1C,IAAI;CAcb"}

View File

@@ -1 +1 @@
{"version":3,"file":"UpdateBoardInfos.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/UpdateBoardInfos.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAC;AAS7F,qBAAa,gBAAiB,YAAW,OAAO;IAEtC,IAAI;IA6EV,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,uBAAuB;CA2H7D"}
{"version":3,"file":"UpdateBoardInfos.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardEditor/UpdateBoardInfos.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD,OAAO,EAAE,uBAAuB,EAAwB,MAAM,oDAAoD,CAAC;AASnH,qBAAa,gBAAiB,YAAW,OAAO;IAEtC,IAAI;IA6EV,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,uBAAuB;CA8H7D"}

View File

@@ -1,14 +1,15 @@
import { Command } from "../Editor/CommandMachine";
import { ECompareType } from "../UI/Store/BoardFindInterface";
export declare class BoardFindModify implements Command {
private isModifyHwMatrial;
exec(): Promise<void>;
private GetBoards;
private GetEntitys;
private PutSelectList;
private FilterTypes;
private FindBrs;
private FilterBr;
private FilterBrSize;
private CompareIsEqual;
regExpEscape(s: any): any;
private FilterUndefined;
private ModifyBrs;
private ModifyBr;
private FindMaxSizeBrs;
@@ -19,5 +20,12 @@ export declare class BoardFindModify implements Command {
private RemoveBoardModelingOrSpecialShape;
private ModifyHardware;
private FilterHardware;
private OnlyModifyRoomAndCabinetName;
private FilterOnlyRoomAndCabinetNameEntity;
CheckDoorDir(name: string, doorOpenDir: number): boolean;
}
/**
* @param {(string[] | number[])} [values] 多个匹配项 目前只用在模糊匹配
*/
export declare function CompareIsEqual(brValue: string | number, value: string | number, type: ECompareType, values?: string[]): boolean;
//# sourceMappingURL=BoardFindModify.d.ts.map

View File

@@ -1 +1 @@
{"version":3,"file":"BoardFindModify.d.ts","sourceRoot":"","sources":["../../../src/Add-on/BoardFindModify.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAYnD,qBAAa,eAAgB,YAAW,OAAO;IAE3C,OAAO,CAAC,iBAAiB,CAAS;IAC5B,IAAI;YAwCI,SAAS;IAmBvB,OAAO,CAAC,aAAa;YAQP,OAAO;IA2CrB,OAAO,CAAC,QAAQ;IAwJhB,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,cAAc;IAYtB,YAAY,CAAC,CAAC,KAAA;YAIA,SAAS;IAYvB,OAAO,CAAC,QAAQ;YA8JF,cAAc;YAKd,cAAc;YAKd,iBAAiB;YASjB,cAAc;YAqDd,iBAAiB;YAcjB,iCAAiC;YAkBjC,cAAc;IA+B5B,OAAO,CAAC,cAAc;CAkDzB"}
{"version":3,"file":"BoardFindModify.d.ts","sourceRoot":"","sources":["../../../src/Add-on/BoardFindModify.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAOnD,OAAO,EAAc,YAAY,EAA+C,MAAM,gCAAgC,CAAC;AAQvH,qBAAa,eAAgB,YAAW,OAAO;IAE3C,OAAO,CAAC,iBAAiB,CAAS;IAC5B,IAAI;YA0CI,UAAU;IAmBxB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,WAAW;YAwBL,OAAO;IA4CrB,OAAO,CAAC,QAAQ;IA4PhB,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,eAAe;YAYT,SAAS;IAkBvB,OAAO,CAAC,QAAQ;YA2NF,cAAc;YAKd,cAAc;YAKd,iBAAiB;YASjB,cAAc;YAsFd,iBAAiB;YAcjB,iCAAiC;YAyBjC,cAAc;IA8C5B,OAAO,CAAC,cAAc;IA4DtB,OAAO,CAAC,4BAA4B;IAqBpC,OAAO,CAAC,kCAAkC;IAwC1C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CAsCjD;AAOD;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,WAiDrH"}

View File

@@ -0,0 +1,11 @@
import "./ExcludeInspectionCSS.less";
import { OneClickInspectionStore } from "./OneClickInspectionStore";
interface IExcludeInspectionProps {
store: OneClickInspectionStore;
openModal: boolean;
handleOpenModal: Function;
}
export declare const ExcludeDrawHoleInspection: (props: IExcludeInspectionProps) => JSX.Element;
export declare const ExcludeInterfereInspection: (props: IExcludeInspectionProps) => JSX.Element;
export {};
//# sourceMappingURL=ExcludeInspection.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ExcludeInspection.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardInspection/ExcludeInspection.tsx"],"names":[],"mappings":"AAMA,OAAO,6BAA6B,CAAC;AACrC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,UAAU,uBAAuB;IAE7B,KAAK,EAAE,uBAAuB,CAAC;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,QAAQ,CAAC;CAC7B;AACD,eAAO,MAAM,yBAAyB,UAAoB,uBAAuB,gBAqM/E,CAAC;AAEH,eAAO,MAAM,0BAA0B,UAAoB,uBAAuB,gBA6IhF,CAAC"}

View File

@@ -0,0 +1,14 @@
import { ExtrudeHole } from "../../DatabaseServices/3DSolid/ExtrudeHole";
import { SweepSolid } from "../../DatabaseServices/3DSolid/SweepSolid";
import { Board } from "../../DatabaseServices/Entity/Board";
import { ExtrudeSolid } from "../../DatabaseServices/Entity/Extrude";
import { HardwareCompositeEntity } from "../../DatabaseServices/Hardware/HardwareCompositeEntity";
export declare function InterfereInspection(selectEnts: (ExtrudeSolid | SweepSolid | HardwareCompositeEntity)[]): Promise<(string | [import("../../Common/InterfereUtil").Solid3D, import("../../Common/InterfereUtil").Solid3D])[][]>;
export declare function MaxSizeBoardInspection(boards: Board[]): (string | Board[])[][];
export declare function MinSizeBoardInspection(boards: Board[]): (string | Board[])[][];
export declare function ModelInspection(boards: Board[]): ((string | ExtrudeSolid[])[] | (string | ExtrudeHole[])[])[];
export declare function SpecialBoardContourInspection(boards: Board[]): any[];
export declare function SplitBoardInspection(boards: Board[]): (string | Board[])[][];
export declare function DrillInspection(boards: Board[]): Promise<any[]>;
export declare function DrawHoleInspection(boards: Board[]): (string | any[])[][];
//# sourceMappingURL=Inspection.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Inspection.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardInspection/Inspection.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAC;AAEvE,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAErE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAMlG,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,CAAC,YAAY,GAAG,UAAU,GAAG,uBAAuB,CAAC,EAAE,wHAM5G;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,0BAIrD;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,0BAIrD;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,gEAuB9C;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,KAAK,EAAE,SA2B5D;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,0BAwBnD;AAED,wBAAsB,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,kBASpD;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,wBAcjD"}

View File

@@ -0,0 +1,12 @@
import { CheckInterfereTool } from "../../Common/InterfereUtil";
import { Board } from "../../DatabaseServices/Entity/Board";
import { HardwareCompositeEntity } from "../../DatabaseServices/Hardware/HardwareCompositeEntity";
import { ProcessingGroupRecord } from "../../DatabaseServices/ProcessingGroup/ProcessingGroupRecord";
import { Command } from "../../Editor/CommandMachine";
import { ECompareType } from "../../UI/Store/BoardFindInterface";
export declare class OneClickInspection implements Command {
checkInterfereTool: CheckInterfereTool;
exec(): Promise<void>;
}
export declare function CompareTypeInspection(type: ECompareType, values: Set<string>, en: Board | ProcessingGroupRecord | HardwareCompositeEntity): boolean;
//# sourceMappingURL=OneClickInspection.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"OneClickInspection.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardInspection/OneClickInspection.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAG5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAClG,OAAO,EAAE,qBAAqB,EAAE,MAAM,8DAA8D,CAAC;AACrG,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAGtD,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAOjE,qBAAa,kBAAmB,YAAW,OAAO;IAE9C,kBAAkB,EAAE,kBAAkB,CAAC;IAEjC,IAAI;CAmNb;AACD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,GAAG,qBAAqB,GAAG,uBAAuB,WASzI"}

View File

@@ -0,0 +1,5 @@
import { OneClickInspectionStore } from "./OneClickInspectionStore";
export declare const OneClickInspectionComponent: ({ store }: {
store: OneClickInspectionStore;
}) => JSX.Element;
//# sourceMappingURL=OneClickInspectionComponent.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"OneClickInspectionComponent.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardInspection/OneClickInspectionComponent.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,eAAO,MAAM,2BAA2B,cAAyB;IAAE,KAAK,EAAE,uBAAuB,CAAC;CAAE,gBA+IjG,CAAC"}

View File

@@ -0,0 +1,15 @@
import { Singleton } from "../../Common/Singleton";
import { IConfigOption } from "../../UI/Components/Board/UserConfigComponent";
import { IConfigStore } from "../../UI/Store/BoardStore";
import { OneClickInspectionOption } from "../../UI/Store/OptionInterface/IOptionInterface";
export declare class OneClickInspectionStore extends Singleton implements IConfigStore {
configName: string;
m_Option: OneClickInspectionOption;
configsNames: string[];
InitOption(): void;
UpdateOption(cof: IConfigOption<OneClickInspectionOption>): void;
SaveConfig(): IConfigOption<OneClickInspectionOption>;
HasInvailValue(): string;
}
export declare const oneClickInspectionStore: OneClickInspectionStore;
//# sourceMappingURL=OneClickInspectionStore.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"OneClickInspectionStore.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardInspection/OneClickInspectionStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAE3F,qBAAa,uBAAwB,SAAQ,SAAU,YAAW,YAAY;IAE9D,UAAU,SAAQ;IAElB,QAAQ,EAAE,wBAAwB,CAAmC;IACrE,YAAY,EAAE,MAAM,EAAE,CAAM;IAExC,UAAU;IAIV,YAAY,CAAC,GAAG,EAAE,aAAa,CAAC,wBAAwB,CAAC;IAgCzD,UAAU;IAQV,cAAc;CASjB;AAED,eAAO,MAAM,uBAAuB,EAA4C,uBAAuB,CAAC"}

View File

@@ -0,0 +1,5 @@
import { Entity } from "../../DatabaseServices/Entity/Entity";
export declare function ViewInspection({ errEntInfos }: {
errEntInfos: Map<string, (string | Entity[])[][]>;
}): JSX.Element;
//# sourceMappingURL=ViewInspection.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ViewInspection.d.ts","sourceRoot":"","sources":["../../../../src/Add-on/BoardInspection/ViewInspection.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,sCAAsC,CAAC;AAM9D,wBAAgB,cAAc,CAAC,EAAE,WAAW,EAAE,EAAE;IAAE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;CAAE,eAoHrG"}

View File

@@ -1 +1 @@
{"version":3,"file":"Break.d.ts","sourceRoot":"","sources":["../../../src/Add-on/Break.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAKnD,qBAAa,aAAc,YAAW,OAAO;IAEnC,IAAI;CAmGb;AAED,qBAAa,gBAAiB,YAAW,OAAO;IAEtC,IAAI;CAIb"}
{"version":3,"file":"Break.d.ts","sourceRoot":"","sources":["../../../src/Add-on/Break.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAKnD,qBAAa,aAAc,YAAW,OAAO;IAEnC,IAAI;CAmGb;AAED,qBAAa,gBAAiB,YAAW,OAAO;IAEtC,IAAI;CAIb"}

View File

@@ -0,0 +1,11 @@
export interface MaterialInfo {
brName: string;
material: string;
color: string;
}
export declare class BoardMaterialLoader {
constructor();
Code_MaterialInfo: Map<string, MaterialInfo>;
LoaderMaterialInfo(): Promise<void>;
}
//# sourceMappingURL=BoardMaterialLoader.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"BoardMaterialLoader.d.ts","sourceRoot":"","sources":["../../../../../src/Add-on/CF/Import/BoardMaterialLoader.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,YAAY;IAEzB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACjB;AACD,qBAAa,mBAAmB;;IAK5B,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAa;IAEnD,kBAAkB;CAwC3B"}

9
types/Add-on/CF/Import/CFImport.d.ts vendored Normal file
View File

@@ -0,0 +1,9 @@
import { Database } from "../../../DatabaseServices/Database";
import { Command } from "../../../Editor/CommandMachine";
import { ICFDoc } from "./CFInterface";
export declare class ImportCFData implements Command {
exec(): void;
}
export declare function ImportCFFile(file: File): Promise<void>;
export declare function ParseCFDoc(document: ICFDoc, cuDb: Database): Promise<void>;
//# sourceMappingURL=CFImport.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"CFImport.d.ts","sourceRoot":"","sources":["../../../../../src/Add-on/CF/Import/CFImport.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAI9D,OAAO,EAAE,OAAO,EAAe,MAAM,gCAAgC,CAAC;AAKtE,OAAO,EAAE,MAAM,EAAiB,MAAM,eAAe,CAAC;AAEtD,qBAAa,YAAa,YAAW,OAAO;IAExC,IAAI;CAaP;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,IAAI,iBA2B5C;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,iBA2DhE"}

130
types/Add-on/CF/Import/CFInterface.d.ts vendored Normal file
View File

@@ -0,0 +1,130 @@
type ICFCurverType = "Curve" | "Polyline" | "Rect" | "Line" | "Arc" | "Circle";
type ICFEntityType = "Entity" | "ExtrudeSolid" | "Board" | "Template" | "EntityTree" | "Hardware" | "Topline";
export type ICFPolylineContour = {
pt: [number, number];
bul: 0;
}[];
export type ICFCircleContour = {
Radius: number;
Center: [number, number, number];
};
export type ICFExtrudeContour = ICFPolylineContour | ICFCircleContour;
export interface ICFDoc {
ModelSpace: ICFEntity[];
}
export interface ICFEntity {
Type: ICFEntityType | ICFCurverType;
Id?: number;
ColorIndex?: number;
OCS?: number[];
Pos?: [number, number, number];
Rot?: [number, number, number];
Qua?: [number, number, number, number];
}
export interface ICFExtrudeSolid extends ICFEntity {
Width?: number;
Height?: number;
ContourCurve?: ICFExtrudeContour;
Thickness?: number;
GroovesAddLength?: number;
GroovesAddWidth?: number;
GroovesAddDepth?: number;
KnifeRadius?: number;
Holes?: ICFExtrudeSolid[];
}
export interface ICFBoard extends ICFExtrudeSolid {
Name?: string;
BrType?: number;
PositionType?: number;
OpenDir?: number;
Lines?: number;
BigHole?: number;
ComposingFace?: number;
RoomName?: string;
CabinetName?: string;
BrMatName?: string;
Matrial?: string;
Color?: string;
BoardMaterialId?: string;
UpSealed?: string;
DownSealed?: string;
LeftSealed?: string;
RightSealed?: string;
sealColorUp?: string;
sealColorDown?: string;
sealColorLeft?: string;
sealColorRight?: string;
EachSealeds?: {
size: number;
sealColor: string;
}[];
EachEdgeDrills?: string[];
FrontDrill?: boolean;
BackDrill?: boolean;
Remarks?: [string, string][];
}
export interface ICFEntityTree extends ICFEntity {
Name?: string;
Entitys?: ICFEntity[];
Childen?: ICFEntityTree[];
}
export interface ICFTemplate extends ICFEntity {
TempalteId?: string;
Name?: string;
Lenght?: number;
Width?: number;
Height?: number;
BoxSize?: [number, number, number];
ParamMap?: {
name: string;
value: string;
}[];
RoomName?: string;
CabinetName?: string;
}
export interface ICFHardware extends ICFTemplate {
Name?: string;
HardwarerId?: string;
Unit?: string;
ActualExpr?: string;
Model?: string;
Factory?: string;
Brand?: string;
Spec?: string;
Comments?: string;
IsHole?: boolean;
Material?: string;
Color?: string;
}
export interface ICFTopline extends ICFTemplate {
Name?: string;
ToplineId?: string;
Unit?: string;
ActualExpr?: string;
Model?: string;
Factory?: string;
Brand?: string;
Spec?: string;
Comments?: string;
Contour?: ICFPolylineContour;
PathCurve?: ICFExtrudeContour;
}
export interface ICFCurve extends ICFEntity {
}
export interface ICFLine extends ICFCurve {
StartPoint: [number, number, number];
EndPoint: [number, number, number];
}
export interface ICFPolyline extends ICFCurve {
ContourCurve?: ICFPolylineContour;
}
export interface ICFRect extends ICFCurve {
Width: number;
Height: number;
}
export interface ICFCircle extends ICFCurve {
Radius: number;
Center: [number, number, number];
}
export {};
//# sourceMappingURL=CFInterface.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"CFInterface.d.ts","sourceRoot":"","sources":["../../../../../src/Add-on/CF/Import/CFInterface.ts"],"names":[],"mappings":"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"}

5
types/Add-on/CF/Parse/ParseBoard.d.ts vendored Normal file
View File

@@ -0,0 +1,5 @@
import { Board } from "../../../DatabaseServices/Entity/Board";
import { MaterialInfo } from "../Import/BoardMaterialLoader";
import { ICFBoard } from "../Import/CFInterface";
export declare function ParseCFBoard(el: ICFBoard, boardMaterialMap?: Map<string, MaterialInfo>): Board;
//# sourceMappingURL=ParseBoard.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ParseBoard.d.ts","sourceRoot":"","sources":["../../../../../src/Add-on/CF/Parse/ParseBoard.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,wCAAwC,CAAC;AAO/D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAwC,MAAM,uBAAuB,CAAC;AAGvF,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,SA8MtF"}

11
types/Add-on/CF/Parse/ParseCurve.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
import { Circle } from "../../../DatabaseServices/Entity/Circle";
import { Line } from "../../../DatabaseServices/Entity/Line";
import { Polyline } from "../../../DatabaseServices/Entity/Polyline";
import { ICFLine, ICFPolylineContour } from "../Import/CFInterface";
export declare class ParseCurve {
static ParseLine(en: ICFLine): Line;
ParsePolyline(ContourCurve: ICFPolylineContour, isColosed?: boolean): Polyline;
ParseRect(Width: number, Height: number): Polyline;
ParseCircle(Radius: number, Center: [number, number, number]): Circle;
}
//# sourceMappingURL=ParseCurve.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"ParseCurve.d.ts","sourceRoot":"","sources":["../../../../../src/Add-on/CF/Parse/ParseCurve.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,yCAAyC,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAiB,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEpE,qBAAa,UAAU;IAEnB,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO;IAQ5B,aAAa,CAAC,YAAY,EAAE,kBAAkB,EAAE,SAAS,GAAE,OAAe;IAe1E,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAOvC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;CAM/D"}

View File

@@ -0,0 +1,8 @@
import { Database } from "../../../DatabaseServices/Database";
import { Entity } from "../../../DatabaseServices/Entity/Entity";
import { TemplateRecord } from "../../../DatabaseServices/Template/TemplateRecord";
import { MaterialInfo } from "../Import/BoardMaterialLoader";
import { ICFEntity, ICFEntityTree } from "../Import/CFInterface";
export declare function ParseEntityTree(model: ICFEntityTree, cuDb: Database, boardMaterialMap?: Map<string, MaterialInfo>): Promise<TemplateRecord | Entity>;
export declare function CFParseAddEntity(model: ICFEntity, cuDb: Database, boardMaterialMap?: Map<string, MaterialInfo>): Promise<Entity | TemplateRecord>;
//# sourceMappingURL=ParseEntityTree.d.ts.map

Some files were not shown because too many files have changed in this diff Show More