occt-wasm 3.2.3 → 3.3.1
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/README.md +10 -10
- package/dist/index.d.ts +76 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +142 -3
- package/dist/index.js.map +1 -1
- package/dist/occt-wasm.wasm +0 -0
- package/dist/svg.d.ts +75 -0
- package/dist/svg.d.ts.map +1 -0
- package/dist/svg.js +304 -0
- package/dist/svg.js.map +1 -0
- package/dist/types.d.ts +18 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +12 -0
- package/dist/types.js.map +1 -1
- package/dist/xcaf-document.d.ts +1 -0
- package/dist/xcaf-document.d.ts.map +1 -1
- package/dist/xcaf-document.js.map +1 -1
- package/package.json +1 -1
package/dist/svg.js
ADDED
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Multiview SVG rendering for OCCT shapes.
|
|
3
|
+
*
|
|
4
|
+
* Renders a shape to compact, deterministic SVG by running OCCT hidden-line
|
|
5
|
+
* removal (`projectEdges`) per view, discretizing the projected edges
|
|
6
|
+
* (`wireframe`), and mapping the flattened 3D points into 2D screen space.
|
|
7
|
+
*
|
|
8
|
+
* The default output is a 4-up Front / Top / Right / Isometric grid with
|
|
9
|
+
* visible edges drawn solid and hidden edges dashed, a per-view XYZ gnomon,
|
|
10
|
+
* and an overall bounding-box annotation — a layout aimed at letting an
|
|
11
|
+
* automated agent reason about geometry it cannot otherwise see.
|
|
12
|
+
*
|
|
13
|
+
* @module
|
|
14
|
+
*/
|
|
15
|
+
const ORIGIN = { x: 0, y: 0, z: 0 };
|
|
16
|
+
// gp_Ax2(origin, dir, xAxis) uses Y = dir × xAxis as its vertical, so the
|
|
17
|
+
// screen-up axis below is computed the same way to match the HLR projection.
|
|
18
|
+
function basisFor(view) {
|
|
19
|
+
switch (view) {
|
|
20
|
+
case "front":
|
|
21
|
+
return { dir: v(0, 1, 0), sx: v(1, 0, 0), sy: v(0, 0, 1) };
|
|
22
|
+
case "back":
|
|
23
|
+
return { dir: v(0, -1, 0), sx: v(-1, 0, 0), sy: v(0, 0, 1) };
|
|
24
|
+
case "top":
|
|
25
|
+
return { dir: v(0, 0, -1), sx: v(1, 0, 0), sy: v(0, 1, 0) };
|
|
26
|
+
case "bottom":
|
|
27
|
+
return { dir: v(0, 0, 1), sx: v(1, 0, 0), sy: v(0, -1, 0) };
|
|
28
|
+
case "right":
|
|
29
|
+
return { dir: v(-1, 0, 0), sx: v(0, 1, 0), sy: v(0, 0, 1) };
|
|
30
|
+
case "left":
|
|
31
|
+
return { dir: v(1, 0, 0), sx: v(0, -1, 0), sy: v(0, 0, 1) };
|
|
32
|
+
case "iso": {
|
|
33
|
+
const dir = normalize(v(-1, -1, -1));
|
|
34
|
+
const sx = normalize(v(1, -1, 0));
|
|
35
|
+
// Screen-up = dir × sx, oriented so world +Z reads upward.
|
|
36
|
+
let sy = cross(dir, sx);
|
|
37
|
+
if (sy.z < 0)
|
|
38
|
+
sy = neg(sy);
|
|
39
|
+
return { dir, sx, sy };
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
const VIEW_LABEL = {
|
|
44
|
+
front: "Front",
|
|
45
|
+
back: "Back",
|
|
46
|
+
top: "Top",
|
|
47
|
+
bottom: "Bottom",
|
|
48
|
+
left: "Left",
|
|
49
|
+
right: "Right",
|
|
50
|
+
iso: "Iso",
|
|
51
|
+
};
|
|
52
|
+
// --- vector helpers ---------------------------------------------------------
|
|
53
|
+
function v(x, y, z) {
|
|
54
|
+
return { x, y, z };
|
|
55
|
+
}
|
|
56
|
+
function dot(a, b) {
|
|
57
|
+
return a.x * b.x + a.y * b.y + a.z * b.z;
|
|
58
|
+
}
|
|
59
|
+
function cross(a, b) {
|
|
60
|
+
return {
|
|
61
|
+
x: a.y * b.z - a.z * b.y,
|
|
62
|
+
y: a.z * b.x - a.x * b.z,
|
|
63
|
+
z: a.x * b.y - a.y * b.x,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
function neg(a) {
|
|
67
|
+
return { x: -a.x, y: -a.y, z: -a.z };
|
|
68
|
+
}
|
|
69
|
+
function normalize(a) {
|
|
70
|
+
const len = Math.hypot(a.x, a.y, a.z) || 1;
|
|
71
|
+
return { x: a.x / len, y: a.y / len, z: a.z / len };
|
|
72
|
+
}
|
|
73
|
+
const PROJECTION_FIELDS = [
|
|
74
|
+
"visibleOutline",
|
|
75
|
+
"visibleSmooth",
|
|
76
|
+
"visibleSharp",
|
|
77
|
+
"hiddenOutline",
|
|
78
|
+
"hiddenSmooth",
|
|
79
|
+
"hiddenSharp",
|
|
80
|
+
];
|
|
81
|
+
function collectEdges(kernel, shape, basis, deflection) {
|
|
82
|
+
const proj = kernel.projectEdges(shape, ORIGIN, basis.dir, basis.sx);
|
|
83
|
+
try {
|
|
84
|
+
const toLines = (h) => {
|
|
85
|
+
if (Number(h) === 0)
|
|
86
|
+
return [];
|
|
87
|
+
const { points, edgeGroups } = kernel.wireframe(h, deflection);
|
|
88
|
+
const lines = [];
|
|
89
|
+
for (let g = 0; g < edgeGroups.length; g += 3) {
|
|
90
|
+
const start = edgeGroups[g];
|
|
91
|
+
const count = edgeGroups[g + 1];
|
|
92
|
+
const line = [];
|
|
93
|
+
for (let i = 0; i < count; i += 3) {
|
|
94
|
+
const p = v(points[start + i], points[start + i + 1], points[start + i + 2]);
|
|
95
|
+
line.push(dot(p, basis.sx), dot(p, basis.sy));
|
|
96
|
+
}
|
|
97
|
+
if (line.length >= 4)
|
|
98
|
+
lines.push(line);
|
|
99
|
+
}
|
|
100
|
+
return lines;
|
|
101
|
+
};
|
|
102
|
+
return {
|
|
103
|
+
visible: [
|
|
104
|
+
...toLines(proj.visibleOutline),
|
|
105
|
+
...toLines(proj.visibleSmooth),
|
|
106
|
+
...toLines(proj.visibleSharp),
|
|
107
|
+
],
|
|
108
|
+
hidden: [
|
|
109
|
+
...toLines(proj.hiddenOutline),
|
|
110
|
+
...toLines(proj.hiddenSmooth),
|
|
111
|
+
...toLines(proj.hiddenSharp),
|
|
112
|
+
],
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
finally {
|
|
116
|
+
for (const field of PROJECTION_FIELDS) {
|
|
117
|
+
const h = proj[field];
|
|
118
|
+
if (Number(h) !== 0)
|
|
119
|
+
kernel.release(h);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
// --- SVG assembly -----------------------------------------------------------
|
|
124
|
+
function round(n) {
|
|
125
|
+
return Math.round(n * 100) / 100;
|
|
126
|
+
}
|
|
127
|
+
function esc(s) {
|
|
128
|
+
return s.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
|
|
129
|
+
}
|
|
130
|
+
function extentOf(views) {
|
|
131
|
+
let minU = Infinity;
|
|
132
|
+
let maxU = -Infinity;
|
|
133
|
+
let minV = Infinity;
|
|
134
|
+
let maxV = -Infinity;
|
|
135
|
+
for (const view of views) {
|
|
136
|
+
for (const line of [...view.visible, ...view.hidden]) {
|
|
137
|
+
for (let i = 0; i < line.length; i += 2) {
|
|
138
|
+
const u = line[i];
|
|
139
|
+
const vv = line[i + 1];
|
|
140
|
+
if (u < minU)
|
|
141
|
+
minU = u;
|
|
142
|
+
if (u > maxU)
|
|
143
|
+
maxU = u;
|
|
144
|
+
if (vv < minV)
|
|
145
|
+
minV = vv;
|
|
146
|
+
if (vv > maxV)
|
|
147
|
+
maxV = vv;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
if (!Number.isFinite(minU))
|
|
152
|
+
return { minU: 0, maxU: 0, minV: 0, maxV: 0 };
|
|
153
|
+
return { minU, maxU, minV, maxV };
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Build a view→pixel mapping for one panel. All panels share `scale` (so the
|
|
157
|
+
* part is the same size everywhere) but center on their own projected midpoint.
|
|
158
|
+
*/
|
|
159
|
+
function panelTransform(ext, scale, panelW, panelH, pad) {
|
|
160
|
+
const midU = (ext.minU + ext.maxU) / 2;
|
|
161
|
+
const midV = (ext.minV + ext.maxV) / 2;
|
|
162
|
+
// Screen y is inverted (v-up → y-down); center within the panel.
|
|
163
|
+
const offsetX = panelW / 2 - midU * scale;
|
|
164
|
+
const offsetY = panelH / 2 + midV * scale;
|
|
165
|
+
return { scale, offsetX, offsetY, inner: Math.min(panelW, panelH) - 2 * pad, panelW, panelH, pad };
|
|
166
|
+
}
|
|
167
|
+
function pathData(lines, t) {
|
|
168
|
+
let d = "";
|
|
169
|
+
for (const line of lines) {
|
|
170
|
+
for (let i = 0; i < line.length; i += 2) {
|
|
171
|
+
const x = round(line[i] * t.scale + t.offsetX);
|
|
172
|
+
const y = round(-line[i + 1] * t.scale + t.offsetY);
|
|
173
|
+
d += `${i === 0 ? "M" : "L"}${x} ${y}`;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
return d;
|
|
177
|
+
}
|
|
178
|
+
function gnomon(basis, t) {
|
|
179
|
+
const len = 18;
|
|
180
|
+
const ox = t.pad + len + 4;
|
|
181
|
+
const oy = t.panelH - t.pad - len - 4;
|
|
182
|
+
const axes = [
|
|
183
|
+
[v(1, 0, 0), "#d33", "X"],
|
|
184
|
+
[v(0, 1, 0), "#3a3", "Y"],
|
|
185
|
+
[v(0, 0, 1), "#36c", "Z"],
|
|
186
|
+
];
|
|
187
|
+
let s = "";
|
|
188
|
+
for (const [axis, color, name] of axes) {
|
|
189
|
+
const dx = dot(axis, basis.sx);
|
|
190
|
+
const dy = -dot(axis, basis.sy);
|
|
191
|
+
if (Math.hypot(dx, dy) < 0.05)
|
|
192
|
+
continue; // axis points into the screen
|
|
193
|
+
const ex = round(ox + dx * len);
|
|
194
|
+
const ey = round(oy + dy * len);
|
|
195
|
+
s += `<line x1="${round(ox)}" y1="${round(oy)}" x2="${ex}" y2="${ey}" stroke="${color}" stroke-width="1.5"/>`;
|
|
196
|
+
s += `<text x="${ex}" y="${ey}" font-size="9" fill="${color}" text-anchor="middle" dominant-baseline="middle">${name}</text>`;
|
|
197
|
+
}
|
|
198
|
+
return s;
|
|
199
|
+
}
|
|
200
|
+
function resolved(options) {
|
|
201
|
+
return {
|
|
202
|
+
width: options.width ?? 240,
|
|
203
|
+
height: options.height ?? 240,
|
|
204
|
+
padding: options.padding ?? 14,
|
|
205
|
+
showHidden: options.showHidden ?? true,
|
|
206
|
+
showGnomon: options.showGnomon ?? true,
|
|
207
|
+
strokeWidth: options.strokeWidth ?? 1,
|
|
208
|
+
background: options.background ?? "#ffffff",
|
|
209
|
+
visibleColor: options.visibleColor ?? "#111111",
|
|
210
|
+
hiddenColor: options.hiddenColor ?? "#9aa0a6",
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
function deflectionFor(kernel, shape, options) {
|
|
214
|
+
if (options.deflection !== undefined)
|
|
215
|
+
return options.deflection;
|
|
216
|
+
const bb = kernel.getBoundingBox(shape, false);
|
|
217
|
+
const diag = Math.hypot(bb.xmax - bb.xmin, bb.ymax - bb.ymin, bb.zmax - bb.zmin);
|
|
218
|
+
return Math.max(diag * 0.002, 1e-4);
|
|
219
|
+
}
|
|
220
|
+
function panelSvg(edges, basis, t, o, label) {
|
|
221
|
+
let body = `<rect x="0.5" y="0.5" width="${t.panelW - 1}" height="${t.panelH - 1}" fill="${o.background}" stroke="#e0e0e0"/>`;
|
|
222
|
+
if (o.showHidden && edges.hidden.length > 0) {
|
|
223
|
+
const d = pathData(edges.hidden, t);
|
|
224
|
+
if (d)
|
|
225
|
+
body += `<path d="${d}" fill="none" stroke="${o.hiddenColor}" stroke-width="${o.strokeWidth}" stroke-dasharray="3 2"/>`;
|
|
226
|
+
}
|
|
227
|
+
if (edges.visible.length > 0) {
|
|
228
|
+
const d = pathData(edges.visible, t);
|
|
229
|
+
if (d)
|
|
230
|
+
body += `<path d="${d}" fill="none" stroke="${o.visibleColor}" stroke-width="${o.strokeWidth}" stroke-linejoin="round" stroke-linecap="round"/>`;
|
|
231
|
+
}
|
|
232
|
+
if (o.showGnomon)
|
|
233
|
+
body += gnomon(basis, t);
|
|
234
|
+
if (label !== null)
|
|
235
|
+
body += `<text x="${t.pad}" y="${t.pad + 4}" font-size="11" fill="#333" font-family="sans-serif">${esc(label)}</text>`;
|
|
236
|
+
return body;
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Render a single named view of `shape` to a standalone SVG string.
|
|
240
|
+
*/
|
|
241
|
+
export function renderShapeSVG(kernel, shape, view = "front", options = {}) {
|
|
242
|
+
const o = resolved(options);
|
|
243
|
+
const basis = basisFor(view);
|
|
244
|
+
const deflection = deflectionFor(kernel, shape, options);
|
|
245
|
+
const edges = collectEdges(kernel, shape, basis, deflection);
|
|
246
|
+
const ext = extentOf([edges]);
|
|
247
|
+
const inner = Math.min(o.width, o.height) - 2 * o.padding;
|
|
248
|
+
const range = Math.max(ext.maxU - ext.minU, ext.maxV - ext.minV, 1e-9);
|
|
249
|
+
const scale = inner / range;
|
|
250
|
+
const t = panelTransform(ext, scale, o.width, o.height, o.padding);
|
|
251
|
+
const body = panelSvg(edges, basis, t, o, null);
|
|
252
|
+
return (`<svg xmlns="http://www.w3.org/2000/svg" width="${o.width}" height="${o.height}" ` +
|
|
253
|
+
`viewBox="0 0 ${o.width} ${o.height}">${body}</svg>`);
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Render a multiview grid (default Front / Top / Right / Iso) of `shape` to a
|
|
257
|
+
* single SVG string. All orthographic panels share one scale; an optional
|
|
258
|
+
* footer annotates the overall X×Y×Z size.
|
|
259
|
+
*/
|
|
260
|
+
export function renderMultiviewSVG(kernel, shape, options = {}) {
|
|
261
|
+
const o = resolved(options);
|
|
262
|
+
const views = options.views ?? ["front", "top", "right", "iso"];
|
|
263
|
+
const columns = options.columns ?? 2;
|
|
264
|
+
const showLabels = options.showLabels ?? true;
|
|
265
|
+
const showDimensions = options.showDimensions ?? true;
|
|
266
|
+
const deflection = deflectionFor(kernel, shape, options);
|
|
267
|
+
const bases = views.map(basisFor);
|
|
268
|
+
const edges = bases.map((b) => collectEdges(kernel, shape, b, deflection));
|
|
269
|
+
const extents = edges.map((e) => extentOf([e]));
|
|
270
|
+
// One global scale so the part is sized consistently across all panels.
|
|
271
|
+
const inner = Math.min(o.width, o.height) - 2 * o.padding;
|
|
272
|
+
let maxRange = 1e-9;
|
|
273
|
+
for (const ext of extents) {
|
|
274
|
+
maxRange = Math.max(maxRange, ext.maxU - ext.minU, ext.maxV - ext.minV);
|
|
275
|
+
}
|
|
276
|
+
const scale = inner / maxRange;
|
|
277
|
+
const rows = Math.ceil(views.length / columns);
|
|
278
|
+
const footerH = showDimensions ? 22 : 0;
|
|
279
|
+
const totalW = columns * o.width;
|
|
280
|
+
const totalH = rows * o.height + footerH;
|
|
281
|
+
let panels = "";
|
|
282
|
+
for (let i = 0; i < views.length; i++) {
|
|
283
|
+
const col = i % columns;
|
|
284
|
+
const row = Math.floor(i / columns);
|
|
285
|
+
const px = col * o.width;
|
|
286
|
+
const py = row * o.height;
|
|
287
|
+
const t = panelTransform(extents[i], scale, o.width, o.height, o.padding);
|
|
288
|
+
const label = showLabels ? VIEW_LABEL[views[i]] : null;
|
|
289
|
+
panels += `<g transform="translate(${px} ${py})">${panelSvg(edges[i], bases[i], t, o, label)}</g>`;
|
|
290
|
+
}
|
|
291
|
+
let footer = "";
|
|
292
|
+
if (showDimensions) {
|
|
293
|
+
const bb = kernel.getBoundingBox(shape, false);
|
|
294
|
+
const dims = `${round(bb.xmax - bb.xmin)} × ${round(bb.ymax - bb.ymin)} × ${round(bb.zmax - bb.zmin)} (X×Y×Z)`;
|
|
295
|
+
footer =
|
|
296
|
+
`<text x="${totalW / 2}" y="${rows * o.height + 15}" font-size="11" fill="#444" ` +
|
|
297
|
+
`font-family="sans-serif" text-anchor="middle">${esc(dims)}</text>`;
|
|
298
|
+
}
|
|
299
|
+
return (`<svg xmlns="http://www.w3.org/2000/svg" width="${totalW}" height="${totalH}" ` +
|
|
300
|
+
`viewBox="0 0 ${totalW} ${totalH}">` +
|
|
301
|
+
`<rect width="${totalW}" height="${totalH}" fill="${o.background}"/>` +
|
|
302
|
+
`${panels}${footer}</svg>`);
|
|
303
|
+
}
|
|
304
|
+
//# sourceMappingURL=svg.js.map
|
package/dist/svg.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svg.js","sourceRoot":"","sources":["../src/svg.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -44,6 +44,11 @@ export interface TessellateOptions {
|
|
|
44
44
|
linearDeflection?: number | undefined;
|
|
45
45
|
/** Maximum angular deviation in radians. Default: 0.5 */
|
|
46
46
|
angularDeflection?: number | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* Interpret `linearDeflection` relative to each edge's length
|
|
49
|
+
* (scale-independent meshing) instead of as an absolute distance.
|
|
50
|
+
*/
|
|
51
|
+
relative?: boolean | undefined;
|
|
47
52
|
}
|
|
48
53
|
/** Options for WASM module initialization. */
|
|
49
54
|
export interface InitOptions {
|
|
@@ -129,6 +134,8 @@ export type ShapeType = "compound" | "compsolid" | "solid" | "shell" | "face" |
|
|
|
129
134
|
export type ShapeOrientation = "forward" | "reversed" | "internal" | "external";
|
|
130
135
|
/** BRepClass_FaceClassifier result for a UV point relative to a face boundary. */
|
|
131
136
|
export type PointClassification = "in" | "on" | "out";
|
|
137
|
+
/** Which extreme of a shape's bounding box to align to a target coordinate. */
|
|
138
|
+
export type AlignAnchor = "min" | "center" | "max";
|
|
132
139
|
/** Geom_Surface subclass identifier returned by surfaceType. */
|
|
133
140
|
export type SurfaceKind = "plane" | "cylinder" | "cone" | "sphere" | "torus" | "bspline" | "bezier" | "offset" | "revolution" | "extrusion" | (string & {});
|
|
134
141
|
/** Geom_Curve subclass identifier returned by curveType. */
|
|
@@ -142,6 +149,17 @@ export declare enum TransitionMode {
|
|
|
142
149
|
/** Apply round-corner transitions at spine vertices. */
|
|
143
150
|
RoundCorner = 2
|
|
144
151
|
}
|
|
152
|
+
/** Profile-orientation mode for {@link OcctKernel.sweepOriented}. */
|
|
153
|
+
export declare enum SweepMode {
|
|
154
|
+
/** Minimal-torsion parallel transport — profile does not rotate (corrected Frenet). */
|
|
155
|
+
Fixed = 0,
|
|
156
|
+
/** Profile follows the spine's principal normal (Frenet trihedron). */
|
|
157
|
+
Frenet = 1,
|
|
158
|
+
/** Profile keeps a caller-supplied up/binormal direction constant. */
|
|
159
|
+
FixedUp = 2,
|
|
160
|
+
/** Orientation driven by an auxiliary guide spine (requires `auxSpine`). */
|
|
161
|
+
Auxiliary = 3
|
|
162
|
+
}
|
|
145
163
|
/** Join type for offset/fillet operations (BRepOffsetAPI_MakeOffset). */
|
|
146
164
|
export declare enum JoinType {
|
|
147
165
|
/** Arc interpolation at joints (default). */
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,CAAC,MAAM,gBAAgB,EAAE,OAAO,MAAM,CAAC;AAC9C,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAE1E,4DAA4D;AAC5D,MAAM,WAAW,IAAI;IACjB,kEAAkE;IAClE,SAAS,EAAE,YAAY,CAAC;IACxB,gEAAgE;IAChE,OAAO,EAAE,YAAY,CAAC;IACtB,0DAA0D;IAC1D,OAAO,EAAE,WAAW,CAAC;IACrB,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,aAAa,EAAE,MAAM,CAAC;IACtB,wGAAwG;IACxG,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACpC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,wCAAwC;AACxC,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,oCAAoC;AACpC,MAAM,WAAW,IAAI;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACb;AAED,yDAAyD;AACzD,MAAM,WAAW,iBAAiB;IAC9B,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -8,6 +8,18 @@ export var TransitionMode;
|
|
|
8
8
|
/** Apply round-corner transitions at spine vertices. */
|
|
9
9
|
TransitionMode[TransitionMode["RoundCorner"] = 2] = "RoundCorner";
|
|
10
10
|
})(TransitionMode || (TransitionMode = {}));
|
|
11
|
+
/** Profile-orientation mode for {@link OcctKernel.sweepOriented}. */
|
|
12
|
+
export var SweepMode;
|
|
13
|
+
(function (SweepMode) {
|
|
14
|
+
/** Minimal-torsion parallel transport — profile does not rotate (corrected Frenet). */
|
|
15
|
+
SweepMode[SweepMode["Fixed"] = 0] = "Fixed";
|
|
16
|
+
/** Profile follows the spine's principal normal (Frenet trihedron). */
|
|
17
|
+
SweepMode[SweepMode["Frenet"] = 1] = "Frenet";
|
|
18
|
+
/** Profile keeps a caller-supplied up/binormal direction constant. */
|
|
19
|
+
SweepMode[SweepMode["FixedUp"] = 2] = "FixedUp";
|
|
20
|
+
/** Orientation driven by an auxiliary guide spine (requires `auxSpine`). */
|
|
21
|
+
SweepMode[SweepMode["Auxiliary"] = 3] = "Auxiliary";
|
|
22
|
+
})(SweepMode || (SweepMode = {}));
|
|
11
23
|
/** Join type for offset/fillet operations (BRepOffsetAPI_MakeOffset). */
|
|
12
24
|
export var JoinType;
|
|
13
25
|
(function (JoinType) {
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/xcaf-document.d.ts
CHANGED
|
@@ -52,6 +52,7 @@ export interface RawXCAFKernel {
|
|
|
52
52
|
/** Emscripten FS interface needed for binary glTF export. */
|
|
53
53
|
export interface EmscriptenFS {
|
|
54
54
|
readFile(path: string): Uint8Array;
|
|
55
|
+
writeFile(path: string, data: Uint8Array): void;
|
|
55
56
|
unlink(path: string): void;
|
|
56
57
|
}
|
|
57
58
|
export declare class XCAFDocument {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xcaf-document.d.ts","sourceRoot":"","sources":["../src/xcaf-document.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xcaf-document.d.ts","sourceRoot":"","sources":["../src/xcaf-document.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xcaf-document.js","sourceRoot":"","sources":["../src/xcaf-document.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAWH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"xcaf-document.js","sourceRoot":"","sources":["../src/xcaf-document.ts"],"names":[],"mappings":"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"}
|