opengeometry 2.0.8 → 2.0.10

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.
@@ -1,30 +1,126 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
3
  export const memory: WebAssembly.Memory;
4
- export const __wbg_ogcylinder_free: (a: number, b: number) => void;
5
- export const ogcylinder_set_id: (a: number, b: number, c: number) => void;
6
- export const ogcylinder_id: (a: number) => [number, number];
7
- export const ogcylinder_new: (a: number, b: number) => number;
8
- export const ogcylinder_set_config: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
9
- export const ogcylinder_set_center: (a: number, b: number) => void;
10
- export const ogcylinder_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
11
- export const ogcylinder_set_translation: (a: number, b: number) => void;
12
- export const ogcylinder_set_rotation: (a: number, b: number) => void;
13
- export const ogcylinder_set_scale: (a: number, b: number) => [number, number];
14
- export const ogcylinder_generate_brep: (a: number) => [number, number];
15
- export const ogcylinder_clean_geometry: (a: number) => void;
16
- export const ogcylinder_generate_geometry: (a: number) => [number, number];
17
- export const ogcylinder_get_brep_serialized: (a: number) => [number, number];
18
- export const ogcylinder_get_local_brep_serialized: (a: number) => [number, number];
19
- export const ogcylinder_get_geometry_serialized: (a: number) => [number, number];
20
- export const ogcylinder_get_local_geometry_serialized: (a: number) => [number, number];
21
- export const ogcylinder_get_geometry_buffer: (a: number) => [number, number];
22
- export const ogcylinder_get_local_geometry_buffer: (a: number) => [number, number];
23
- export const ogcylinder_get_outline_geometry_serialized: (a: number) => [number, number];
24
- export const ogcylinder_get_local_outline_geometry_serialized: (a: number) => [number, number];
25
- export const ogcylinder_get_outline_geometry_buffer: (a: number) => [number, number];
26
- export const ogcylinder_get_local_outline_geometry_buffer: (a: number) => [number, number];
27
- export const ogcylinder_get_anchor: (a: number) => number;
4
+ export const __wbg_ogwedge_free: (a: number, b: number) => void;
5
+ export const ogwedge_set_id: (a: number, b: number, c: number) => void;
6
+ export const ogwedge_id: (a: number) => [number, number];
7
+ export const ogwedge_new: (a: number, b: number) => number;
8
+ export const ogwedge_set_config: (a: number, b: number, c: number, d: number, e: number) => [number, number];
9
+ export const ogwedge_set_center: (a: number, b: number) => void;
10
+ export const ogwedge_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
11
+ export const ogwedge_set_translation: (a: number, b: number) => void;
12
+ export const ogwedge_set_rotation: (a: number, b: number) => void;
13
+ export const ogwedge_set_scale: (a: number, b: number) => [number, number];
14
+ export const ogwedge_generate_brep: (a: number) => [number, number];
15
+ export const ogwedge_clean_geometry: (a: number) => void;
16
+ export const ogwedge_generate_geometry: (a: number) => [number, number];
17
+ export const ogwedge_get_brep_serialized: (a: number) => [number, number];
18
+ export const ogwedge_get_local_brep_serialized: (a: number) => [number, number];
19
+ export const ogwedge_get_geometry_serialized: (a: number) => [number, number];
20
+ export const ogwedge_get_local_geometry_serialized: (a: number) => [number, number];
21
+ export const ogwedge_get_geometry_buffer: (a: number) => [number, number];
22
+ export const ogwedge_get_local_geometry_buffer: (a: number) => [number, number];
23
+ export const ogwedge_get_outline_geometry_serialized: (a: number) => [number, number];
24
+ export const ogwedge_get_local_outline_geometry_serialized: (a: number) => [number, number];
25
+ export const ogwedge_get_outline_geometry_buffer: (a: number) => [number, number];
26
+ export const ogwedge_get_local_outline_geometry_buffer: (a: number) => [number, number];
27
+ export const ogwedge_get_anchor: (a: number) => number;
28
+ export const __wbg_ogsweep_free: (a: number, b: number) => void;
29
+ export const ogsweep_set_id: (a: number, b: number, c: number) => void;
30
+ export const ogsweep_id: (a: number) => [number, number];
31
+ export const ogsweep_new: (a: number, b: number) => number;
32
+ export const ogsweep_set_config: (a: number, b: number, c: number, d: number, e: number) => [number, number];
33
+ export const ogsweep_set_config_with_caps: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
34
+ export const ogsweep_set_caps: (a: number, b: number, c: number) => [number, number];
35
+ export const ogsweep_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
36
+ export const ogsweep_set_translation: (a: number, b: number) => void;
37
+ export const ogsweep_set_rotation: (a: number, b: number) => void;
38
+ export const ogsweep_set_scale: (a: number, b: number) => [number, number];
39
+ export const ogsweep_generate_brep: (a: number) => [number, number];
40
+ export const ogsweep_clean_geometry: (a: number) => void;
41
+ export const ogsweep_generate_geometry: (a: number) => [number, number];
42
+ export const ogsweep_get_brep_serialized: (a: number) => [number, number];
43
+ export const ogsweep_get_local_brep_serialized: (a: number) => [number, number];
44
+ export const ogsweep_get_geometry_serialized: (a: number) => [number, number];
45
+ export const ogsweep_get_local_geometry_serialized: (a: number) => [number, number];
46
+ export const ogsweep_get_geometry_buffer: (a: number) => [number, number];
47
+ export const ogsweep_get_local_geometry_buffer: (a: number) => [number, number];
48
+ export const ogsweep_get_outline_geometry_serialized: (a: number) => [number, number];
49
+ export const ogsweep_get_local_outline_geometry_serialized: (a: number) => [number, number];
50
+ export const ogsweep_get_outline_geometry_buffer: (a: number) => [number, number];
51
+ export const ogsweep_get_local_outline_geometry_buffer: (a: number) => [number, number];
52
+ export const ogsweep_get_anchor: (a: number) => number;
53
+ export const ogsweep_set_anchor: (a: number, b: number) => [number, number];
54
+ export const ogsweep_reset_anchor: (a: number) => [number, number];
55
+ export const __wbg_ogbooleanresult_free: (a: number, b: number) => void;
56
+ export const ogbooleanresult_brepSerialized: (a: number) => [number, number];
57
+ export const ogbooleanresult_geometrySerialized: (a: number) => [number, number];
58
+ export const ogbooleanresult_outlineGeometrySerialized: (a: number) => [number, number];
59
+ export const ogbooleanresult_reportJson: (a: number) => [number, number];
60
+ export const booleanUnion: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
61
+ export const booleanIntersection: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
62
+ export const booleanSubtraction: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
63
+ export const booleanSubtractionMany: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
64
+ export const __wbg_ogarc_free: (a: number, b: number) => void;
65
+ export const ogarc_set_id: (a: number, b: number, c: number) => void;
66
+ export const ogarc_id: (a: number) => [number, number];
67
+ export const ogarc_new: (a: number, b: number) => number;
68
+ export const ogarc_set_config: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
69
+ export const ogarc_set_center: (a: number, b: number) => void;
70
+ export const ogarc_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
71
+ export const ogarc_set_translation: (a: number, b: number) => void;
72
+ export const ogarc_set_rotation: (a: number, b: number) => void;
73
+ export const ogarc_set_scale: (a: number, b: number) => [number, number];
74
+ export const ogarc_generate_geometry: (a: number) => [number, number];
75
+ export const ogarc_dispose_points: (a: number) => void;
76
+ export const ogarc_destroy: (a: number) => void;
77
+ export const ogarc_get_brep_serialized: (a: number) => [number, number];
78
+ export const ogarc_get_local_brep_serialized: (a: number) => [number, number];
79
+ export const ogarc_get_geometry_serialized: (a: number) => [number, number];
80
+ export const ogarc_get_local_geometry_serialized: (a: number) => [number, number];
81
+ export const ogarc_get_geometry_buffer: (a: number) => [number, number];
82
+ export const ogarc_get_local_geometry_buffer: (a: number) => [number, number];
83
+ export const ogarc_get_anchor: (a: number) => number;
84
+ export const __wbg_ogfreeformgeometry_free: (a: number, b: number) => void;
85
+ export const ogfreeformgeometry_new: (a: number, b: number, c: number, d: number) => [number, number, number];
86
+ export const ogfreeformgeometry_id: (a: number) => [number, number];
87
+ export const ogfreeformgeometry_getBrepSerialized: (a: number) => [number, number];
88
+ export const ogfreeformgeometry_getLocalBrepSerialized: (a: number) => [number, number];
89
+ export const ogfreeformgeometry_getGeometrySerialized: (a: number) => [number, number];
90
+ export const ogfreeformgeometry_getGeometryBuffer: (a: number) => [number, number];
91
+ export const ogfreeformgeometry_getLocalGeometryBuffer: (a: number) => [number, number];
92
+ export const ogfreeformgeometry_getOutlineGeometrySerialized: (a: number) => [number, number];
93
+ export const ogfreeformgeometry_getOutlineGeometryBuffer: (a: number) => [number, number];
94
+ export const ogfreeformgeometry_getLocalOutlineGeometryBuffer: (a: number) => [number, number];
95
+ export const ogfreeformgeometry_getPlacementSerialized: (a: number) => [number, number];
96
+ export const ogfreeformgeometry_setPlacementSerialized: (a: number, b: number, c: number) => [number, number];
97
+ export const ogfreeformgeometry_setTransform: (a: number, b: number, c: number, d: number) => [number, number];
98
+ export const ogfreeformgeometry_setTranslation: (a: number, b: number) => void;
99
+ export const ogfreeformgeometry_setRotation: (a: number, b: number) => void;
100
+ export const ogfreeformgeometry_setScale: (a: number, b: number) => [number, number];
101
+ export const ogfreeformgeometry_setAnchor: (a: number, b: number) => void;
102
+ export const __wbg_ogcuboid_free: (a: number, b: number) => void;
103
+ export const ogcuboid_set_id: (a: number, b: number, c: number) => void;
104
+ export const ogcuboid_id: (a: number) => [number, number];
105
+ export const ogcuboid_new: (a: number, b: number) => number;
106
+ export const ogcuboid_set_config: (a: number, b: number, c: number, d: number, e: number) => [number, number];
107
+ export const ogcuboid_set_center: (a: number, b: number) => void;
108
+ export const ogcuboid_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
109
+ export const ogcuboid_set_translation: (a: number, b: number) => void;
110
+ export const ogcuboid_set_rotation: (a: number, b: number) => void;
111
+ export const ogcuboid_set_scale: (a: number, b: number) => [number, number];
112
+ export const ogcuboid_generate_geometry: (a: number) => [number, number];
113
+ export const ogcuboid_get_brep_serialized: (a: number) => [number, number];
114
+ export const ogcuboid_get_local_brep_serialized: (a: number) => [number, number];
115
+ export const ogcuboid_get_geometry_serialized: (a: number) => [number, number];
116
+ export const ogcuboid_get_local_geometry_serialized: (a: number) => [number, number];
117
+ export const ogcuboid_get_geometry_buffer: (a: number) => [number, number];
118
+ export const ogcuboid_get_local_geometry_buffer: (a: number) => [number, number];
119
+ export const ogcuboid_get_outline_geometry_serialized: (a: number) => [number, number];
120
+ export const ogcuboid_get_local_outline_geometry_serialized: (a: number) => [number, number];
121
+ export const ogcuboid_get_outline_geometry_buffer: (a: number) => [number, number];
122
+ export const ogcuboid_get_local_outline_geometry_buffer: (a: number) => [number, number];
123
+ export const ogcuboid_get_anchor: (a: number) => number;
28
124
  export const __wbg_ogpolygon_free: (a: number, b: number) => void;
