@constructorfleet/sketchforge-engine 1.25.0 → 1.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cadAnalysis.d.ts +94 -0
- package/dist/cadAnalysis.d.ts.map +1 -0
- package/dist/cadAnalysis.js +143 -0
- package/dist/cadAnalysis.js.map +1 -0
- package/dist/cadShell.d.ts +143 -0
- package/dist/cadShell.d.ts.map +1 -0
- package/dist/cadShell.js +306 -0
- package/dist/cadShell.js.map +1 -0
- package/dist/cadSolids.d.ts +32 -0
- package/dist/cadSolids.d.ts.map +1 -1
- package/dist/cadSolids.js +45 -12
- package/dist/cadSolids.js.map +1 -1
- package/dist/domain/sketchforge.d.ts +1 -1
- package/dist/domain/sketchforge.d.ts.map +1 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +70 -79
- package/dist/engine.js.map +1 -1
- package/dist/faceDraftSegmentLineage.d.ts +2 -37
- package/dist/faceDraftSegmentLineage.d.ts.map +1 -1
- package/dist/faceDraftSegmentLineage.js +6 -190
- package/dist/faceDraftSegmentLineage.js.map +1 -1
- package/dist/parametricRecompute.d.ts.map +1 -1
- package/dist/parametricRecompute.js +7 -4
- package/dist/parametricRecompute.js.map +1 -1
- package/dist/revolveRequests.d.ts.map +1 -1
- package/dist/serverCadInterference.d.ts +8 -45
- package/dist/serverCadInterference.d.ts.map +1 -1
- package/dist/serverCadInterference.js +13 -42
- package/dist/serverCadInterference.js.map +1 -1
- package/dist/serverCadMeasure.d.ts.map +1 -1
- package/dist/serverCadMeasure.js +33 -2
- package/dist/serverCadMeasure.js.map +1 -1
- package/dist/serverCadOperations.d.ts +14 -43
- package/dist/serverCadOperations.d.ts.map +1 -1
- package/dist/serverCadOperations.js +117 -160
- package/dist/serverCadOperations.js.map +1 -1
- package/dist/serverCadShell.d.ts +7 -94
- package/dist/serverCadShell.d.ts.map +1 -1
- package/dist/serverCadShell.js +25 -269
- package/dist/serverCadShell.js.map +1 -1
- package/dist/serverCadThickness.d.ts +8 -8
- package/dist/serverCadThickness.d.ts.map +1 -1
- package/dist/serverCadThickness.js +15 -42
- package/dist/serverCadThickness.js.map +1 -1
- package/dist/serverShapeBooleans.js +1 -1
- package/dist/serverShapeBooleans.js.map +1 -1
- package/dist/serverStepExplode.d.ts +1 -2
- package/dist/serverStepExplode.d.ts.map +1 -1
- package/dist/serverStepExplode.js +15 -148
- package/dist/serverStepExplode.js.map +1 -1
- package/dist/sketchExtrusionRequest.d.ts.map +1 -1
- package/dist/sketchExtrusionRequest.js +2 -25
- package/dist/sketchExtrusionRequest.js.map +1 -1
- package/dist/sketchExtrusionSolid.d.ts +4 -0
- package/dist/sketchExtrusionSolid.d.ts.map +1 -0
- package/dist/sketchExtrusionSolid.js +36 -0
- package/dist/sketchExtrusionSolid.js.map +1 -0
- package/dist/sketchFaceDraftKernel.d.ts +248 -0
- package/dist/sketchFaceDraftKernel.d.ts.map +1 -0
- package/dist/sketchFaceDraftKernel.js +575 -0
- package/dist/sketchFaceDraftKernel.js.map +1 -0
- package/dist/stepAssemblyExplode.d.ts +45 -0
- package/dist/stepAssemblyExplode.d.ts.map +1 -0
- package/dist/stepAssemblyExplode.js +195 -0
- package/dist/stepAssemblyExplode.js.map +1 -0
- package/dist/support/cadModifierTypes.d.ts +82 -0
- package/dist/support/cadModifierTypes.d.ts.map +1 -1
- package/dist/support/i18n/locales/en/messages.json +15 -1
- package/dist/support/lib/operator-configuration.json +11 -0
- package/dist/workplaneShapes.d.ts.map +1 -1
- package/dist/workplaneShapes.js +5 -0
- package/dist/workplaneShapes.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Split a retained STEP source into positioned, independently editable solids
|
|
3
|
+
* on whichever OCCT kernel the caller holds.
|
|
4
|
+
*
|
|
5
|
+
* The server runs this through `withCadKernel` (`serverStepExplode`), and the
|
|
6
|
+
* editor runs it on the browser kernel STEP import already loaded
|
|
7
|
+
* (`explodeStepAssemblyInBrowser`), so both produce the same groups and leaves.
|
|
8
|
+
*/
|
|
9
|
+
import type { OcctKernel } from "occt-wasm";
|
|
10
|
+
import type { ProjectAsset, WorkplaneShape } from "./domain/sketchforge.js";
|
|
11
|
+
export declare const MAX_EXPLODE_SOLIDS = 200;
|
|
12
|
+
export declare const MAX_EXPLODE_SOURCE_BYTES: number;
|
|
13
|
+
/** Why an explosion was refused, so each caller can word it its own way. */
|
|
14
|
+
export type StepExplodeRefusal = "not_step" | "source_too_large" | "single_solid" | "too_many_solids";
|
|
15
|
+
/** A refused explosion: an English message, an HTTP-style status, and a stable reason. */
|
|
16
|
+
export declare class StepExplodeError extends Error {
|
|
17
|
+
readonly reason: StepExplodeRefusal;
|
|
18
|
+
readonly status: number;
|
|
19
|
+
readonly params: Record<string, number>;
|
|
20
|
+
constructor(reason: StepExplodeRefusal, message: string, status?: number, params?: Record<string, number>);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The shapes that replace the imported assembly.
|
|
24
|
+
*
|
|
25
|
+
* `hierarchy` is `nested` when the source product tree was rebuilt as groups,
|
|
26
|
+
* and `flat` when it could not be matched unambiguously (or there was none),
|
|
27
|
+
* in which case `shapes` are the top-level solids.
|
|
28
|
+
*/
|
|
29
|
+
export type StepAssemblyExplosion = {
|
|
30
|
+
shapes: WorkplaneShape[];
|
|
31
|
+
hierarchy: "nested" | "flat";
|
|
32
|
+
};
|
|
33
|
+
/** Refuse, without touching a kernel, a shape or source that cannot be exploded. */
|
|
34
|
+
export declare function assertStepExplodable(shape: WorkplaneShape, source: ProjectAsset): void;
|
|
35
|
+
/** Turn a STEP-imported mesh shape into one exact mesh/B-rep-backed shape per solid, on `cad`. */
|
|
36
|
+
export declare function explodeStepAssemblyWithKernel(cad: OcctKernel, shape: WorkplaneShape, source: ProjectAsset): StepAssemblyExplosion;
|
|
37
|
+
/**
|
|
38
|
+
* Explode on the browser kernel that STEP import loads.
|
|
39
|
+
*
|
|
40
|
+
* Like browser STEP import, this leaves the kernel's handle arena alone: the
|
|
41
|
+
* same kernel backs brepjs for STEP export, and emptying the arena under it
|
|
42
|
+
* would dangle handles it still holds.
|
|
43
|
+
*/
|
|
44
|
+
export declare function explodeStepAssemblyInBrowser(shape: WorkplaneShape, source: ProjectAsset): Promise<StepAssemblyExplosion>;
|
|
45
|
+
//# sourceMappingURL=stepAssemblyExplode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stepAssemblyExplode.d.ts","sourceRoot":"","sources":["../src/stepAssemblyExplode.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAe,MAAM,WAAW,CAAC;AAKzD,OAAO,KAAK,EAAE,YAAY,EAA0C,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGpH,eAAO,MAAM,kBAAkB,MAAM,CAAC;AACtC,eAAO,MAAM,wBAAwB,QAAkB,CAAC;AAGxD,4EAA4E;AAC5E,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,kBAAkB,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAEtG,0FAA0F;AAC1F,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAE5B,MAAM,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;CAO3G;AAED;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAAC,SAAS,EAAE,QAAQ,GAAG,MAAM,CAAA;CAAE,CAAC;AA+D/F,oFAAoF;AACpF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,QAO/E;AAED,kGAAkG;AAClG,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,GAAG,qBAAqB,CAwFjI;AAED;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAI9H"}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Split a retained STEP source into positioned, independently editable solids
|
|
3
|
+
* on whichever OCCT kernel the caller holds.
|
|
4
|
+
*
|
|
5
|
+
* The server runs this through `withCadKernel` (`serverStepExplode`), and the
|
|
6
|
+
* editor runs it on the browser kernel STEP import already loaded
|
|
7
|
+
* (`explodeStepAssemblyInBrowser`), so both produce the same groups and leaves.
|
|
8
|
+
*/
|
|
9
|
+
import * as THREE from "three";
|
|
10
|
+
import { importedShapeFromTriangleSoup } from "./stlImport.js";
|
|
11
|
+
import { stepComponentMetadata, stepShapeKey } from "./stepComponentMetadata.js";
|
|
12
|
+
import { groupedShapeFromSelection } from "./serverShapeGroups.js";
|
|
13
|
+
import { loadOcctKernel } from "./support/lib/brepKernel.js";
|
|
14
|
+
import { meshYawDegrees } from "./workplaneShapes.js";
|
|
15
|
+
export const MAX_EXPLODE_SOLIDS = 200;
|
|
16
|
+
export const MAX_EXPLODE_SOURCE_BYTES = 8 * 1024 * 1024;
|
|
17
|
+
const X_AXIS = { point: { x: 0, y: 0, z: 0 }, direction: { x: 1, y: 0, z: 0 } };
|
|
18
|
+
/** A refused explosion: an English message, an HTTP-style status, and a stable reason. */
|
|
19
|
+
export class StepExplodeError extends Error {
|
|
20
|
+
reason;
|
|
21
|
+
status;
|
|
22
|
+
params;
|
|
23
|
+
constructor(reason, message, status = 422, params = {}) {
|
|
24
|
+
super(message);
|
|
25
|
+
this.name = "StepExplodeError";
|
|
26
|
+
this.reason = reason;
|
|
27
|
+
this.status = status;
|
|
28
|
+
this.params = params;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
function boundsOf(cad, shape) {
|
|
32
|
+
return cad.getBoundingBox(shape, false);
|
|
33
|
+
}
|
|
34
|
+
function leafPaths(nodes, parentPath = []) {
|
|
35
|
+
return nodes.flatMap((node) => {
|
|
36
|
+
const path = [...parentPath, { ...(node.id ? { id: node.id } : {}), name: node.name }];
|
|
37
|
+
return node.children.length ? leafPaths(node.children, path) : [path];
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
function uniqueNamedPath(paths, name) {
|
|
41
|
+
const matches = paths.filter((path) => path.at(-1)?.name === name);
|
|
42
|
+
return matches.length === 1 ? matches[0] : undefined;
|
|
43
|
+
}
|
|
44
|
+
function groupExplodedHierarchy(parts, roots) {
|
|
45
|
+
const partsByOccurrence = new Map();
|
|
46
|
+
for (const part of parts) {
|
|
47
|
+
const occurrenceId = part.stepComponent?.occurrenceId;
|
|
48
|
+
if (!occurrenceId)
|
|
49
|
+
return null;
|
|
50
|
+
const matches = partsByOccurrence.get(occurrenceId) ?? [];
|
|
51
|
+
matches.push(part);
|
|
52
|
+
partsByOccurrence.set(occurrenceId, matches);
|
|
53
|
+
}
|
|
54
|
+
const consumed = new Set();
|
|
55
|
+
let complete = true;
|
|
56
|
+
const namedGroup = (name, children) => {
|
|
57
|
+
const group = groupedShapeFromSelection(children, { allowSingle: true, name });
|
|
58
|
+
if (!group) {
|
|
59
|
+
complete = false;
|
|
60
|
+
return children;
|
|
61
|
+
}
|
|
62
|
+
return [group];
|
|
63
|
+
};
|
|
64
|
+
const visit = (node) => {
|
|
65
|
+
if (!node.children.length) {
|
|
66
|
+
if (!node.id) {
|
|
67
|
+
complete = false;
|
|
68
|
+
return [];
|
|
69
|
+
}
|
|
70
|
+
const matches = partsByOccurrence.get(node.id);
|
|
71
|
+
if (!matches?.length) {
|
|
72
|
+
complete = false;
|
|
73
|
+
return [];
|
|
74
|
+
}
|
|
75
|
+
matches.forEach((part) => consumed.add(part));
|
|
76
|
+
return matches.length > 1 ? namedGroup(node.name, matches) : matches;
|
|
77
|
+
}
|
|
78
|
+
const children = node.children.flatMap(visit);
|
|
79
|
+
if (!children.length)
|
|
80
|
+
return [];
|
|
81
|
+
return namedGroup(node.name, children);
|
|
82
|
+
};
|
|
83
|
+
const grouped = roots.flatMap(visit);
|
|
84
|
+
// Keep the proven flat behavior when even one source solid cannot be
|
|
85
|
+
// associated to a product occurrence. A partial tree would hide geometry.
|
|
86
|
+
return complete && consumed.size === parts.length && grouped.length ? grouped : null;
|
|
87
|
+
}
|
|
88
|
+
/** Refuse, without touching a kernel, a shape or source that cannot be exploded. */
|
|
89
|
+
export function assertStepExplodable(shape, source) {
|
|
90
|
+
if (shape.importedMesh?.sourceFormat !== "step" || !shape.importedMesh.assetId) {
|
|
91
|
+
throw new StepExplodeError("not_step", "Only a STEP import with its original source asset can be exploded.");
|
|
92
|
+
}
|
|
93
|
+
if (source.sourceFormat !== "step" || source.byteLength > MAX_EXPLODE_SOURCE_BYTES) {
|
|
94
|
+
throw new StepExplodeError("source_too_large", `STEP explosion supports source files up to ${MAX_EXPLODE_SOURCE_BYTES} bytes.`, 413, { bytes: MAX_EXPLODE_SOURCE_BYTES });
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
/** Turn a STEP-imported mesh shape into one exact mesh/B-rep-backed shape per solid, on `cad`. */
|
|
98
|
+
export function explodeStepAssemblyWithKernel(cad, shape, source) {
|
|
99
|
+
assertStepExplodable(shape, source);
|
|
100
|
+
const imported = cad.importStep(new TextDecoder().decode(source.bytes));
|
|
101
|
+
const solids = cad.getSubShapes(imported, "solid");
|
|
102
|
+
if (solids.length < 2)
|
|
103
|
+
throw new StepExplodeError("single_solid", "This STEP file contains only one solid; there is nothing to explode.");
|
|
104
|
+
if (solids.length > MAX_EXPLODE_SOLIDS) {
|
|
105
|
+
throw new StepExplodeError("too_many_solids", `STEP explosion supports at most ${MAX_EXPLODE_SOLIDS} solids; this file contains ${solids.length}.`, 413, { max: MAX_EXPLODE_SOLIDS, count: solids.length });
|
|
106
|
+
}
|
|
107
|
+
// Match the importer's Z-up conversion and scene-wide recentering.
|
|
108
|
+
const turnedAssembly = cad.rotate(imported, X_AXIS, -Math.PI / 2);
|
|
109
|
+
const assemblyBounds = boundsOf(cad, turnedAssembly);
|
|
110
|
+
const centerX = (assemblyBounds.xmin + assemblyBounds.xmax) / 2;
|
|
111
|
+
const floorY = assemblyBounds.ymin;
|
|
112
|
+
const centerZ = (assemblyBounds.zmin + assemblyBounds.zmax) / 2;
|
|
113
|
+
const rotation = new THREE.Matrix4().makeRotationFromEuler(new THREE.Euler(THREE.MathUtils.degToRad(shape.rotationX ?? 0), THREE.MathUtils.degToRad(meshYawDegrees(shape)), THREE.MathUtils.degToRad(shape.rotationZ ?? 0), "XYZ"));
|
|
114
|
+
const mirrors = new THREE.Vector3(shape.mirrorX ? -1 : 1, shape.mirrorY ? -1 : 1, shape.mirrorZ ? -1 : 1);
|
|
115
|
+
const parentCenter = new THREE.Vector3(shape.x, (shape.elevation ?? 0) + shape.height / 2, shape.z);
|
|
116
|
+
const componentMetadata = stepComponentMetadata(cad, new TextDecoder().decode(source.bytes));
|
|
117
|
+
const paths = leafPaths(shape.stepAssembly ?? []);
|
|
118
|
+
const occurrencePartIndexes = new Map();
|
|
119
|
+
const parts = solids.map((solid, index) => {
|
|
120
|
+
const candidates = componentMetadata.bySolid.get(stepShapeKey(cad, solid)) ?? [];
|
|
121
|
+
const firstCandidate = candidates[0];
|
|
122
|
+
const metadata = firstCandidate ? {
|
|
123
|
+
...(candidates.length === 1 && firstCandidate.name ? { name: firstCandidate.name } : {}),
|
|
124
|
+
...(candidates.length === 1 && firstCandidate.occurrenceId ? { occurrenceId: firstCandidate.occurrenceId } : {}),
|
|
125
|
+
...(candidates.every((candidate) => candidate.color === firstCandidate.color) && firstCandidate.color
|
|
126
|
+
? { color: firstCandidate.color }
|
|
127
|
+
: {}),
|
|
128
|
+
} : undefined;
|
|
129
|
+
const path = metadata?.occurrenceId
|
|
130
|
+
? paths.find((candidate) => candidate.at(-1)?.id === metadata.occurrenceId)
|
|
131
|
+
: metadata?.name ? uniqueNamedPath(paths, metadata.name) : undefined;
|
|
132
|
+
const occurrenceId = path?.at(-1)?.id;
|
|
133
|
+
const occurrencePartIndex = occurrenceId ? (occurrencePartIndexes.get(occurrenceId) ?? 0) : 0;
|
|
134
|
+
if (occurrenceId)
|
|
135
|
+
occurrencePartIndexes.set(occurrenceId, occurrencePartIndex + 1);
|
|
136
|
+
const componentName = path?.at(-1)?.name ?? (paths.length === 0 ? metadata?.name : undefined);
|
|
137
|
+
const turned = cad.rotate(solid, X_AXIS, -Math.PI / 2);
|
|
138
|
+
const positioned = cad.translate(turned, -centerX, -floorY, -centerZ);
|
|
139
|
+
const bounds = boundsOf(cad, positioned);
|
|
140
|
+
const partX = (bounds.xmin + bounds.xmax) / 2;
|
|
141
|
+
const partY = bounds.ymin;
|
|
142
|
+
const partZ = (bounds.zmin + bounds.zmax) / 2;
|
|
143
|
+
const local = cad.translate(positioned, -partX, -partY, -partZ);
|
|
144
|
+
const mesh = cad.tessellate(positioned);
|
|
145
|
+
const positions = [];
|
|
146
|
+
const normals = [];
|
|
147
|
+
for (let cursor = 0; cursor < mesh.indices.length; cursor += 1) {
|
|
148
|
+
const vertex = mesh.indices[cursor] * 3;
|
|
149
|
+
positions.push(mesh.positions[vertex], mesh.positions[vertex + 1], mesh.positions[vertex + 2]);
|
|
150
|
+
if (mesh.normals.length === mesh.positions.length)
|
|
151
|
+
normals.push(mesh.normals[vertex], mesh.normals[vertex + 1], mesh.normals[vertex + 2]);
|
|
152
|
+
}
|
|
153
|
+
const child = importedShapeFromTriangleSoup(componentName ?? `${shape.name} ${index + 1}`, positions, normals.length ? normals : undefined, "step");
|
|
154
|
+
const offset = new THREE.Vector3(partX, partY - shape.height / 2, partZ).multiply(mirrors).applyMatrix4(rotation).add(parentCenter);
|
|
155
|
+
child.color = metadata?.color ?? shape.color;
|
|
156
|
+
child.material = shape.material;
|
|
157
|
+
child.appearance = shape.appearance;
|
|
158
|
+
child.hole = shape.hole;
|
|
159
|
+
child.hidden = shape.hidden;
|
|
160
|
+
child.locked = shape.locked;
|
|
161
|
+
child.rotation = shape.rotation;
|
|
162
|
+
child.rotationX = shape.rotationX;
|
|
163
|
+
child.rotationZ = shape.rotationZ;
|
|
164
|
+
child.mirrorX = shape.mirrorX;
|
|
165
|
+
child.mirrorY = shape.mirrorY;
|
|
166
|
+
child.mirrorZ = shape.mirrorZ;
|
|
167
|
+
child.x = offset.x;
|
|
168
|
+
child.elevation = offset.y;
|
|
169
|
+
child.z = offset.z;
|
|
170
|
+
child.importedMesh.brepStep = cad.exportStep(local);
|
|
171
|
+
if (path && occurrenceId) {
|
|
172
|
+
child.stepComponent = {
|
|
173
|
+
id: `${occurrenceId}/solid-${occurrencePartIndex + 1}`,
|
|
174
|
+
occurrenceId,
|
|
175
|
+
path,
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
return child;
|
|
179
|
+
});
|
|
180
|
+
const grouped = groupExplodedHierarchy(parts, shape.stepAssembly ?? []);
|
|
181
|
+
return grouped ? { shapes: grouped, hierarchy: "nested" } : { shapes: parts, hierarchy: "flat" };
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Explode on the browser kernel that STEP import loads.
|
|
185
|
+
*
|
|
186
|
+
* Like browser STEP import, this leaves the kernel's handle arena alone: the
|
|
187
|
+
* same kernel backs brepjs for STEP export, and emptying the arena under it
|
|
188
|
+
* would dangle handles it still holds.
|
|
189
|
+
*/
|
|
190
|
+
export async function explodeStepAssemblyInBrowser(shape, source) {
|
|
191
|
+
assertStepExplodable(shape, source);
|
|
192
|
+
const kernel = await loadOcctKernel();
|
|
193
|
+
return explodeStepAssemblyWithKernel(kernel, shape, source);
|
|
194
|
+
}
|
|
195
|
+
//# sourceMappingURL=stepAssemblyExplode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stepAssemblyExplode.js","sourceRoot":"","sources":["../src/stepAssemblyExplode.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { LocalizedErrorPayload } from "./i18n/LocalizedError.js";
|
|
2
2
|
import type { WorkplaneShape } from "./../domain/sketchforge.js";
|
|
3
3
|
import type { SketchProfile } from "./../domain/sketchforge.js";
|
|
4
|
+
import type { ResolvedSketchFaceDraftSource, RetainedFaceDraftResolution } from "./../sketchFaceDraftKernel.js";
|
|
5
|
+
import type { InterferenceOperand, InterferenceResult, WallThicknessResult } from "./../cadAnalysis.js";
|
|
4
6
|
export type CadModifierKind = "chamfer" | "fillet";
|
|
5
7
|
export type CadModifierEdge = {
|
|
6
8
|
id: number;
|
|
@@ -73,6 +75,21 @@ export type CadModifierWorkerRequest = {
|
|
|
73
75
|
type: "boolean";
|
|
74
76
|
requestId: number;
|
|
75
77
|
parts: CadModifierMeshPart[];
|
|
78
|
+
}
|
|
79
|
+
/** Read-only analysis (#380): exact gaps and overlap volumes between the operands. */
|
|
80
|
+
| {
|
|
81
|
+
type: "interference";
|
|
82
|
+
requestId: number;
|
|
83
|
+
operands: Array<InterferenceOperand & {
|
|
84
|
+
part: CadModifierMeshPart;
|
|
85
|
+
}>;
|
|
86
|
+
clearance: number;
|
|
87
|
+
}
|
|
88
|
+
/** Read-only analysis (#380): the sampled thinnest wall of one solid. */
|
|
89
|
+
| {
|
|
90
|
+
type: "wall-thickness";
|
|
91
|
+
requestId: number;
|
|
92
|
+
part: CadModifierMeshPart;
|
|
76
93
|
} | {
|
|
77
94
|
type: "draft-prism";
|
|
78
95
|
requestId: number;
|
|
@@ -89,11 +106,32 @@ export type CadModifierWorkerRequest = {
|
|
|
89
106
|
pullDirection: "x" | "y" | "z" | "-x" | "-y" | "-z";
|
|
90
107
|
brepTransform?: number[];
|
|
91
108
|
}
|
|
109
|
+
/**
|
|
110
|
+
* Draft one face of an undrafted sketch extrusion and keep it as a feature:
|
|
111
|
+
* the draft is made in the source's own B-rep frame, and the answer carries
|
|
112
|
+
* what the retained record needs (#384).
|
|
113
|
+
*/
|
|
114
|
+
| {
|
|
115
|
+
type: "retained-face-draft";
|
|
116
|
+
requestId: number;
|
|
117
|
+
resolution: RetainedFaceDraftResolution;
|
|
118
|
+
}
|
|
92
119
|
/** Build the parts as one exact solid, so a primitive gains B-rep faces to colour and draft. */
|
|
93
120
|
| {
|
|
94
121
|
type: "exact";
|
|
95
122
|
requestId: number;
|
|
96
123
|
parts: CadModifierMeshPart[];
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Hollow one shape to a wall of `thickness` mm, leaving `openFaces` off --
|
|
127
|
+
* direction names or indexes of the part's B-rep faces (#379).
|
|
128
|
+
*/
|
|
129
|
+
| {
|
|
130
|
+
type: "shell";
|
|
131
|
+
requestId: number;
|
|
132
|
+
part: CadModifierMeshPart;
|
|
133
|
+
thickness: number;
|
|
134
|
+
openFaces: Array<number | string>;
|
|
97
135
|
} | {
|
|
98
136
|
type: "dispose";
|
|
99
137
|
requestId: number;
|
|
@@ -126,6 +164,14 @@ export type CadModifierWorkerResponse = {
|
|
|
126
164
|
/** Volume before and after the holes, so the caller can tell a cut that did nothing. */
|
|
127
165
|
fusedVolume: number;
|
|
128
166
|
cutVolume: number;
|
|
167
|
+
} | {
|
|
168
|
+
type: "interference";
|
|
169
|
+
requestId: number;
|
|
170
|
+
result: InterferenceResult;
|
|
171
|
+
} | {
|
|
172
|
+
type: "wall-thickness";
|
|
173
|
+
requestId: number;
|
|
174
|
+
result: WallThicknessOutcome;
|
|
129
175
|
} | {
|
|
130
176
|
type: "draft-prism";
|
|
131
177
|
requestId: number;
|
|
@@ -146,6 +192,18 @@ export type CadModifierWorkerResponse = {
|
|
|
146
192
|
volume: number;
|
|
147
193
|
brep: string;
|
|
148
194
|
faceGroups?: number[];
|
|
195
|
+
} | {
|
|
196
|
+
type: "retained-face-draft";
|
|
197
|
+
requestId: number;
|
|
198
|
+
positions: Float32Array;
|
|
199
|
+
normals: Float32Array;
|
|
200
|
+
indices: Uint32Array;
|
|
201
|
+
triangleCount: number;
|
|
202
|
+
brep: string;
|
|
203
|
+
faceGroups: number[];
|
|
204
|
+
sourceFaceIds: string[];
|
|
205
|
+
resultFaceIds: string[];
|
|
206
|
+
resolved: Pick<ResolvedSketchFaceDraftSource, "faceId" | "normal" | "segmentMatch">;
|
|
149
207
|
} | {
|
|
150
208
|
type: "exact";
|
|
151
209
|
requestId: number;
|
|
@@ -156,6 +214,19 @@ export type CadModifierWorkerResponse = {
|
|
|
156
214
|
brep: string;
|
|
157
215
|
faceCount: number;
|
|
158
216
|
faceGroups: number[];
|
|
217
|
+
} | {
|
|
218
|
+
type: "shell";
|
|
219
|
+
requestId: number;
|
|
220
|
+
positions: Float32Array;
|
|
221
|
+
normals: Float32Array;
|
|
222
|
+
indices: Uint32Array;
|
|
223
|
+
triangleCount: number;
|
|
224
|
+
brep: string;
|
|
225
|
+
faceGroups: number[];
|
|
226
|
+
faceCount: number;
|
|
227
|
+
/** The exact solid's volume after and before, so the caller can say what went. */
|
|
228
|
+
volume: number;
|
|
229
|
+
sourceVolume: number;
|
|
159
230
|
} | {
|
|
160
231
|
type: "disposed";
|
|
161
232
|
requestId: number;
|
|
@@ -164,4 +235,15 @@ export type CadModifierWorkerResponse = {
|
|
|
164
235
|
requestId: number;
|
|
165
236
|
resetSession?: boolean;
|
|
166
237
|
} & LocalizedErrorPayload);
|
|
238
|
+
/** A sampled wall thickness, or why the solid could not be sampled at all. */
|
|
239
|
+
export type WallThicknessOutcome = {
|
|
240
|
+
ok: true;
|
|
241
|
+
value: WallThicknessResult;
|
|
242
|
+
} | {
|
|
243
|
+
ok: false;
|
|
244
|
+
refusal: {
|
|
245
|
+
reason: "no_faces" | "too_many_faces";
|
|
246
|
+
limit?: number;
|
|
247
|
+
};
|
|
248
|
+
};
|
|
167
249
|
//# sourceMappingURL=cadModifierTypes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cadModifierTypes.d.ts","sourceRoot":"","sources":["../../src/support/cadModifierTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"cadModifierTypes.d.ts","sourceRoot":"","sources":["../../src/support/cadModifierTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1276,7 +1276,21 @@
|
|
|
1276
1276
|
"edgeTreatmentFailed": "The CAD kernel could not complete this edge treatment",
|
|
1277
1277
|
"meshImportReset": "The selected mesh could not be converted into a closed CAD solid. The CAD kernel reset; try Separate Parts, ungrouping, or simplifying the object before adding edge features.",
|
|
1278
1278
|
"validatorReset": "The CAD kernel exposed an incomplete validation function and reset. Start the edge tool again; no page refresh is needed.",
|
|
1279
|
-
"memoryFaultReset": "The CAD kernel hit a memory fault and reset. Start the edge tool again; no page refresh is needed."
|
|
1279
|
+
"memoryFaultReset": "The CAD kernel hit a memory fault and reset. Start the edge tool again; no page refresh is needed.",
|
|
1280
|
+
"draftNotRetained": "The face draft cannot be kept with the sketch: the drafted face is not flat, or no longer matches one side of the profile. Undo the change, or draft another face.",
|
|
1281
|
+
"draftNotReplayable": "The draft this shape keeps cannot be rebuilt, because the shape has been mirrored, resized, filleted or chamfered since it was drafted. Undo that change first; the shape and its sketch are left as they were.",
|
|
1282
|
+
"shell": {
|
|
1283
|
+
"thicknessInvalid": "Enter a wall thickness greater than zero.",
|
|
1284
|
+
"noVolume": "This shape has no volume to hollow out.",
|
|
1285
|
+
"faceIndexInvalid": "One of the faces to leave open is not on this shape. Choose faces from the Faces card's numbers.",
|
|
1286
|
+
"noFlatFace": "This shape has no flat face on that side to leave open. Hollow it sealed, or choose its faces by number.",
|
|
1287
|
+
"everyFaceOpen": "Leaving every face open would remove the shape rather than hollow it. Leave at least one face closed.",
|
|
1288
|
+
"tooThick": "That wall is too thick for this shape: hollowing it leaves no cavity. Try a thinner wall.",
|
|
1289
|
+
"cannotOffset": "This shape's surfaces cannot be offset inwards into a sound wall. A ball with unequal radii, a pointed cone, a tube, ring, round roof or loft fails this way at any thickness; cut a cavity with a hole shape instead.",
|
|
1290
|
+
"unreadable": "The hollowed solid could not be stored. Try a different wall thickness.",
|
|
1291
|
+
"unsupported": "This shape cannot be hollowed exactly. Hollow a box, cylinder, polygon, pyramid, roof, wedge, sphere, torus or cone with a flat top, or a shape that already has exact faces.",
|
|
1292
|
+
"treated": "A shape with a fillet, chamfer or draft cannot be hollowed, because nothing could rebuild the treatment on the wall. Undo the treatment, hollow the shape, then treat it again."
|
|
1293
|
+
}
|
|
1280
1294
|
},
|
|
1281
1295
|
"mesh": {
|
|
1282
1296
|
"incompleteTriangles": "Mesh does not contain complete triangles",
|
|
@@ -237,6 +237,17 @@
|
|
|
237
237
|
"subsystem": "Desktop application origin",
|
|
238
238
|
"source": "../apps/desktop/main.cjs",
|
|
239
239
|
"ownerPage": "OPERATOR_CONFIGURATION.md#desktop-settings"
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"name": "SKETCHFORGE_LOCAL_DOWNLOAD_ROOT",
|
|
243
|
+
"default": "Unset; folder downloads are disabled.",
|
|
244
|
+
"required": false,
|
|
245
|
+
"validation": "Absolute or relative directory allowed as a destination for desktop folder downloads. The packaged desktop app sets this to the user's Downloads directory and binds its web server to 127.0.0.1. The route is disabled unless SKETCHFORGE_DESKTOP=1 and this root is set; requested folders must remain inside the root.",
|
|
246
|
+
"sensitive": false,
|
|
247
|
+
"subsystem": "Desktop folder downloads",
|
|
248
|
+
"source": "../apps/web/src/app/api/local-download/route.ts",
|
|
249
|
+
"additionalSources": ["../apps/desktop/main.cjs"],
|
|
250
|
+
"ownerPage": "OPERATOR_CONFIGURATION.md#desktop-settings"
|
|
240
251
|
}
|
|
241
252
|
]
|
|
242
253
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workplaneShapes.d.ts","sourceRoot":"","sources":["../src/workplaneShapes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAmB,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE/E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,UAE7C;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,SAAI,UAWhE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,SAAQ,UAE3D;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,cAAc,WAEvE;AAED,wBAAgB,mCAAmC,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,cAAc,CAQzG;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,UAE/C;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,UAE/C;AAED,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,UAGjD;AAOD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,cAAc;;;;;EASzD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,cAAc,WAMlD;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,cAAc;;;EASpE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,GAAE,OAAO,GAAG,OAAiB,UAQnH;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"workplaneShapes.d.ts","sourceRoot":"","sources":["../src/workplaneShapes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAmB,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE/E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,UAE7C;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,SAAI,UAWhE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,SAAQ,UAE3D;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,cAAc,WAEvE;AAED,wBAAgB,mCAAmC,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,cAAc,CAQzG;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,UAE/C;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,UAE/C;AAED,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,UAGjD;AAOD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,cAAc;;;;;EASzD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,cAAc,WAMlD;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,cAAc;;;EASpE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,GAAE,OAAO,GAAG,OAAiB,UAQnH;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,cAAc,UAoBnD;AAQD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,cAAc,WAE/D;AAmBD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,EAAE,YAqB1F;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,cAAc,YAEjE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,UAE5D;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,UAOnH;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,cAAc,iGASvD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,cAAc,CAQvG;AAED,wBAAgB,UAAU,CAAC,KAAK,CAAC,EAAE,OAAO,UAEzC;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,UAEtD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAsCvE;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,cAAc,WAYxE;AAWD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,cAAc,EAAE,UAE9D"}
|
package/dist/workplaneShapes.js
CHANGED
|
@@ -84,6 +84,11 @@ export function shapeTaperScaleAt(shape, normalizedHeight, axis = "width") {
|
|
|
84
84
|
return (bottom + (top - bottom) * t) / Math.max(0.01, base);
|
|
85
85
|
}
|
|
86
86
|
export function meshYawDegrees(shape) {
|
|
87
|
+
// Once a round primitive is tilted, yaw also sets the axis the tilt turns
|
|
88
|
+
// around. Keep the full viewport yaw in that case; only an untilted round
|
|
89
|
+
// mesh is invariant under snapping to a whole facet step.
|
|
90
|
+
if (shape.rotationX || shape.rotationZ)
|
|
91
|
+
return shape.rotation;
|
|
87
92
|
const isRoundPrimitive = !shape.importedMesh && (shape.kind === "cylinder" || shape.kind === "cone");
|
|
88
93
|
const isCircular = Math.abs(shapeWidth(shape) - shapeDepth(shape)) < 0.0005;
|
|
89
94
|
if (!isRoundPrimitive || !isCircular) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workplaneShapes.js","sourceRoot":"","sources":["../src/workplaneShapes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workplaneShapes.js","sourceRoot":"","sources":["../src/workplaneShapes.ts"],"names":[],"mappings":"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"}
|