29
125
  export const ogpolygon_set_id: (a: number, b: number, c: number) => void;
30
126
  export const ogpolygon_id: (a: number) => [number, number];
@@ -52,6 +148,30 @@ export const ogpolygon_set_anchor: (a: number, b: number) => [number, number];
52
148
  export const ogpolygon_reset_anchor: (a: number) => [number, number];
53
149
  export const ogpolygon_set_config: (a: number, b: number, c: number) => [number, number];
54
150
  export const ogpolygon_generate_geometry: (a: number) => [number, number];
151
+ export const __wbg_ogcylinder_free: (a: number, b: number) => void;
152
+ export const ogcylinder_set_id: (a: number, b: number, c: number) => void;
153
+ export const ogcylinder_id: (a: number) => [number, number];
154
+ export const ogcylinder_new: (a: number, b: number) => number;
155
+ export const ogcylinder_set_config: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
156
+ export const ogcylinder_set_center: (a: number, b: number) => void;
157
+ export const ogcylinder_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
158
+ export const ogcylinder_set_translation: (a: number, b: number) => void;
159
+ export const ogcylinder_set_rotation: (a: number, b: number) => void;
160
+ export const ogcylinder_set_scale: (a: number, b: number) => [number, number];
161
+ export const ogcylinder_generate_brep: (a: number) => [number, number];
162
+ export const ogcylinder_clean_geometry: (a: number) => void;
163
+ export const ogcylinder_generate_geometry: (a: number) => [number, number];
164
+ export const ogcylinder_get_brep_serialized: (a: number) => [number, number];
165
+ export const ogcylinder_get_local_brep_serialized: (a: number) => [number, number];
166
+ export const ogcylinder_get_geometry_serialized: (a: number) => [number, number];
167
+ export const ogcylinder_get_local_geometry_serialized: (a: number) => [number, number];
168
+ export const ogcylinder_get_geometry_buffer: (a: number) => [number, number];
169
+ export const ogcylinder_get_local_geometry_buffer: (a: number) => [number, number];
170
+ export const ogcylinder_get_outline_geometry_serialized: (a: number) => [number, number];
171
+ export const ogcylinder_get_local_outline_geometry_serialized: (a: number) => [number, number];
172
+ export const ogcylinder_get_outline_geometry_buffer: (a: number) => [number, number];
173
+ export const ogcylinder_get_local_outline_geometry_buffer: (a: number) => [number, number];
174
+ export const ogcylinder_get_anchor: (a: number) => number;
55
175
  export const extrudeBrepFace: (a: number, b: number, c: number) => [number, number, number, number];
56
176
  export const __wbg_ogsphere_free: (a: number, b: number) => void;
57
177
  export const ogsphere_set_id: (a: number, b: number, c: number) => void;
@@ -77,24 +197,6 @@ export const ogsphere_get_local_outline_geometry_serialized: (a: number) => [num
77
197
  export const ogsphere_get_outline_geometry_buffer: (a: number) => [number, number];
78
198
  export const ogsphere_get_local_outline_geometry_buffer: (a: number) => [number, number];
79
199
  export const ogsphere_get_anchor: (a: number) => number;
80
- export const __wbg_ogfreeformgeometry_free: (a: number, b: number) => void;
81
- export const ogfreeformgeometry_new: (a: number, b: number, c: number, d: number) => [number, number, number];
82
- export const ogfreeformgeometry_id: (a: number) => [number, number];
83
- export const ogfreeformgeometry_getBrepSerialized: (a: number) => [number, number];
84
- export const ogfreeformgeometry_getLocalBrepSerialized: (a: number) => [number, number];
85
- export const ogfreeformgeometry_getGeometrySerialized: (a: number) => [number, number];
86
- export const ogfreeformgeometry_getGeometryBuffer: (a: number) => [number, number];
87
- export const ogfreeformgeometry_getLocalGeometryBuffer: (a: number) => [number, number];
88
- export const ogfreeformgeometry_getOutlineGeometrySerialized: (a: number) => [number, number];
89
- export const ogfreeformgeometry_getOutlineGeometryBuffer: (a: number) => [number, number];
90
- export const ogfreeformgeometry_getLocalOutlineGeometryBuffer: (a: number) => [number, number];
91
- export const ogfreeformgeometry_getPlacementSerialized: (a: number) => [number, number];
92
- export const ogfreeformgeometry_setPlacementSerialized: (a: number, b: number, c: number) => [number, number];
93
- export const ogfreeformgeometry_setTransform: (a: number, b: number, c: number, d: number) => [number, number];
94
- export const ogfreeformgeometry_setTranslation: (a: number, b: number) => void;
95
- export const ogfreeformgeometry_setRotation: (a: number, b: number) => void;
96
- export const ogfreeformgeometry_setScale: (a: number, b: number) => [number, number];
97
- export const ogfreeformgeometry_setAnchor: (a: number, b: number) => void;
98
200
  export const __wbg_ogcurve_free: (a: number, b: number) => void;
99
201
  export const ogcurve_set_id: (a: number, b: number, c: number) => void;
100
202
  export const ogcurve_id: (a: number) => [number, number];
@@ -268,108 +370,6 @@ export const ogscenemanager_replaceBrepEntityInCurrentScene: (a: number, b: numb
268
370
  export const ogscenemanager_refreshBrepEntityInCurrentScene: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
269
371
  export const ogscenemanager_replaceBrepEntityInScene: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
270
372
  export const ogscenemanager_refreshBrepEntityInScene: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
271
- export const __wbg_ogcuboid_free: (a: number, b: number) => void;
272
- export const ogcuboid_set_id: (a: number, b: number, c: number) => void;
273
- export const ogcuboid_id: (a: number) => [number, number];
274
- export const ogcuboid_new: (a: number, b: number) => number;
275
- export const ogcuboid_set_config: (a: number, b: number, c: number, d: number, e: number) => [number, number];
276
- export const ogcuboid_set_center: (a: number, b: number) => void;
277
- export const ogcuboid_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
278
- export const ogcuboid_set_translation: (a: number, b: number) => void;
279
- export const ogcuboid_set_rotation: (a: number, b: number) => void;
280
- export const ogcuboid_set_scale: (a: number, b: number) => [number, number];
281
- export const ogcuboid_generate_geometry: (a: number) => [number, number];
282
- export const ogcuboid_get_brep_serialized: (a: number) => [number, number];
283
- export const ogcuboid_get_local_brep_serialized: (a: number) => [number, number];
284
- export const ogcuboid_get_geometry_serialized: (a: number) => [number, number];
285
- export const ogcuboid_get_local_geometry_serialized: (a: number) => [number, number];
286
- export const ogcuboid_get_geometry_buffer: (a: number) => [number, number];
287
- export const ogcuboid_get_local_geometry_buffer: (a: number) => [number, number];
288
- export const ogcuboid_get_outline_geometry_serialized: (a: number) => [number, number];
289
- export const ogcuboid_get_local_outline_geometry_serialized: (a: number) => [number, number];
290
- export const ogcuboid_get_outline_geometry_buffer: (a: number) => [number, number];
291
- export const ogcuboid_get_local_outline_geometry_buffer: (a: number) => [number, number];
292
- export const ogcuboid_get_anchor: (a: number) => number;
293
- export const __wbg_ogarc_free: (a: number, b: number) => void;
294
- export const ogarc_set_id: (a: number, b: number, c: number) => void;
295
- export const ogarc_id: (a: number) => [number, number];
296
- export const ogarc_new: (a: number, b: number) => number;
297
- export const ogarc_set_config: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
298
- export const ogarc_set_center: (a: number, b: number) => void;
299
- export const ogarc_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
300
- export const ogarc_set_translation: (a: number, b: number) => void;
301
- export const ogarc_set_rotation: (a: number, b: number) => void;
302
- export const ogarc_set_scale: (a: number, b: number) => [number, number];
303
- export const ogarc_generate_geometry: (a: number) => [number, number];
304
- export const ogarc_dispose_points: (a: number) => void;
305
- export const ogarc_destroy: (a: number) => void;
306
- export const ogarc_get_brep_serialized: (a: number) => [number, number];
307
- export const ogarc_get_local_brep_serialized: (a: number) => [number, number];
308
- export const ogarc_get_geometry_serialized: (a: number) => [number, number];
309
- export const ogarc_get_local_geometry_serialized: (a: number) => [number, number];
310
- export const ogarc_get_geometry_buffer: (a: number) => [number, number];
311
- export const ogarc_get_local_geometry_buffer: (a: number) => [number, number];
312
- export const ogarc_get_anchor: (a: number) => number;
313
- export const __wbg_ogsweep_free: (a: number, b: number) => void;
314
- export const ogsweep_set_id: (a: number, b: number, c: number) => void;
315
- export const ogsweep_id: (a: number) => [number, number];
316
- export const ogsweep_new: (a: number, b: number) => number;
317
- export const ogsweep_set_config: (a: number, b: number, c: number, d: number, e: number) => [number, number];
318
- export const ogsweep_set_config_with_caps: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number];
319
- export const ogsweep_set_caps: (a: number, b: number, c: number) => [number, number];
320
- export const ogsweep_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
321
- export const ogsweep_set_translation: (a: number, b: number) => void;
322
- export const ogsweep_set_rotation: (a: number, b: number) => void;
323
- export const ogsweep_set_scale: (a: number, b: number) => [number, number];
324
- export const ogsweep_generate_brep: (a: number) => [number, number];
325
- export const ogsweep_clean_geometry: (a: number) => void;
326
- export const ogsweep_generate_geometry: (a: number) => [number, number];
327
- export const ogsweep_get_brep_serialized: (a: number) => [number, number];
328
- export const ogsweep_get_local_brep_serialized: (a: number) => [number, number];
329
- export const ogsweep_get_geometry_serialized: (a: number) => [number, number];
330
- export const ogsweep_get_local_geometry_serialized: (a: number) => [number, number];
331
- export const ogsweep_get_geometry_buffer: (a: number) => [number, number];
332
- export const ogsweep_get_local_geometry_buffer: (a: number) => [number, number];
333
- export const ogsweep_get_outline_geometry_serialized: (a: number) => [number, number];
334
- export const ogsweep_get_local_outline_geometry_serialized: (a: number) => [number, number];
335
- export const ogsweep_get_outline_geometry_buffer: (a: number) => [number, number];
336
- export const ogsweep_get_local_outline_geometry_buffer: (a: number) => [number, number];
337
- export const ogsweep_get_anchor: (a: number) => number;
338
- export const ogsweep_set_anchor: (a: number, b: number) => [number, number];
339
- export const ogsweep_reset_anchor: (a: number) => [number, number];
340
- export const __wbg_ogwedge_free: (a: number, b: number) => void;
341
- export const ogwedge_set_id: (a: number, b: number, c: number) => void;
342
- export const ogwedge_id: (a: number) => [number, number];
343
- export const ogwedge_new: (a: number, b: number) => number;
344
- export const ogwedge_set_config: (a: number, b: number, c: number, d: number, e: number) => [number, number];
345
- export const ogwedge_set_center: (a: number, b: number) => void;
346
- export const ogwedge_set_transform: (a: number, b: number, c: number, d: number) => [number, number];
347
- export const ogwedge_set_translation: (a: number, b: number) => void;
348
- export const ogwedge_set_rotation: (a: number, b: number) => void;
349
- export const ogwedge_set_scale: (a: number, b: number) => [number, number];
350
- export const ogwedge_generate_brep: (a: number) => [number, number];
351
- export const ogwedge_clean_geometry: (a: number) => void;
352
- export const ogwedge_generate_geometry: (a: number) => [number, number];
353
- export const ogwedge_get_brep_serialized: (a: number) => [number, number];
354
- export const ogwedge_get_local_brep_serialized: (a: number) => [number, number];
355
- export const ogwedge_get_geometry_serialized: (a: number) => [number, number];
356
- export const ogwedge_get_local_geometry_serialized: (a: number) => [number, number];
357
- export const ogwedge_get_geometry_buffer: (a: number) => [number, number];
358
- export const ogwedge_get_local_geometry_buffer: (a: number) => [number, number];
359
- export const ogwedge_get_outline_geometry_serialized: (a: number) => [number, number];
360
- export const ogwedge_get_local_outline_geometry_serialized: (a: number) => [number, number];
361
- export const ogwedge_get_outline_geometry_buffer: (a: number) => [number, number];
362
- export const ogwedge_get_local_outline_geometry_buffer: (a: number) => [number, number];
363
- export const __wbg_ogbooleanresult_free: (a: number, b: number) => void;
364
- export const ogbooleanresult_brepSerialized: (a: number) => [number, number];
365
- export const ogbooleanresult_geometrySerialized: (a: number) => [number, number];
366
- export const ogbooleanresult_outlineGeometrySerialized: (a: number) => [number, number];
367
- export const ogbooleanresult_reportJson: (a: number) => [number, number];
368
- export const booleanUnion: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
369
- export const booleanIntersection: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
370
- export const booleanSubtraction: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
371
- export const booleanSubtractionMany: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
372
- export const ogwedge_get_anchor: (a: number) => number;
373
373
  export const __wbg_matrix4_free: (a: number, b: number) => void;
374
374
  export const matrix4_elements: (a: number) => [number, number];
375
375
  export const matrix4_new: () => number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opengeometry",
3
- "version": "2.0.8",
3
+ "version": "2.0.10",
4
4
  "description": "CAD kernel for the web built with Rust, WebAssembly, and Three.js for browser CAD, AEC/BIM, and geometry-heavy tools.",
5
5
  "author": "Vishwajeet Vinayak Mane",
6
6
  "license": "MPL-2.0",
@@ -50,7 +50,6 @@
50
50
  "three": ">=0.168.0"
51
51
  },
52
52
  "dependencies": {
53
- "tsc": "^2.0.4",
54
53
  "uuid": "^10.0.0"
55
54
  }
56
55
  }
@@ -1,11 +1,40 @@
1
1
  import * as THREE from "three";
2
+ import { Cuboid } from "../shapes/cuboid.js";
2
3
  import { Polyline } from "../primitives/polyline.js";
3
4
  import { Polygon } from "../shapes/polygon.js";
4
- export declare function createWallFromOffsetsExample(scene: THREE.Scene): {
5
+ export interface WallFromOffsetsOptions {
6
+ /**
7
+ * Number of doors to subtract from the extruded wall. Doors are placed at
8
+ * evenly distributed centerline-segment midpoints. Default `0` (no cuts).
9
+ */
10
+ doorCount?: number;
11
+ /**
12
+ * Cutter overshoot in millimeters. The debt sheet's `#6a` symptom is at
13
+ * 1mm; default 1mm so callers exercise the snap-tolerance regime by default
14
+ * when cuts are enabled.
15
+ */
16
+ overshootMm?: number;
17
+ /**
18
+ * Wall extrusion height in meters. Default `2.6` to match the example HTML.
19
+ */
20
+ height?: number;
21
+ }
22
+ /**
23
+ * Renders a human-readable description for a typed `BooleanError` (or any
24
+ * other thrown value). Used by the example HTML to surface kernel failures
25
+ * in a status panel without losing the structured payload.
26
+ */
27
+ export declare function describeWallSubtractError(error: unknown): string;
28
+ export declare function createWallFromOffsetsExample(scene: THREE.Scene, options?: WallFromOffsetsOptions): {
5
29
  centerline: Polyline;
6
30
  leftOffsetPolyline: Polyline;
7
31
  rightOffsetPolyline: Polyline;
8
32
  wallPolygon: Polygon;
9
33
  leftOffset: import("../primitives/polyline.js").IOffsetResult;
10
34
  rightOffset: import("../primitives/polyline.js").IOffsetResult;
35
+ cutResult: {
36
+ wall: THREE.Object3D;
37
+ cutters: Cuboid[];
38
+ } | null;
39
+ cutError: unknown;
11
40
  };
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Typed error hierarchy for boolean operations.
3
+ *
4
+ * The Rust kernel emits a structured `BooleanError` as JSON across the WASM
5
+ * boundary (see `main/opengeometry/src/booleans/error.rs`). This module parses
6
+ * that JSON and re-throws it as a typed `BooleanError` (or a more specific
7
+ * subclass) so app code can `instanceof`-discriminate without parsing message
8
+ * strings.
9
+ *
10
+ * Cutter indices are **0-based** to match `Vec` / array indexing on both
11
+ * sides of the boundary.
12
+ */
13
+ import * as THREE from "three";
14
+ export type BooleanErrorPhase = "input_validation" | "union_pre_pass" | "subtract_step" | "output_validation";
15
+ export type BooleanErrorReason = "invalid_operand" | "malformed_input" | "mixed_operand_kinds" | "unsupported_operand_kind" | "non_coplanar_planar_operands" | "topology_error" | "kernel_failure" | "non_manifold_edges" | "open_shell" | "coincident_faces" | "degenerate_triangle" | "empty_result" | "overlapping_cutters" | "cutter_exceeds_host";
16
+ interface KindPayload {
17
+ code: BooleanErrorReason;
18
+ other_index?: number;
19
+ axis?: string;
20
+ overshoot?: number;
21
+ }
22
+ interface BooleanErrorJson {
23
+ kind: KindPayload;
24
+ phase: BooleanErrorPhase;
25
+ cutter_index: number | null;
26
+ message: string;
27
+ details: string | null;
28
+ edge_samples: Array<[{
29
+ x: number;
30
+ y: number;
31
+ z: number;
32
+ }, {
33
+ x: number;
34
+ y: number;
35
+ z: number;
36
+ }]> | null;
37
+ }
38
+ /**
39
+ * Base class for every typed boolean error. Carries the structured payload the
40
+ * kernel emitted across WASM. Specialized subclasses (`OverlappingCuttersError`,
41
+ * `CutterExceedsHostError`, `NonManifoldOutputError`, `CoincidentFacesError`)
42
+ * narrow the payload for the variants that carry extra fields.
43
+ */
44
+ export declare class BooleanError extends Error {
45
+ readonly reason: BooleanErrorReason;
46
+ readonly phase: BooleanErrorPhase;
47
+ readonly cutterIndex: number | null;
48
+ readonly details: string | null;
49
+ readonly edgeSamples: ReadonlyArray<[THREE.Vector3, THREE.Vector3]> | null;
50
+ constructor(payload: BooleanErrorJson);
51
+ }
52
+ /**
53
+ * Two cutters overlap each other. `otherIndex` is the 0-based index of the
54
+ * cutter that conflicts with the one at `cutterIndex`.
55
+ */
56
+ export declare class OverlappingCuttersError extends BooleanError {
57
+ readonly otherIndex: number;
58
+ constructor(payload: BooleanErrorJson);
59
+ }
60
+ /**
61
+ * A cutter extends past the host's hull along the named axis.
62
+ */
63
+ export declare class CutterExceedsHostError extends BooleanError {
64
+ readonly axis: "x" | "y" | "z";
65
+ readonly overshoot: number;
66
+ constructor(payload: BooleanErrorJson);
67
+ }
68
+ /**
69
+ * Output mesh has open or over-shared edges after a boolean. `edgeSamples`
70
+ * carries up to ~8 sample non-manifold edges to aid app-side debugging.
71
+ */
72
+ export declare class NonManifoldOutputError extends BooleanError {
73
+ constructor(payload: BooleanErrorJson);
74
+ }
75
+ /**
76
+ * Cutter and host share a coplanar face. Distinct from
77
+ * `DegenerateTriangleError` (zero-area input) — see `06a-snap-tolerance.md`.
78
+ */
79
+ export declare class CoincidentFacesError extends BooleanError {
80
+ constructor(payload: BooleanErrorJson);
81
+ }
82
+ /**
83
+ * Parses a WASM-thrown error and returns the appropriate typed `BooleanError`
84
+ * subclass. If the error's message is not valid `BooleanError` JSON, returns a
85
+ * fallback `BooleanError` with `reason: "kernel_failure"` carrying the original
86
+ * string, so callers always get a typed error and never have to `try/catch`
87
+ * twice.
88
+ */
89
+ export declare function parseBooleanError(raw: unknown): BooleanError;
90
+ export {};
@@ -10,6 +10,23 @@ export type BooleanOperand = string | Record<string, unknown> | {
10
10
  };
11
11
  /**
12
12
  * Kernel-side boolean tuning options.
13
+ *
14
+ * `tolerance` is in **model units** (meters by convention). When omitted, the
15
+ * kernel auto-scales it to `operandsDiagonal * 1e-8` (clamped to a `1e-6`
16
+ * floor in many-subtract). This drives the kernel-side polygon / face math
17
+ * (vertex welding, plane coincidence, AABB enforcement).
18
+ *
19
+ * **NOTE: this tolerance does NOT control boolmesh's internal snap window.**
20
+ * Boolmesh has its own welding tolerance that may treat faces within ~1mm
21
+ * of each other as coincident, regardless of what `tolerance` you pass. If
22
+ * your cutter face sits within about 0.001 m – 0.01 m of a host face you
23
+ * may still hit a `DegenerateTriangle` / `CoincidentFaces` error path.
24
+ *
25
+ * **Recommended cutter overshoot for through-cuts:** `max(hostThickness *
26
+ * 0.05, 0.01)` in model units. See `knowledge/boolean-tolerance-guide.md`.
27
+ *
28
+ * `mergeCoplanarFaces` (default `true`) controls whether the planar pipeline
29
+ * merges coplanar adjacent faces in its output.
13
30
  */
14
31
  export interface BooleanKernelOptions {
15
32
  tolerance?: number;
@@ -23,7 +40,7 @@ export interface BooleanKernelOptions {
23
40
  * the host's appearance unchanged.
24
41
  */
25
42
  export interface BooleanRenderOptions {
26
- color?: number;
43
+ color?: THREE.ColorRepresentation;
27
44
  opacity?: number;
28
45
  transparent?: boolean;
29
46
  side?: THREE.Side;
@@ -68,7 +85,14 @@ export declare class BooleanResult extends THREE.Mesh {
68
85
  private _outlineEnabled;
69
86
  private _fatOutlines;
70
87
  private _outlineWidth;
71
- constructor(kernelResult: KernelBooleanResult, options?: BooleanRenderOptions, sourceMaterial?: THREE.Material | null);
88
+ constructor(kernelResult: KernelBooleanResult, options?: BooleanRenderOptions, host?: BooleanOperand | null);
89
+ /**
90
+ * Updates the result mesh's color in place without re-running the boolean
91
+ * pipeline. Accepts any value Three.js accepts (`number`, hex string, css
92
+ * color name, or `THREE.Color`). No-op for materials without a `color` field.
93
+ */
94
+ set color(value: THREE.ColorRepresentation);
95
+ get color(): THREE.Color | null;
72
96
  /**
73
97
  * Rebuilds the mesh, cached BRep payload, and outline geometry from the kernel output.
74
98
  */
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Chamfers (bevels) the specified edges of a BRep by a given distance.
3
+ *
4
+ * edgeIds: array of edge indices to chamfer (0-based, from brep.edges).
5
+ * distance: retraction distance along each adjacent face.
6
+ *
7
+ * Returns a JSON-serialized BRep of the result.
8
+ * Throws if the distance exceeds a face extent or an edge id is invalid.
9
+ */
10
+ export declare function chamferEdges(brepJson: string, edgeIds: number[], distance: number): string;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Applies a draft angle to the specified faces of a BRep.
3
+ *
4
+ * faceIds: array of face indices (0-based) to draft.
5
+ * neutralPlaneNormal: normal of the neutral plane (pull direction).
6
+ * angleRad: draft angle in radians (must be < π/2).
7
+ *
8
+ * Returns a JSON-serialized BRep of the result.
9
+ */
10
+ export declare function draftFaces(brepJson: string, faceIds: number[], neutralPlaneNormal: {
11
+ x: number;
12
+ y: number;
13
+ z: number;
14
+ }, angleRad: number): string;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Rounds (fillets) the specified edges of a closed solid BRep with a constant
3
+ * radius. Each filleted edge becomes a curved tangent strip of radius `radius`.
4
+ *
5
+ * edgeIds: array of edge indices to fillet (0-based, from brep.edges).
6
+ * radius: fillet radius in model units. Must be positive and less than the
7
+ * inradius of both adjacent faces along the edge.
8
+ * segments: angular resolution of the cylindrical cutter (default 16).
9
+ *
10
+ * Returns a JSON-serialized BRep of the result.
11
+ * Throws if the radius exceeds the safe bound or an edge id is invalid.
12
+ */
13
+ export declare function filletEdges(brepJson: string, edgeIds: number[], radius: number, segments?: number): string;
@@ -2,4 +2,5 @@
2
2
  * Kernel-backed boolean helpers and renderable result mesh.
3
3
  */
4
4
  export * from "./boolean.js";
5
+ export * from "./boolean-errors.js";
5
6
  export * from "./extrude.js";
@@ -0,0 +1,16 @@
1
+ export interface LoftOptions {
2
+ closed?: boolean;
3
+ tolerance?: number;
4
+ }
5
+ /**
6
+ * Lofts between N profiles with G0 (positional) continuity.
7
+ *
8
+ * Each profile is a flat array of xyz coordinates (3 floats per point).
9
+ * All profiles must have the same vertex count.
10
+ *
11
+ * Returns a JSON-serialized BRep of the lofted solid.
12
+ *
13
+ * On failure the kernel throws a structured LoftError string. Handle it with
14
+ * try/catch and inspect the message for the error variant.
15
+ */
16
+ export declare function loftProfiles(profiles: number[][], options?: LoftOptions): string;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Mirrors a BRep about a plane defined by an origin and a normal.
3
+ *
4
+ * planeOrigin: any point on the mirror plane.
5
+ * planeNormal: unit normal of the mirror plane.
6
+ * weld: if true, attempt to merge the original and mirrored BReps into a
7
+ * single solid by stitching the parting faces.
8
+ *
9
+ * Returns a JSON-serialized BRep of the result.
10
+ * Throws MirrorError::PlaneIntersectsSolid if weld=true and the plane
11
+ * cuts through the interior.
12
+ */
13
+ export declare function mirrorAboutPlane(brepJson: string, planeOrigin: {
14
+ x: number;
15
+ y: number;
16
+ z: number;
17
+ }, planeNormal: {
18
+ x: number;
19
+ y: number;
20
+ z: number;
21
+ }, weld: boolean): string;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Creates a circular pattern of a BRep around an axis.
3
+ *
4
+ * axisOrigin: a point on the rotation axis.
5
+ * axisDirection: unit vector along the rotation axis.
6
+ * sweepRad: total angular span to distribute instances over (2*PI = full circle).
7
+ * count: number of instances.
8
+ *
9
+ * Returns a JSON-serialized array of BReps (Vec<Brep>).
10
+ */
11
+ export declare function patternCircular(brepJson: string, axisOrigin: {
12
+ x: number;
13
+ y: number;
14
+ z: number;
15
+ }, axisDirection: {
16
+ x: number;
17
+ y: number;
18
+ z: number;
19
+ }, sweepRad: number, count: number): string;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Creates a linear pattern of a BRep along a direction vector.
3
+ *
4
+ * direction: step vector (does not need to be unit-length; its magnitude
5
+ * sets the per-instance offset when combined with pitch).
6
+ * pitch: spacing between instances along the direction vector.
7
+ * count: number of instances to produce (including the original position).
8
+ *
9
+ * Returns a JSON-serialized array of BReps (Vec<Brep>).
10
+ */
11
+ export declare function patternLinear(brepJson: string, direction: {
12
+ x: number;
13
+ y: number;
14
+ z: number;
15
+ }, pitch: number, count: number): string;