@faicad/faijs 0.31.1 → 0.32.2

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.
Files changed (1538) hide show
  1. package/dist/api/api-namespace.d.ts.map +1 -1
  2. package/dist/api/api-namespace.js +9 -3
  3. package/dist/api/api-namespace.js.map +1 -1
  4. package/dist/api/boolean-op/index.d.ts.map +1 -1
  5. package/dist/api/boolean-op/index.js +1 -0
  6. package/dist/api/boolean-op/index.js.map +1 -1
  7. package/dist/api/boolean.d.ts.map +1 -1
  8. package/dist/api/boolean.js +4 -0
  9. package/dist/api/boolean.js.map +1 -1
  10. package/dist/api/brep-operations/joinery-brep.js +10 -10
  11. package/dist/api/brep-operations/joinery-brep.js.map +1 -1
  12. package/dist/api/chamfer.d.ts.map +1 -1
  13. package/dist/api/chamfer.js +1 -0
  14. package/dist/api/chamfer.js.map +1 -1
  15. package/dist/api/curve-sketch/index.d.ts.map +1 -1
  16. package/dist/api/curve-sketch/index.js +3 -0
  17. package/dist/api/curve-sketch/index.js.map +1 -1
  18. package/dist/api/draft.d.ts.map +1 -1
  19. package/dist/api/draft.js +1 -0
  20. package/dist/api/draft.js.map +1 -1
  21. package/dist/api/engrave.d.ts.map +1 -1
  22. package/dist/api/engrave.js +1 -0
  23. package/dist/api/engrave.js.map +1 -1
  24. package/dist/api/extrude.d.ts.map +1 -1
  25. package/dist/api/extrude.js +18 -17
  26. package/dist/api/extrude.js.map +1 -1
  27. package/dist/api/feature-repair.d.ts.map +1 -1
  28. package/dist/api/feature-repair.js +6 -0
  29. package/dist/api/feature-repair.js.map +1 -1
  30. package/dist/api/fillet-variable.d.ts.map +1 -1
  31. package/dist/api/fillet-variable.js +1 -0
  32. package/dist/api/fillet-variable.js.map +1 -1
  33. package/dist/api/fillet.d.ts.map +1 -1
  34. package/dist/api/fillet.js +1 -0
  35. package/dist/api/fillet.js.map +1 -1
  36. package/dist/api/generated/operations.js +16 -16
  37. package/dist/api/generated/operations.js.map +1 -1
  38. package/dist/api/generated/sketching.js +1 -1
  39. package/dist/api/generated/sketching.js.map +1 -1
  40. package/dist/api/generated/topology.js +18 -18
  41. package/dist/api/generated/topology.js.map +1 -1
  42. package/dist/api/helix.d.ts.map +1 -1
  43. package/dist/api/helix.js +1 -0
  44. package/dist/api/helix.js.map +1 -1
  45. package/dist/api/import-brep.d.ts.map +1 -1
  46. package/dist/api/import-brep.js +1 -0
  47. package/dist/api/import-brep.js.map +1 -1
  48. package/dist/api/import-step.d.ts.map +1 -1
  49. package/dist/api/import-step.js +1 -0
  50. package/dist/api/import-step.js.map +1 -1
  51. package/dist/api/index.d.ts +5 -2
  52. package/dist/api/index.d.ts.map +1 -1
  53. package/dist/api/index.js +3 -0
  54. package/dist/api/index.js.map +1 -1
  55. package/dist/api/loft-advanced.d.ts +66 -0
  56. package/dist/api/loft-advanced.d.ts.map +1 -0
  57. package/dist/api/loft-advanced.js +112 -0
  58. package/dist/api/loft-advanced.js.map +1 -0
  59. package/dist/api/loft.d.ts +16 -23
  60. package/dist/api/loft.d.ts.map +1 -1
  61. package/dist/api/loft.js +22 -40
  62. package/dist/api/loft.js.map +1 -1
  63. package/dist/api/measure-query/index.d.ts.map +1 -1
  64. package/dist/api/measure-query/index.js +2 -0
  65. package/dist/api/measure-query/index.js.map +1 -1
  66. package/dist/api/pattern.d.ts.map +1 -1
  67. package/dist/api/pattern.js +1 -0
  68. package/dist/api/pattern.js.map +1 -1
  69. package/dist/api/place.d.ts.map +1 -1
  70. package/dist/api/place.js +1 -0
  71. package/dist/api/place.js.map +1 -1
  72. package/dist/api/profile.d.ts.map +1 -1
  73. package/dist/api/profile.js +1 -0
  74. package/dist/api/profile.js.map +1 -1
  75. package/dist/api/punch-hole.d.ts.map +1 -1
  76. package/dist/api/punch-hole.js +1 -0
  77. package/dist/api/punch-hole.js.map +1 -1
  78. package/dist/api/replicate.d.ts.map +1 -1
  79. package/dist/api/replicate.js +6 -0
  80. package/dist/api/replicate.js.map +1 -1
  81. package/dist/api/revolve.d.ts.map +1 -1
  82. package/dist/api/revolve.js +1 -0
  83. package/dist/api/revolve.js.map +1 -1
  84. package/dist/api/screw.d.ts.map +1 -1
  85. package/dist/api/screw.js +1 -0
  86. package/dist/api/screw.js.map +1 -1
  87. package/dist/api/sdf.d.ts.map +1 -1
  88. package/dist/api/sdf.js +1 -0
  89. package/dist/api/sdf.js.map +1 -1
  90. package/dist/api/shell.d.ts.map +1 -1
  91. package/dist/api/shell.js +1 -0
  92. package/dist/api/shell.js.map +1 -1
  93. package/dist/api/sketch-on-face.d.ts +34 -30
  94. package/dist/api/sketch-on-face.d.ts.map +1 -1
  95. package/dist/api/sketch-on-face.js +41 -31
  96. package/dist/api/sketch-on-face.js.map +1 -1
  97. package/dist/api/sketch-on-plane.d.ts.map +1 -1
  98. package/dist/api/sketch-on-plane.js +1 -0
  99. package/dist/api/sketch-on-plane.js.map +1 -1
  100. package/dist/api/sketch-on-surface.d.ts +76 -0
  101. package/dist/api/sketch-on-surface.d.ts.map +1 -0
  102. package/dist/api/sketch-on-surface.js +99 -0
  103. package/dist/api/sketch-on-surface.js.map +1 -0
  104. package/dist/api/solid-offset/index.d.ts.map +1 -1
  105. package/dist/api/solid-offset/index.js +1 -0
  106. package/dist/api/solid-offset/index.js.map +1 -1
  107. package/dist/api/split.d.ts.map +1 -1
  108. package/dist/api/split.js +1 -0
  109. package/dist/api/split.js.map +1 -1
  110. package/dist/api/surface/arg-spec.d.ts +5 -4
  111. package/dist/api/surface/arg-spec.d.ts.map +1 -1
  112. package/dist/api/surface/arg-spec.js +2 -2
  113. package/dist/api/surface/arg-spec.js.map +1 -1
  114. package/dist/api/surface-face/index.d.ts.map +1 -1
  115. package/dist/api/surface-face/index.js +5 -0
  116. package/dist/api/surface-face/index.js.map +1 -1
  117. package/dist/api/surface.d.ts.map +1 -1
  118. package/dist/api/surface.js +1 -0
  119. package/dist/api/surface.js.map +1 -1
  120. package/dist/api/sweep-advanced.d.ts +117 -0
  121. package/dist/api/sweep-advanced.d.ts.map +1 -0
  122. package/dist/api/sweep-advanced.js +94 -0
  123. package/dist/api/sweep-advanced.js.map +1 -0
  124. package/dist/api/sweep.d.ts +18 -88
  125. package/dist/api/sweep.d.ts.map +1 -1
  126. package/dist/api/sweep.js +27 -30
  127. package/dist/api/sweep.js.map +1 -1
  128. package/dist/api/thicken.d.ts.map +1 -1
  129. package/dist/api/thicken.js +1 -0
  130. package/dist/api/thicken.js.map +1 -1
  131. package/dist/api/transform.d.ts.map +1 -1
  132. package/dist/api/transform.js +2 -0
  133. package/dist/api/transform.js.map +1 -1
  134. package/dist/api/wire.d.ts.map +1 -1
  135. package/dist/api/wire.js +1 -0
  136. package/dist/api/wire.js.map +1 -1
  137. package/dist/boolean/cross-section.d.ts +7 -6
  138. package/dist/boolean/cross-section.d.ts.map +1 -1
  139. package/dist/boolean/cross-section.js +38 -27
  140. package/dist/boolean/cross-section.js.map +1 -1
  141. package/dist/boolean/deriveNormals.d.ts +5 -5
  142. package/dist/boolean/deriveNormals.d.ts.map +1 -1
  143. package/dist/boolean/deriveNormals.js +18 -18
  144. package/dist/boolean/deriveNormals.js.map +1 -1
  145. package/dist/boolean/extrude-helpers.d.ts +6 -6
  146. package/dist/boolean/extrude-helpers.d.ts.map +1 -1
  147. package/dist/boolean/extrude-helpers.js +6 -6
  148. package/dist/boolean/extrude-helpers.js.map +1 -1
  149. package/dist/boolean/geo-convert.d.ts +11 -8
  150. package/dist/boolean/geo-convert.d.ts.map +1 -1
  151. package/dist/boolean/geo-convert.js +17 -73
  152. package/dist/boolean/geo-convert.js.map +1 -1
  153. package/dist/boolean/index.js.map +1 -1
  154. package/dist/brep/brep-ops.d.ts +5 -5
  155. package/dist/brep/brep-ops.d.ts.map +1 -1
  156. package/dist/brep/brep-ops.js +42 -42
  157. package/dist/brep/brep-ops.js.map +1 -1
  158. package/dist/brep/engine/adapters/brep-mock.d.ts.map +1 -1
  159. package/dist/brep/engine/adapters/brep-mock.js +24 -0
  160. package/dist/brep/engine/adapters/brep-mock.js.map +1 -1
  161. package/dist/brep/engine/primitives.d.ts +30 -0
  162. package/dist/brep/engine/primitives.d.ts.map +1 -1
  163. package/dist/brep/engine/primitives.js.map +1 -1
  164. package/dist/brepkit-kernel/brepkitKernel.d.ts.map +1 -1
  165. package/dist/brepkit-kernel/brepkitKernel.js +138 -0
  166. package/dist/brepkit-kernel/brepkitKernel.js.map +1 -1
  167. package/dist/cad-runtime/runtime.d.ts.map +1 -1
  168. package/dist/cad-runtime/runtime.js +5 -2
  169. package/dist/cad-runtime/runtime.js.map +1 -1
  170. package/dist/define-op.d.ts +16 -7
  171. package/dist/define-op.d.ts.map +1 -1
  172. package/dist/define-op.js +2 -0
  173. package/dist/define-op.js.map +1 -1
  174. package/dist/index.d.ts +1 -0
  175. package/dist/index.d.ts.map +1 -1
  176. package/dist/index.js.map +1 -1
  177. package/dist/lang/codegen.d.ts +14 -3
  178. package/dist/lang/codegen.d.ts.map +1 -1
  179. package/dist/lang/codegen.js +80 -5
  180. package/dist/lang/codegen.js.map +1 -1
  181. package/dist/lang/metadata-extractor.d.ts +10 -3
  182. package/dist/lang/metadata-extractor.d.ts.map +1 -1
  183. package/dist/lang/metadata-extractor.js +160 -65
  184. package/dist/lang/metadata-extractor.js.map +1 -1
  185. package/dist/lang/symbol-table.generated.d.ts +3 -0
  186. package/dist/lang/symbol-table.generated.d.ts.map +1 -1
  187. package/dist/lang/symbol-table.generated.js +3 -0
  188. package/dist/lang/symbol-table.generated.js.map +1 -1
  189. package/dist/math3d/Box3.d.ts +86 -0
  190. package/dist/math3d/Box3.d.ts.map +1 -0
  191. package/dist/math3d/Box3.js +149 -0
  192. package/dist/math3d/Box3.js.map +1 -0
  193. package/dist/math3d/Euler.d.ts +64 -0
  194. package/dist/math3d/Euler.d.ts.map +1 -0
  195. package/dist/math3d/Euler.js +94 -0
  196. package/dist/math3d/Euler.js.map +1 -0
  197. package/dist/math3d/Mat4.d.ts +196 -0
  198. package/dist/math3d/Mat4.d.ts.map +1 -0
  199. package/dist/math3d/Mat4.js +518 -0
  200. package/dist/math3d/Mat4.js.map +1 -0
  201. package/dist/math3d/Plane.d.ts +67 -0
  202. package/dist/math3d/Plane.d.ts.map +1 -0
  203. package/dist/math3d/Plane.js +90 -0
  204. package/dist/math3d/Plane.js.map +1 -0
  205. package/dist/math3d/Quat.d.ts +163 -0
  206. package/dist/math3d/Quat.d.ts.map +1 -0
  207. package/dist/math3d/Quat.js +408 -0
  208. package/dist/math3d/Quat.js.map +1 -0
  209. package/dist/math3d/Vec2.d.ts +185 -0
  210. package/dist/math3d/Vec2.d.ts.map +1 -0
  211. package/dist/math3d/Vec2.js +276 -0
  212. package/dist/math3d/Vec2.js.map +1 -0
  213. package/dist/math3d/Vec3.d.ts +326 -0
  214. package/dist/math3d/Vec3.d.ts.map +1 -0
  215. package/dist/math3d/Vec3.js +521 -0
  216. package/dist/math3d/Vec3.js.map +1 -0
  217. package/dist/math3d/index.d.ts +19 -0
  218. package/dist/math3d/index.d.ts.map +1 -0
  219. package/dist/math3d/index.js +19 -0
  220. package/dist/math3d/index.js.map +1 -0
  221. package/dist/mesh/decoration-provider.d.ts +2 -2
  222. package/dist/mesh/decoration-provider.d.ts.map +1 -1
  223. package/dist/mesh/decoration-provider.js.map +1 -1
  224. package/dist/mesh/engrave.d.ts.map +1 -1
  225. package/dist/mesh/engrave.js +36 -37
  226. package/dist/mesh/engrave.js.map +1 -1
  227. package/dist/mesh/io.d.ts.map +1 -1
  228. package/dist/mesh/io.js +6 -7
  229. package/dist/mesh/io.js.map +1 -1
  230. package/dist/mesh/knurl/KnurlGenerator.d.ts +8 -7
  231. package/dist/mesh/knurl/KnurlGenerator.d.ts.map +1 -1
  232. package/dist/mesh/knurl/KnurlGenerator.js +9 -9
  233. package/dist/mesh/knurl/KnurlGenerator.js.map +1 -1
  234. package/dist/mesh/knurl/displacement.d.ts +7 -6
  235. package/dist/mesh/knurl/displacement.d.ts.map +1 -1
  236. package/dist/mesh/knurl/displacement.js +29 -29
  237. package/dist/mesh/knurl/displacement.js.map +1 -1
  238. package/dist/mesh/knurl/subdivision.d.ts +3 -3
  239. package/dist/mesh/knurl/subdivision.d.ts.map +1 -1
  240. package/dist/mesh/knurl/subdivision.js +21 -15
  241. package/dist/mesh/knurl/subdivision.js.map +1 -1
  242. package/dist/mesh/knurl/textureLoader.d.ts +3 -3
  243. package/dist/mesh/knurl/textureLoader.d.ts.map +1 -1
  244. package/dist/mesh/knurl/textureLoader.js.map +1 -1
  245. package/dist/mesh/meshdata/index.d.ts +12 -0
  246. package/dist/mesh/meshdata/index.d.ts.map +1 -0
  247. package/dist/mesh/meshdata/index.js +12 -0
  248. package/dist/mesh/meshdata/index.js.map +1 -0
  249. package/dist/mesh/meshdata/ops.d.ts +62 -0
  250. package/dist/mesh/meshdata/ops.d.ts.map +1 -0
  251. package/dist/mesh/meshdata/ops.js +160 -0
  252. package/dist/mesh/meshdata/ops.js.map +1 -0
  253. package/dist/mesh/meshdata/parametric.d.ts +70 -0
  254. package/dist/mesh/meshdata/parametric.d.ts.map +1 -0
  255. package/dist/mesh/meshdata/parametric.js +213 -0
  256. package/dist/mesh/meshdata/parametric.js.map +1 -0
  257. package/dist/mesh/meshdata/weld.d.ts +21 -0
  258. package/dist/mesh/meshdata/weld.d.ts.map +1 -0
  259. package/dist/mesh/meshdata/weld.js +50 -0
  260. package/dist/mesh/meshdata/weld.js.map +1 -0
  261. package/dist/mesh/primitives.d.ts +1 -1
  262. package/dist/mesh/primitives.d.ts.map +1 -1
  263. package/dist/mesh/primitives.js +38 -39
  264. package/dist/mesh/primitives.js.map +1 -1
  265. package/dist/mesh/query.js +11 -11
  266. package/dist/mesh/query.js.map +1 -1
  267. package/dist/mesh/stl-loader.d.ts +7 -7
  268. package/dist/mesh/stl-loader.d.ts.map +1 -1
  269. package/dist/mesh/stl-loader.js +12 -24
  270. package/dist/mesh/stl-loader.js.map +1 -1
  271. package/dist/mesh/threemf-view.d.ts +11 -11
  272. package/dist/mesh/threemf-view.d.ts.map +1 -1
  273. package/dist/mesh/threemf-view.js +10 -10
  274. package/dist/mesh/threemf-view.js.map +1 -1
  275. package/dist/mesh/transform.d.ts +14 -8
  276. package/dist/mesh/transform.d.ts.map +1 -1
  277. package/dist/mesh/transform.js +18 -13
  278. package/dist/mesh/transform.js.map +1 -1
  279. package/dist/mesh/types.d.ts +2 -0
  280. package/dist/mesh/types.d.ts.map +1 -1
  281. package/dist/mesh/types.js.map +1 -1
  282. package/dist/occt-kernel/occt-primitives.d.ts.map +1 -1
  283. package/dist/occt-kernel/occt-primitives.js +20 -0
  284. package/dist/occt-kernel/occt-primitives.js.map +1 -1
  285. package/dist/primitives/brep-primitives.d.ts +8 -12
  286. package/dist/primitives/brep-primitives.d.ts.map +1 -1
  287. package/dist/primitives/brep-primitives.js +10 -28
  288. package/dist/primitives/brep-primitives.js.map +1 -1
  289. package/dist/primitives/index.js.map +1 -1
  290. package/dist/primitives/mesh-primitives.d.ts +10 -10
  291. package/dist/primitives/mesh-primitives.d.ts.map +1 -1
  292. package/dist/primitives/mesh-primitives.js +29 -76
  293. package/dist/primitives/mesh-primitives.js.map +1 -1
  294. package/dist/primitives/screw/screw.d.ts +3 -3
  295. package/dist/primitives/screw/screw.d.ts.map +1 -1
  296. package/dist/primitives/screw/screw.js +10 -9
  297. package/dist/primitives/screw/screw.js.map +1 -1
  298. package/dist/sdf/index.js.map +1 -1
  299. package/dist/units.d.ts +40 -0
  300. package/dist/units.d.ts.map +1 -1
  301. package/dist/units.js.map +1 -1
  302. package/package.json +3 -5
  303. package/dist/api/brep-mirror/booleanFns.d.ts +0 -40
  304. package/dist/api/brep-mirror/booleanFns.d.ts.map +0 -1
  305. package/dist/api/brep-mirror/booleanFns.js +0 -104
  306. package/dist/api/brep-mirror/booleanFns.js.map +0 -1
  307. package/dist/api/brep-mirror/brepHelpers.d.ts +0 -55
  308. package/dist/api/brep-mirror/brepHelpers.d.ts.map +0 -1
  309. package/dist/api/brep-mirror/brepHelpers.js +0 -131
  310. package/dist/api/brep-mirror/brepHelpers.js.map +0 -1
  311. package/dist/api/brep-mirror/compoundFns.d.ts +0 -47
  312. package/dist/api/brep-mirror/compoundFns.d.ts.map +0 -1
  313. package/dist/api/brep-mirror/compoundFns.js +0 -300
  314. package/dist/api/brep-mirror/compoundFns.js.map +0 -1
  315. package/dist/api/brep-mirror/healingFns.d.ts +0 -78
  316. package/dist/api/brep-mirror/healingFns.d.ts.map +0 -1
  317. package/dist/api/brep-mirror/healingFns.js +0 -294
  318. package/dist/api/brep-mirror/healingFns.js.map +0 -1
  319. package/dist/api/brep-mirror/hullFns.d.ts +0 -20
  320. package/dist/api/brep-mirror/hullFns.d.ts.map +0 -1
  321. package/dist/api/brep-mirror/hullFns.js +0 -46
  322. package/dist/api/brep-mirror/hullFns.js.map +0 -1
  323. package/dist/api/brep-mirror/joinery-brep.d.ts +0 -172
  324. package/dist/api/brep-mirror/joinery-brep.d.ts.map +0 -1
  325. package/dist/api/brep-mirror/joinery-brep.js +0 -463
  326. package/dist/api/brep-mirror/joinery-brep.js.map +0 -1
  327. package/dist/api/brep-mirror/patternFns.d.ts +0 -43
  328. package/dist/api/brep-mirror/patternFns.d.ts.map +0 -1
  329. package/dist/api/brep-mirror/patternFns.js +0 -178
  330. package/dist/api/brep-mirror/patternFns.js.map +0 -1
  331. package/dist/api/brep-mirror/primitiveFns.d.ts +0 -42
  332. package/dist/api/brep-mirror/primitiveFns.d.ts.map +0 -1
  333. package/dist/api/brep-mirror/primitiveFns.js +0 -104
  334. package/dist/api/brep-mirror/primitiveFns.js.map +0 -1
  335. package/dist/api/brep-mirror/roofFns.d.ts +0 -24
  336. package/dist/api/brep-mirror/roofFns.d.ts.map +0 -1
  337. package/dist/api/brep-mirror/roofFns.js +0 -229
  338. package/dist/api/brep-mirror/roofFns.js.map +0 -1
  339. package/dist/api/brep-mirror/straightSkeleton.d.ts +0 -36
  340. package/dist/api/brep-mirror/straightSkeleton.d.ts.map +0 -1
  341. package/dist/api/brep-mirror/straightSkeleton.js +0 -443
  342. package/dist/api/brep-mirror/straightSkeleton.js.map +0 -1
  343. package/dist/api/brep-mirror/sweepFns.d.ts +0 -55
  344. package/dist/api/brep-mirror/sweepFns.d.ts.map +0 -1
  345. package/dist/api/brep-mirror/sweepFns.js +0 -200
  346. package/dist/api/brep-mirror/sweepFns.js.map +0 -1
  347. package/dist/api/brep-mirror/threadFns.d.ts +0 -83
  348. package/dist/api/brep-mirror/threadFns.d.ts.map +0 -1
  349. package/dist/api/brep-mirror/threadFns.js +0 -138
  350. package/dist/api/brep-mirror/threadFns.js.map +0 -1
  351. package/dist/api/brep-mirror/topologyFns.d.ts +0 -74
  352. package/dist/api/brep-mirror/topologyFns.d.ts.map +0 -1
  353. package/dist/api/brep-mirror/topologyFns.js +0 -276
  354. package/dist/api/brep-mirror/topologyFns.js.map +0 -1
  355. package/dist/api/brepjs-compat/constants.d.ts +0 -11
  356. package/dist/api/brepjs-compat/constants.d.ts.map +0 -1
  357. package/dist/api/brepjs-compat/constants.js +0 -11
  358. package/dist/api/brepjs-compat/constants.js.map +0 -1
  359. package/dist/api/brepjs-compat/index.d.ts +0 -21
  360. package/dist/api/brepjs-compat/index.d.ts.map +0 -1
  361. package/dist/api/brepjs-compat/index.js +0 -22
  362. package/dist/api/brepjs-compat/index.js.map +0 -1
  363. package/dist/api/brepjs-compat/planeOps.d.ts +0 -98
  364. package/dist/api/brepjs-compat/planeOps.d.ts.map +0 -1
  365. package/dist/api/brepjs-compat/planeOps.js +0 -170
  366. package/dist/api/brepjs-compat/planeOps.js.map +0 -1
  367. package/dist/api/brepjs-compat/planeTypes.d.ts +0 -24
  368. package/dist/api/brepjs-compat/planeTypes.d.ts.map +0 -1
  369. package/dist/api/brepjs-compat/planeTypes.js +0 -8
  370. package/dist/api/brepjs-compat/planeTypes.js.map +0 -1
  371. package/dist/api/brepjs-compat/types.d.ts +0 -64
  372. package/dist/api/brepjs-compat/types.d.ts.map +0 -1
  373. package/dist/api/brepjs-compat/types.js +0 -48
  374. package/dist/api/brepjs-compat/types.js.map +0 -1
  375. package/dist/api/brepjs-compat/vecOps.d.ts +0 -124
  376. package/dist/api/brepjs-compat/vecOps.d.ts.map +0 -1
  377. package/dist/api/brepjs-compat/vecOps.js +0 -202
  378. package/dist/api/brepjs-compat/vecOps.js.map +0 -1
  379. package/dist/api/generated/brepjs/index.d.ts +0 -310
  380. package/dist/api/generated/brepjs/index.d.ts.map +0 -1
  381. package/dist/api/generated/brepjs/index.js +0 -195
  382. package/dist/api/generated/brepjs/index.js.map +0 -1
  383. package/dist/api/generated/cad/script-face.d.ts +0 -12
  384. package/dist/api/generated/cad/script-face.d.ts.map +0 -1
  385. package/dist/api/generated/cad/script-face.js +0 -146
  386. package/dist/api/generated/cad/script-face.js.map +0 -1
  387. package/dist/api/internal/compat-projection.d.ts +0 -55
  388. package/dist/api/internal/compat-projection.d.ts.map +0 -1
  389. package/dist/api/internal/compat-projection.js +0 -75
  390. package/dist/api/internal/compat-projection.js.map +0 -1
  391. package/dist/api/occt-kernel-bridge.d.ts +0 -118
  392. package/dist/api/occt-kernel-bridge.d.ts.map +0 -1
  393. package/dist/api/occt-kernel-bridge.js +0 -283
  394. package/dist/api/occt-kernel-bridge.js.map +0 -1
  395. package/dist/api/sketch.d.ts +0 -80
  396. package/dist/api/sketch.d.ts.map +0 -1
  397. package/dist/api/sketch.js +0 -155
  398. package/dist/api/sketch.js.map +0 -1
  399. package/dist/api/surface/projection-overrides.d.ts +0 -38
  400. package/dist/api/surface/projection-overrides.d.ts.map +0 -1
  401. package/dist/api/surface/projection-overrides.js +0 -169
  402. package/dist/api/surface/projection-overrides.js.map +0 -1
  403. package/dist/brepjs-compat.d.ts +0 -20
  404. package/dist/brepjs-compat.d.ts.map +0 -1
  405. package/dist/brepjs-compat.js +0 -20
  406. package/dist/brepjs-compat.js.map +0 -1
  407. package/dist/cad-runtime/createRuntimeWithCad.d.ts +0 -22
  408. package/dist/cad-runtime/createRuntimeWithCad.d.ts.map +0 -1
  409. package/dist/cad-runtime/createRuntimeWithCad.js +0 -29
  410. package/dist/cad-runtime/createRuntimeWithCad.js.map +0 -1
  411. package/dist/fcstd/attachment.d.ts +0 -72
  412. package/dist/fcstd/attachment.d.ts.map +0 -1
  413. package/dist/fcstd/attachment.js +0 -93
  414. package/dist/fcstd/attachment.js.map +0 -1
  415. package/dist/fcstd/build-fai-zip.d.ts +0 -40
  416. package/dist/fcstd/build-fai-zip.d.ts.map +0 -1
  417. package/dist/fcstd/build-fai-zip.js +0 -111
  418. package/dist/fcstd/build-fai-zip.js.map +0 -1
  419. package/dist/fcstd/cli.d.ts +0 -3
  420. package/dist/fcstd/cli.d.ts.map +0 -1
  421. package/dist/fcstd/cli.js +0 -37
  422. package/dist/fcstd/cli.js.map +0 -1
  423. package/dist/fcstd/codegen.d.ts +0 -79
  424. package/dist/fcstd/codegen.d.ts.map +0 -1
  425. package/dist/fcstd/codegen.js +0 -605
  426. package/dist/fcstd/codegen.js.map +0 -1
  427. package/dist/fcstd/container.d.ts +0 -75
  428. package/dist/fcstd/container.d.ts.map +0 -1
  429. package/dist/fcstd/container.js +0 -36
  430. package/dist/fcstd/container.js.map +0 -1
  431. package/dist/fcstd/contour.d.ts +0 -43
  432. package/dist/fcstd/contour.d.ts.map +0 -1
  433. package/dist/fcstd/contour.js +0 -96
  434. package/dist/fcstd/contour.js.map +0 -1
  435. package/dist/fcstd/convert.d.ts +0 -63
  436. package/dist/fcstd/convert.d.ts.map +0 -1
  437. package/dist/fcstd/convert.js +0 -274
  438. package/dist/fcstd/convert.js.map +0 -1
  439. package/dist/fcstd/document.d.ts +0 -48
  440. package/dist/fcstd/document.d.ts.map +0 -1
  441. package/dist/fcstd/document.js +0 -140
  442. package/dist/fcstd/document.js.map +0 -1
  443. package/dist/fcstd/expressions.d.ts +0 -74
  444. package/dist/fcstd/expressions.d.ts.map +0 -1
  445. package/dist/fcstd/expressions.js +0 -157
  446. package/dist/fcstd/expressions.js.map +0 -1
  447. package/dist/fcstd/external-geo.d.ts +0 -49
  448. package/dist/fcstd/external-geo.d.ts.map +0 -1
  449. package/dist/fcstd/external-geo.js +0 -140
  450. package/dist/fcstd/external-geo.js.map +0 -1
  451. package/dist/fcstd/feature-translate.d.ts +0 -189
  452. package/dist/fcstd/feature-translate.d.ts.map +0 -1
  453. package/dist/fcstd/feature-translate.js +0 -968
  454. package/dist/fcstd/feature-translate.js.map +0 -1
  455. package/dist/fcstd/index.d.ts +0 -23
  456. package/dist/fcstd/index.d.ts.map +0 -1
  457. package/dist/fcstd/index.js +0 -19
  458. package/dist/fcstd/index.js.map +0 -1
  459. package/dist/fcstd/placement.d.ts +0 -93
  460. package/dist/fcstd/placement.d.ts.map +0 -1
  461. package/dist/fcstd/placement.js +0 -117
  462. package/dist/fcstd/placement.js.map +0 -1
  463. package/dist/fcstd/planegcs-backend.d.ts +0 -34
  464. package/dist/fcstd/planegcs-backend.d.ts.map +0 -1
  465. package/dist/fcstd/planegcs-backend.js +0 -626
  466. package/dist/fcstd/planegcs-backend.js.map +0 -1
  467. package/dist/fcstd/sketch-parse.d.ts +0 -181
  468. package/dist/fcstd/sketch-parse.d.ts.map +0 -1
  469. package/dist/fcstd/sketch-parse.js +0 -227
  470. package/dist/fcstd/sketch-parse.js.map +0 -1
  471. package/dist/fcstd/sketch-solver.d.ts +0 -63
  472. package/dist/fcstd/sketch-solver.d.ts.map +0 -1
  473. package/dist/fcstd/sketch-solver.js +0 -28
  474. package/dist/fcstd/sketch-solver.js.map +0 -1
  475. package/dist/fcstd/sketch-verify.d.ts +0 -43
  476. package/dist/fcstd/sketch-verify.d.ts.map +0 -1
  477. package/dist/fcstd/sketch-verify.js +0 -62
  478. package/dist/fcstd/sketch-verify.js.map +0 -1
  479. package/dist/fcstd/structural-types.d.ts +0 -83
  480. package/dist/fcstd/structural-types.d.ts.map +0 -1
  481. package/dist/fcstd/structural-types.js +0 -121
  482. package/dist/fcstd/structural-types.js.map +0 -1
  483. package/dist/fcstd/unpack.d.ts +0 -44
  484. package/dist/fcstd/unpack.d.ts.map +0 -1
  485. package/dist/fcstd/unpack.js +0 -64
  486. package/dist/fcstd/unpack.js.map +0 -1
  487. package/dist/fcstd-convert.d.ts +0 -30
  488. package/dist/fcstd-convert.d.ts.map +0 -1
  489. package/dist/fcstd-convert.js +0 -27
  490. package/dist/fcstd-convert.js.map +0 -1
  491. package/dist/mesh/creased-normals.d.ts +0 -50
  492. package/dist/mesh/creased-normals.d.ts.map +0 -1
  493. package/dist/mesh/creased-normals.js +0 -114
  494. package/dist/mesh/creased-normals.js.map +0 -1
  495. package/dist/occt-kernel/generated/occtPlatform.generated.d.ts +0 -260
  496. package/dist/occt-kernel/generated/occtPlatform.generated.d.ts.map +0 -1
  497. package/dist/occt-kernel/generated/occtPlatform.generated.js +0 -875
  498. package/dist/occt-kernel/generated/occtPlatform.generated.js.map +0 -1
  499. package/dist/occt-kernel/stepMetaParser.d.ts +0 -44
  500. package/dist/occt-kernel/stepMetaParser.d.ts.map +0 -1
  501. package/dist/occt-kernel/stepMetaParser.js +0 -166
  502. package/dist/occt-kernel/stepMetaParser.js.map +0 -1
  503. package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.d.ts +0 -106
  504. package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.d.ts.map +0 -1
  505. package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.js +0 -341
  506. package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.js.map +0 -1
  507. package/dist/vendored/brepjs/2d/blueprints/blueprint.d.ts +0 -185
  508. package/dist/vendored/brepjs/2d/blueprints/blueprint.d.ts.map +0 -1
  509. package/dist/vendored/brepjs/2d/blueprints/blueprint.js +0 -361
  510. package/dist/vendored/brepjs/2d/blueprints/blueprint.js.map +0 -1
  511. package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.d.ts +0 -15
  512. package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.d.ts.map +0 -1
  513. package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.js +0 -28
  514. package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.js.map +0 -1
  515. package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.d.ts +0 -29
  516. package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.d.ts.map +0 -1
  517. package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.js +0 -86
  518. package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.js.map +0 -1
  519. package/dist/vendored/brepjs/2d/blueprints/blueprintFns.d.ts +0 -57
  520. package/dist/vendored/brepjs/2d/blueprints/blueprintFns.d.ts.map +0 -1
  521. package/dist/vendored/brepjs/2d/blueprints/blueprintFns.js +0 -92
  522. package/dist/vendored/brepjs/2d/blueprints/blueprintFns.js.map +0 -1
  523. package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.d.ts +0 -58
  524. package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.d.ts.map +0 -1
  525. package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.js +0 -346
  526. package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.js.map +0 -1
  527. package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.d.ts +0 -30
  528. package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.d.ts.map +0 -1
  529. package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.js +0 -45
  530. package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.js.map +0 -1
  531. package/dist/vendored/brepjs/2d/blueprints/blueprints.d.ts +0 -68
  532. package/dist/vendored/brepjs/2d/blueprints/blueprints.d.ts.map +0 -1
  533. package/dist/vendored/brepjs/2d/blueprints/blueprints.js +0 -116
  534. package/dist/vendored/brepjs/2d/blueprints/blueprints.js.map +0 -1
  535. package/dist/vendored/brepjs/2d/blueprints/boolean2D.d.ts +0 -68
  536. package/dist/vendored/brepjs/2d/blueprints/boolean2D.d.ts.map +0 -1
  537. package/dist/vendored/brepjs/2d/blueprints/boolean2D.js +0 -362
  538. package/dist/vendored/brepjs/2d/blueprints/boolean2D.js.map +0 -1
  539. package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.d.ts +0 -34
  540. package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.d.ts.map +0 -1
  541. package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.js +0 -176
  542. package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.js.map +0 -1
  543. package/dist/vendored/brepjs/2d/blueprints/booleanOperations.d.ts +0 -55
  544. package/dist/vendored/brepjs/2d/blueprints/booleanOperations.d.ts.map +0 -1
  545. package/dist/vendored/brepjs/2d/blueprints/booleanOperations.js +0 -110
  546. package/dist/vendored/brepjs/2d/blueprints/booleanOperations.js.map +0 -1
  547. package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.d.ts +0 -41
  548. package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.d.ts.map +0 -1
  549. package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.js +0 -90
  550. package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.js.map +0 -1
  551. package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.d.ts +0 -85
  552. package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.d.ts.map +0 -1
  553. package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.js +0 -136
  554. package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.js.map +0 -1
  555. package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.d.ts +0 -48
  556. package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.d.ts.map +0 -1
  557. package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.js +0 -154
  558. package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.js.map +0 -1
  559. package/dist/vendored/brepjs/2d/blueprints/genericSketcher.d.ts +0 -342
  560. package/dist/vendored/brepjs/2d/blueprints/genericSketcher.d.ts.map +0 -1
  561. package/dist/vendored/brepjs/2d/blueprints/genericSketcher.js +0 -32
  562. package/dist/vendored/brepjs/2d/blueprints/genericSketcher.js.map +0 -1
  563. package/dist/vendored/brepjs/2d/blueprints/index.d.ts +0 -16
  564. package/dist/vendored/brepjs/2d/blueprints/index.d.ts.map +0 -1
  565. package/dist/vendored/brepjs/2d/blueprints/index.js +0 -13
  566. package/dist/vendored/brepjs/2d/blueprints/index.js.map +0 -1
  567. package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.d.ts +0 -18
  568. package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.d.ts.map +0 -1
  569. package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.js +0 -230
  570. package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.js.map +0 -1
  571. package/dist/vendored/brepjs/2d/blueprints/lib.d.ts +0 -73
  572. package/dist/vendored/brepjs/2d/blueprints/lib.d.ts.map +0 -1
  573. package/dist/vendored/brepjs/2d/blueprints/lib.js +0 -103
  574. package/dist/vendored/brepjs/2d/blueprints/lib.js.map +0 -1
  575. package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.d.ts +0 -31
  576. package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.d.ts.map +0 -1
  577. package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.js +0 -226
  578. package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.js.map +0 -1
  579. package/dist/vendored/brepjs/2d/blueprints/svg.d.ts +0 -22
  580. package/dist/vendored/brepjs/2d/blueprints/svg.d.ts.map +0 -1
  581. package/dist/vendored/brepjs/2d/blueprints/svg.js +0 -30
  582. package/dist/vendored/brepjs/2d/blueprints/svg.js.map +0 -1
  583. package/dist/vendored/brepjs/2d/curve2dGeometryFns.d.ts +0 -124
  584. package/dist/vendored/brepjs/2d/curve2dGeometryFns.d.ts.map +0 -1
  585. package/dist/vendored/brepjs/2d/curve2dGeometryFns.js +0 -235
  586. package/dist/vendored/brepjs/2d/curve2dGeometryFns.js.map +0 -1
  587. package/dist/vendored/brepjs/2d/curves.d.ts +0 -45
  588. package/dist/vendored/brepjs/2d/curves.d.ts.map +0 -1
  589. package/dist/vendored/brepjs/2d/curves.js +0 -139
  590. package/dist/vendored/brepjs/2d/curves.js.map +0 -1
  591. package/dist/vendored/brepjs/2d/lib/approximations.d.ts +0 -47
  592. package/dist/vendored/brepjs/2d/lib/approximations.d.ts.map +0 -1
  593. package/dist/vendored/brepjs/2d/lib/approximations.js +0 -82
  594. package/dist/vendored/brepjs/2d/lib/approximations.js.map +0 -1
  595. package/dist/vendored/brepjs/2d/lib/boundingBox2d.d.ts +0 -39
  596. package/dist/vendored/brepjs/2d/lib/boundingBox2d.d.ts.map +0 -1
  597. package/dist/vendored/brepjs/2d/lib/boundingBox2d.js +0 -88
  598. package/dist/vendored/brepjs/2d/lib/boundingBox2d.js.map +0 -1
  599. package/dist/vendored/brepjs/2d/lib/curve2D.d.ts +0 -82
  600. package/dist/vendored/brepjs/2d/lib/curve2D.d.ts.map +0 -1
  601. package/dist/vendored/brepjs/2d/lib/curve2D.js +0 -258
  602. package/dist/vendored/brepjs/2d/lib/curve2D.js.map +0 -1
  603. package/dist/vendored/brepjs/2d/lib/curve2dFns.d.ts +0 -53
  604. package/dist/vendored/brepjs/2d/lib/curve2dFns.d.ts.map +0 -1
  605. package/dist/vendored/brepjs/2d/lib/curve2dFns.js +0 -69
  606. package/dist/vendored/brepjs/2d/lib/curve2dFns.js.map +0 -1
  607. package/dist/vendored/brepjs/2d/lib/customCorners.d.ts +0 -29
  608. package/dist/vendored/brepjs/2d/lib/customCorners.d.ts.map +0 -1
  609. package/dist/vendored/brepjs/2d/lib/customCorners.js +0 -237
  610. package/dist/vendored/brepjs/2d/lib/customCorners.js.map +0 -1
  611. package/dist/vendored/brepjs/2d/lib/definitions.d.ts +0 -12
  612. package/dist/vendored/brepjs/2d/lib/definitions.d.ts.map +0 -1
  613. package/dist/vendored/brepjs/2d/lib/definitions.js +0 -19
  614. package/dist/vendored/brepjs/2d/lib/definitions.js.map +0 -1
  615. package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.d.ts +0 -21
  616. package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.d.ts.map +0 -1
  617. package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.js +0 -71
  618. package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.js.map +0 -1
  619. package/dist/vendored/brepjs/2d/lib/index.d.ts +0 -14
  620. package/dist/vendored/brepjs/2d/lib/index.d.ts.map +0 -1
  621. package/dist/vendored/brepjs/2d/lib/index.js +0 -14
  622. package/dist/vendored/brepjs/2d/lib/index.js.map +0 -1
  623. package/dist/vendored/brepjs/2d/lib/intersections.d.ts +0 -34
  624. package/dist/vendored/brepjs/2d/lib/intersections.d.ts.map +0 -1
  625. package/dist/vendored/brepjs/2d/lib/intersections.js +0 -77
  626. package/dist/vendored/brepjs/2d/lib/intersections.js.map +0 -1
  627. package/dist/vendored/brepjs/2d/lib/makeCurves.d.ts +0 -63
  628. package/dist/vendored/brepjs/2d/lib/makeCurves.d.ts.map +0 -1
  629. package/dist/vendored/brepjs/2d/lib/makeCurves.js +0 -117
  630. package/dist/vendored/brepjs/2d/lib/makeCurves.js.map +0 -1
  631. package/dist/vendored/brepjs/2d/lib/offset.d.ts +0 -30
  632. package/dist/vendored/brepjs/2d/lib/offset.d.ts.map +0 -1
  633. package/dist/vendored/brepjs/2d/lib/offset.js +0 -109
  634. package/dist/vendored/brepjs/2d/lib/offset.js.map +0 -1
  635. package/dist/vendored/brepjs/2d/lib/precision.d.ts +0 -12
  636. package/dist/vendored/brepjs/2d/lib/precision.d.ts.map +0 -1
  637. package/dist/vendored/brepjs/2d/lib/precision.js +0 -12
  638. package/dist/vendored/brepjs/2d/lib/precision.js.map +0 -1
  639. package/dist/vendored/brepjs/2d/lib/stitching.d.ts +0 -15
  640. package/dist/vendored/brepjs/2d/lib/stitching.d.ts.map +0 -1
  641. package/dist/vendored/brepjs/2d/lib/stitching.js +0 -67
  642. package/dist/vendored/brepjs/2d/lib/stitching.js.map +0 -1
  643. package/dist/vendored/brepjs/2d/lib/svgPath.d.ts +0 -4
  644. package/dist/vendored/brepjs/2d/lib/svgPath.d.ts.map +0 -1
  645. package/dist/vendored/brepjs/2d/lib/svgPath.js +0 -114
  646. package/dist/vendored/brepjs/2d/lib/svgPath.js.map +0 -1
  647. package/dist/vendored/brepjs/2d/lib/utils.d.ts +0 -11
  648. package/dist/vendored/brepjs/2d/lib/utils.d.ts.map +0 -1
  649. package/dist/vendored/brepjs/2d/lib/utils.js +0 -24
  650. package/dist/vendored/brepjs/2d/lib/utils.js.map +0 -1
  651. package/dist/vendored/brepjs/2d/lib/vectorOperations.d.ts +0 -19
  652. package/dist/vendored/brepjs/2d/lib/vectorOperations.d.ts.map +0 -1
  653. package/dist/vendored/brepjs/2d/lib/vectorOperations.js +0 -26
  654. package/dist/vendored/brepjs/2d/lib/vectorOperations.js.map +0 -1
  655. package/dist/vendored/brepjs/2d.d.ts +0 -26
  656. package/dist/vendored/brepjs/2d.d.ts.map +0 -1
  657. package/dist/vendored/brepjs/2d.js +0 -33
  658. package/dist/vendored/brepjs/2d.js.map +0 -1
  659. package/dist/vendored/brepjs/core/constants.d.ts +0 -7
  660. package/dist/vendored/brepjs/core/constants.d.ts.map +0 -1
  661. package/dist/vendored/brepjs/core/constants.js +0 -7
  662. package/dist/vendored/brepjs/core/constants.js.map +0 -1
  663. package/dist/vendored/brepjs/core/curve2dHandle.d.ts +0 -35
  664. package/dist/vendored/brepjs/core/curve2dHandle.d.ts.map +0 -1
  665. package/dist/vendored/brepjs/core/curve2dHandle.js +0 -48
  666. package/dist/vendored/brepjs/core/curve2dHandle.js.map +0 -1
  667. package/dist/vendored/brepjs/core/dimensionTypes.d.ts +0 -61
  668. package/dist/vendored/brepjs/core/dimensionTypes.d.ts.map +0 -1
  669. package/dist/vendored/brepjs/core/dimensionTypes.js +0 -54
  670. package/dist/vendored/brepjs/core/dimensionTypes.js.map +0 -1
  671. package/dist/vendored/brepjs/core/disposal.d.ts +0 -136
  672. package/dist/vendored/brepjs/core/disposal.d.ts.map +0 -1
  673. package/dist/vendored/brepjs/core/disposal.js +0 -441
  674. package/dist/vendored/brepjs/core/disposal.js.map +0 -1
  675. package/dist/vendored/brepjs/core/errors.d.ts +0 -191
  676. package/dist/vendored/brepjs/core/errors.d.ts.map +0 -1
  677. package/dist/vendored/brepjs/core/errors.js +0 -238
  678. package/dist/vendored/brepjs/core/errors.js.map +0 -1
  679. package/dist/vendored/brepjs/core/kernelBoundary.d.ts +0 -40
  680. package/dist/vendored/brepjs/core/kernelBoundary.d.ts.map +0 -1
  681. package/dist/vendored/brepjs/core/kernelBoundary.js +0 -99
  682. package/dist/vendored/brepjs/core/kernelBoundary.js.map +0 -1
  683. package/dist/vendored/brepjs/core/kernelCall.d.ts +0 -48
  684. package/dist/vendored/brepjs/core/kernelCall.d.ts.map +0 -1
  685. package/dist/vendored/brepjs/core/kernelCall.js +0 -154
  686. package/dist/vendored/brepjs/core/kernelCall.js.map +0 -1
  687. package/dist/vendored/brepjs/core/kernelErrorTranslation.d.ts +0 -17
  688. package/dist/vendored/brepjs/core/kernelErrorTranslation.d.ts.map +0 -1
  689. package/dist/vendored/brepjs/core/kernelErrorTranslation.js +0 -98
  690. package/dist/vendored/brepjs/core/kernelErrorTranslation.js.map +0 -1
  691. package/dist/vendored/brepjs/core/planeOps.d.ts +0 -62
  692. package/dist/vendored/brepjs/core/planeOps.d.ts.map +0 -1
  693. package/dist/vendored/brepjs/core/planeOps.js +0 -148
  694. package/dist/vendored/brepjs/core/planeOps.js.map +0 -1
  695. package/dist/vendored/brepjs/core/planeTypes.d.ts +0 -22
  696. package/dist/vendored/brepjs/core/planeTypes.d.ts.map +0 -1
  697. package/dist/vendored/brepjs/core/planeTypes.js +0 -6
  698. package/dist/vendored/brepjs/core/planeTypes.js.map +0 -1
  699. package/dist/vendored/brepjs/core/result.d.ts +0 -85
  700. package/dist/vendored/brepjs/core/result.d.ts.map +0 -1
  701. package/dist/vendored/brepjs/core/result.js +0 -212
  702. package/dist/vendored/brepjs/core/result.js.map +0 -1
  703. package/dist/vendored/brepjs/core/shapeTypeCache.d.ts +0 -27
  704. package/dist/vendored/brepjs/core/shapeTypeCache.d.ts.map +0 -1
  705. package/dist/vendored/brepjs/core/shapeTypeCache.js +0 -40
  706. package/dist/vendored/brepjs/core/shapeTypeCache.js.map +0 -1
  707. package/dist/vendored/brepjs/core/shapeTypes.d.ts +0 -199
  708. package/dist/vendored/brepjs/core/shapeTypes.d.ts.map +0 -1
  709. package/dist/vendored/brepjs/core/shapeTypes.js +0 -267
  710. package/dist/vendored/brepjs/core/shapeTypes.js.map +0 -1
  711. package/dist/vendored/brepjs/core/typeDiscriminants.d.ts +0 -25
  712. package/dist/vendored/brepjs/core/typeDiscriminants.d.ts.map +0 -1
  713. package/dist/vendored/brepjs/core/typeDiscriminants.js +0 -50
  714. package/dist/vendored/brepjs/core/typeDiscriminants.js.map +0 -1
  715. package/dist/vendored/brepjs/core/types.d.ts +0 -51
  716. package/dist/vendored/brepjs/core/types.d.ts.map +0 -1
  717. package/dist/vendored/brepjs/core/types.js +0 -35
  718. package/dist/vendored/brepjs/core/types.js.map +0 -1
  719. package/dist/vendored/brepjs/core/validityTypes.d.ts +0 -143
  720. package/dist/vendored/brepjs/core/validityTypes.d.ts.map +0 -1
  721. package/dist/vendored/brepjs/core/validityTypes.js +0 -174
  722. package/dist/vendored/brepjs/core/validityTypes.js.map +0 -1
  723. package/dist/vendored/brepjs/core/vecOps.d.ts +0 -53
  724. package/dist/vendored/brepjs/core/vecOps.d.ts.map +0 -1
  725. package/dist/vendored/brepjs/core/vecOps.js +0 -131
  726. package/dist/vendored/brepjs/core/vecOps.js.map +0 -1
  727. package/dist/vendored/brepjs/core.d.ts +0 -17
  728. package/dist/vendored/brepjs/core.d.ts.map +0 -1
  729. package/dist/vendored/brepjs/core.js +0 -13
  730. package/dist/vendored/brepjs/core.js.map +0 -1
  731. package/dist/vendored/brepjs/gear/gearFns.d.ts +0 -148
  732. package/dist/vendored/brepjs/gear/gearFns.d.ts.map +0 -1
  733. package/dist/vendored/brepjs/gear/gearFns.js +0 -479
  734. package/dist/vendored/brepjs/gear/gearFns.js.map +0 -1
  735. package/dist/vendored/brepjs/gear/gearMath.d.ts +0 -89
  736. package/dist/vendored/brepjs/gear/gearMath.d.ts.map +0 -1
  737. package/dist/vendored/brepjs/gear/gearMath.js +0 -195
  738. package/dist/vendored/brepjs/gear/gearMath.js.map +0 -1
  739. package/dist/vendored/brepjs/gear/gearProfile.d.ts +0 -17
  740. package/dist/vendored/brepjs/gear/gearProfile.d.ts.map +0 -1
  741. package/dist/vendored/brepjs/gear/gearProfile.js +0 -159
  742. package/dist/vendored/brepjs/gear/gearProfile.js.map +0 -1
  743. package/dist/vendored/brepjs/gear/index.d.ts +0 -4
  744. package/dist/vendored/brepjs/gear/index.d.ts.map +0 -1
  745. package/dist/vendored/brepjs/gear/index.js +0 -4
  746. package/dist/vendored/brepjs/gear/index.js.map +0 -1
  747. package/dist/vendored/brepjs/index.d.ts +0 -152
  748. package/dist/vendored/brepjs/index.d.ts.map +0 -1
  749. package/dist/vendored/brepjs/index.js +0 -195
  750. package/dist/vendored/brepjs/index.js.map +0 -1
  751. package/dist/vendored/brepjs/io/dxfExportFns.d.ts +0 -74
  752. package/dist/vendored/brepjs/io/dxfExportFns.d.ts.map +0 -1
  753. package/dist/vendored/brepjs/io/dxfExportFns.js +0 -134
  754. package/dist/vendored/brepjs/io/dxfExportFns.js.map +0 -1
  755. package/dist/vendored/brepjs/io/dxfImportFns.d.ts +0 -20
  756. package/dist/vendored/brepjs/io/dxfImportFns.d.ts.map +0 -1
  757. package/dist/vendored/brepjs/io/dxfImportFns.js +0 -132
  758. package/dist/vendored/brepjs/io/dxfImportFns.js.map +0 -1
  759. package/dist/vendored/brepjs/io/gltfExportFns.d.ts +0 -97
  760. package/dist/vendored/brepjs/io/gltfExportFns.d.ts.map +0 -1
  761. package/dist/vendored/brepjs/io/gltfExportFns.js +0 -460
  762. package/dist/vendored/brepjs/io/gltfExportFns.js.map +0 -1
  763. package/dist/vendored/brepjs/io/gltfImportFns.d.ts +0 -21
  764. package/dist/vendored/brepjs/io/gltfImportFns.d.ts.map +0 -1
  765. package/dist/vendored/brepjs/io/gltfImportFns.js +0 -33
  766. package/dist/vendored/brepjs/io/gltfImportFns.js.map +0 -1
  767. package/dist/vendored/brepjs/io/importFns.d.ts +0 -56
  768. package/dist/vendored/brepjs/io/importFns.d.ts.map +0 -1
  769. package/dist/vendored/brepjs/io/importFns.js +0 -108
  770. package/dist/vendored/brepjs/io/importFns.js.map +0 -1
  771. package/dist/vendored/brepjs/io/ioUtils.d.ts +0 -22
  772. package/dist/vendored/brepjs/io/ioUtils.d.ts.map +0 -1
  773. package/dist/vendored/brepjs/io/ioUtils.js +0 -56
  774. package/dist/vendored/brepjs/io/ioUtils.js.map +0 -1
  775. package/dist/vendored/brepjs/io/objExportFns.d.ts +0 -23
  776. package/dist/vendored/brepjs/io/objExportFns.d.ts.map +0 -1
  777. package/dist/vendored/brepjs/io/objExportFns.js +0 -67
  778. package/dist/vendored/brepjs/io/objExportFns.js.map +0 -1
  779. package/dist/vendored/brepjs/io/objImportFns.d.ts +0 -26
  780. package/dist/vendored/brepjs/io/objImportFns.d.ts.map +0 -1
  781. package/dist/vendored/brepjs/io/objImportFns.js +0 -96
  782. package/dist/vendored/brepjs/io/objImportFns.js.map +0 -1
  783. package/dist/vendored/brepjs/io/stepConfigFns.d.ts +0 -30
  784. package/dist/vendored/brepjs/io/stepConfigFns.d.ts.map +0 -1
  785. package/dist/vendored/brepjs/io/stepConfigFns.js +0 -30
  786. package/dist/vendored/brepjs/io/stepConfigFns.js.map +0 -1
  787. package/dist/vendored/brepjs/io/svgImportFns.d.ts +0 -58
  788. package/dist/vendored/brepjs/io/svgImportFns.d.ts.map +0 -1
  789. package/dist/vendored/brepjs/io/svgImportFns.js +0 -394
  790. package/dist/vendored/brepjs/io/svgImportFns.js.map +0 -1
  791. package/dist/vendored/brepjs/io/threemfExportFns.d.ts +0 -48
  792. package/dist/vendored/brepjs/io/threemfExportFns.d.ts.map +0 -1
  793. package/dist/vendored/brepjs/io/threemfExportFns.js +0 -345
  794. package/dist/vendored/brepjs/io/threemfExportFns.js.map +0 -1
  795. package/dist/vendored/brepjs/io/threemfImportFns.d.ts +0 -22
  796. package/dist/vendored/brepjs/io/threemfImportFns.d.ts.map +0 -1
  797. package/dist/vendored/brepjs/io/threemfImportFns.js +0 -350
  798. package/dist/vendored/brepjs/io/threemfImportFns.js.map +0 -1
  799. package/dist/vendored/brepjs/io.d.ts +0 -17
  800. package/dist/vendored/brepjs/io.d.ts.map +0 -1
  801. package/dist/vendored/brepjs/io.js +0 -20
  802. package/dist/vendored/brepjs/io.js.map +0 -1
  803. package/dist/vendored/brepjs/kernel/capabilities.d.ts +0 -36
  804. package/dist/vendored/brepjs/kernel/capabilities.d.ts.map +0 -1
  805. package/dist/vendored/brepjs/kernel/capabilities.js +0 -35
  806. package/dist/vendored/brepjs/kernel/capabilities.js.map +0 -1
  807. package/dist/vendored/brepjs/kernel/geometry2d.d.ts +0 -96
  808. package/dist/vendored/brepjs/kernel/geometry2d.d.ts.map +0 -1
  809. package/dist/vendored/brepjs/kernel/geometry2d.js +0 -885
  810. package/dist/vendored/brepjs/kernel/geometry2d.js.map +0 -1
  811. package/dist/vendored/brepjs/kernel/hullGeometry.d.ts +0 -23
  812. package/dist/vendored/brepjs/kernel/hullGeometry.d.ts.map +0 -1
  813. package/dist/vendored/brepjs/kernel/hullGeometry.js +0 -312
  814. package/dist/vendored/brepjs/kernel/hullGeometry.js.map +0 -1
  815. package/dist/vendored/brepjs/kernel/index.d.ts +0 -73
  816. package/dist/vendored/brepjs/kernel/index.d.ts.map +0 -1
  817. package/dist/vendored/brepjs/kernel/index.js +0 -161
  818. package/dist/vendored/brepjs/kernel/index.js.map +0 -1
  819. package/dist/vendored/brepjs/kernel/interfaces/booleanOps.d.ts +0 -44
  820. package/dist/vendored/brepjs/kernel/interfaces/booleanOps.d.ts.map +0 -1
  821. package/dist/vendored/brepjs/kernel/interfaces/booleanOps.js +0 -11
  822. package/dist/vendored/brepjs/kernel/interfaces/booleanOps.js.map +0 -1
  823. package/dist/vendored/brepjs/kernel/interfaces/builderOps.d.ts +0 -67
  824. package/dist/vendored/brepjs/kernel/interfaces/builderOps.d.ts.map +0 -1
  825. package/dist/vendored/brepjs/kernel/interfaces/builderOps.js +0 -12
  826. package/dist/vendored/brepjs/kernel/interfaces/builderOps.js.map +0 -1
  827. package/dist/vendored/brepjs/kernel/interfaces/core.d.ts +0 -46
  828. package/dist/vendored/brepjs/kernel/interfaces/core.d.ts.map +0 -1
  829. package/dist/vendored/brepjs/kernel/interfaces/core.js +0 -11
  830. package/dist/vendored/brepjs/kernel/interfaces/core.js.map +0 -1
  831. package/dist/vendored/brepjs/kernel/interfaces/curveOps.d.ts +0 -53
  832. package/dist/vendored/brepjs/kernel/interfaces/curveOps.d.ts.map +0 -1
  833. package/dist/vendored/brepjs/kernel/interfaces/curveOps.js +0 -12
  834. package/dist/vendored/brepjs/kernel/interfaces/curveOps.js.map +0 -1
  835. package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.d.ts +0 -32
  836. package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.d.ts.map +0 -1
  837. package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.js +0 -14
  838. package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.js.map +0 -1
  839. package/dist/vendored/brepjs/kernel/interfaces/index.d.ts +0 -43
  840. package/dist/vendored/brepjs/kernel/interfaces/index.d.ts.map +0 -1
  841. package/dist/vendored/brepjs/kernel/interfaces/index.js +0 -12
  842. package/dist/vendored/brepjs/kernel/interfaces/index.js.map +0 -1
  843. package/dist/vendored/brepjs/kernel/interfaces/ioOps.d.ts +0 -65
  844. package/dist/vendored/brepjs/kernel/interfaces/ioOps.d.ts.map +0 -1
  845. package/dist/vendored/brepjs/kernel/interfaces/ioOps.js +0 -9
  846. package/dist/vendored/brepjs/kernel/interfaces/ioOps.js.map +0 -1
  847. package/dist/vendored/brepjs/kernel/interfaces/measureOps.d.ts +0 -55
  848. package/dist/vendored/brepjs/kernel/interfaces/measureOps.d.ts.map +0 -1
  849. package/dist/vendored/brepjs/kernel/interfaces/measureOps.js +0 -9
  850. package/dist/vendored/brepjs/kernel/interfaces/measureOps.js.map +0 -1
  851. package/dist/vendored/brepjs/kernel/interfaces/meshOps.d.ts +0 -25
  852. package/dist/vendored/brepjs/kernel/interfaces/meshOps.d.ts.map +0 -1
  853. package/dist/vendored/brepjs/kernel/interfaces/meshOps.js +0 -8
  854. package/dist/vendored/brepjs/kernel/interfaces/meshOps.js.map +0 -1
  855. package/dist/vendored/brepjs/kernel/interfaces/modifierOps.d.ts +0 -53
  856. package/dist/vendored/brepjs/kernel/interfaces/modifierOps.d.ts.map +0 -1
  857. package/dist/vendored/brepjs/kernel/interfaces/modifierOps.js +0 -10
  858. package/dist/vendored/brepjs/kernel/interfaces/modifierOps.js.map +0 -1
  859. package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.d.ts +0 -22
  860. package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.d.ts.map +0 -1
  861. package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.js +0 -11
  862. package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.js.map +0 -1
  863. package/dist/vendored/brepjs/kernel/interfaces/repairOps.d.ts +0 -43
  864. package/dist/vendored/brepjs/kernel/interfaces/repairOps.d.ts.map +0 -1
  865. package/dist/vendored/brepjs/kernel/interfaces/repairOps.js +0 -9
  866. package/dist/vendored/brepjs/kernel/interfaces/repairOps.js.map +0 -1
  867. package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.d.ts +0 -72
  868. package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.d.ts.map +0 -1
  869. package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.js +0 -13
  870. package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.js.map +0 -1
  871. package/dist/vendored/brepjs/kernel/interfaces/sweepOps.d.ts +0 -73
  872. package/dist/vendored/brepjs/kernel/interfaces/sweepOps.d.ts.map +0 -1
  873. package/dist/vendored/brepjs/kernel/interfaces/sweepOps.js +0 -11
  874. package/dist/vendored/brepjs/kernel/interfaces/sweepOps.js.map +0 -1
  875. package/dist/vendored/brepjs/kernel/interfaces/topologyOps.d.ts +0 -62
  876. package/dist/vendored/brepjs/kernel/interfaces/topologyOps.d.ts.map +0 -1
  877. package/dist/vendored/brepjs/kernel/interfaces/topologyOps.js +0 -9
  878. package/dist/vendored/brepjs/kernel/interfaces/topologyOps.js.map +0 -1
  879. package/dist/vendored/brepjs/kernel/interfaces/transformOps.d.ts +0 -80
  880. package/dist/vendored/brepjs/kernel/interfaces/transformOps.d.ts.map +0 -1
  881. package/dist/vendored/brepjs/kernel/interfaces/transformOps.js +0 -11
  882. package/dist/vendored/brepjs/kernel/interfaces/transformOps.js.map +0 -1
  883. package/dist/vendored/brepjs/kernel/kernel2dTypes.d.ts +0 -145
  884. package/dist/vendored/brepjs/kernel/kernel2dTypes.d.ts.map +0 -1
  885. package/dist/vendored/brepjs/kernel/kernel2dTypes.js +0 -18
  886. package/dist/vendored/brepjs/kernel/kernel2dTypes.js.map +0 -1
  887. package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.d.ts +0 -41
  888. package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.d.ts.map +0 -1
  889. package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.js +0 -2
  890. package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.js.map +0 -1
  891. package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.d.ts +0 -17
  892. package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.d.ts.map +0 -1
  893. package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.js +0 -75
  894. package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.js.map +0 -1
  895. package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.d.ts +0 -36
  896. package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.d.ts.map +0 -1
  897. package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.js +0 -116
  898. package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.js.map +0 -1
  899. package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.d.ts +0 -43
  900. package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.d.ts.map +0 -1
  901. package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.js +0 -292
  902. package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.js.map +0 -1
  903. package/dist/vendored/brepjs/kernel/occtWasm/curveOps.d.ts +0 -34
  904. package/dist/vendored/brepjs/kernel/occtWasm/curveOps.d.ts.map +0 -1
  905. package/dist/vendored/brepjs/kernel/occtWasm/curveOps.js +0 -164
  906. package/dist/vendored/brepjs/kernel/occtWasm/curveOps.js.map +0 -1
  907. package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.d.ts +0 -26
  908. package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.d.ts.map +0 -1
  909. package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.js +0 -256
  910. package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.js.map +0 -1
  911. package/dist/vendored/brepjs/kernel/occtWasm/helpers.d.ts +0 -42
  912. package/dist/vendored/brepjs/kernel/occtWasm/helpers.d.ts.map +0 -1
  913. package/dist/vendored/brepjs/kernel/occtWasm/helpers.js +0 -146
  914. package/dist/vendored/brepjs/kernel/occtWasm/helpers.js.map +0 -1
  915. package/dist/vendored/brepjs/kernel/occtWasm/hullOps.d.ts +0 -17
  916. package/dist/vendored/brepjs/kernel/occtWasm/hullOps.d.ts.map +0 -1
  917. package/dist/vendored/brepjs/kernel/occtWasm/hullOps.js +0 -55
  918. package/dist/vendored/brepjs/kernel/occtWasm/hullOps.js.map +0 -1
  919. package/dist/vendored/brepjs/kernel/occtWasm/ioOps.d.ts +0 -58
  920. package/dist/vendored/brepjs/kernel/occtWasm/ioOps.d.ts.map +0 -1
  921. package/dist/vendored/brepjs/kernel/occtWasm/ioOps.js +0 -303
  922. package/dist/vendored/brepjs/kernel/occtWasm/ioOps.js.map +0 -1
  923. package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.d.ts +0 -113
  924. package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.d.ts.map +0 -1
  925. package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.js +0 -731
  926. package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.js.map +0 -1
  927. package/dist/vendored/brepjs/kernel/occtWasm/measureOps.d.ts +0 -62
  928. package/dist/vendored/brepjs/kernel/occtWasm/measureOps.d.ts.map +0 -1
  929. package/dist/vendored/brepjs/kernel/occtWasm/measureOps.js +0 -338
  930. package/dist/vendored/brepjs/kernel/occtWasm/measureOps.js.map +0 -1
  931. package/dist/vendored/brepjs/kernel/occtWasm/meshOps.d.ts +0 -12
  932. package/dist/vendored/brepjs/kernel/occtWasm/meshOps.d.ts.map +0 -1
  933. package/dist/vendored/brepjs/kernel/occtWasm/meshOps.js +0 -120
  934. package/dist/vendored/brepjs/kernel/occtWasm/meshOps.js.map +0 -1
  935. package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.d.ts +0 -20
  936. package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.d.ts.map +0 -1
  937. package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.js +0 -187
  938. package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.js.map +0 -1
  939. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.d.ts +0 -513
  940. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.d.ts.map +0 -1
  941. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.js +0 -1016
  942. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.js.map +0 -1
  943. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.d.ts +0 -332
  944. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.d.ts.map +0 -1
  945. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.js +0 -10
  946. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.js.map +0 -1
  947. package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.d.ts +0 -16
  948. package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.d.ts.map +0 -1
  949. package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.js +0 -64
  950. package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.js.map +0 -1
  951. package/dist/vendored/brepjs/kernel/occtWasm/repairOps.d.ts +0 -16
  952. package/dist/vendored/brepjs/kernel/occtWasm/repairOps.d.ts.map +0 -1
  953. package/dist/vendored/brepjs/kernel/occtWasm/repairOps.js +0 -38
  954. package/dist/vendored/brepjs/kernel/occtWasm/repairOps.js.map +0 -1
  955. package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.d.ts +0 -56
  956. package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.d.ts.map +0 -1
  957. package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.js +0 -247
  958. package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.js.map +0 -1
  959. package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.d.ts +0 -56
  960. package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.d.ts.map +0 -1
  961. package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.js +0 -235
  962. package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.js.map +0 -1
  963. package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.d.ts +0 -25
  964. package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.d.ts.map +0 -1
  965. package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.js +0 -127
  966. package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.js.map +0 -1
  967. package/dist/vendored/brepjs/kernel/occtWasm/transformOps.d.ts +0 -40
  968. package/dist/vendored/brepjs/kernel/occtWasm/transformOps.d.ts.map +0 -1
  969. package/dist/vendored/brepjs/kernel/occtWasm/transformOps.js +0 -275
  970. package/dist/vendored/brepjs/kernel/occtWasm/transformOps.js.map +0 -1
  971. package/dist/vendored/brepjs/kernel/quality.d.ts +0 -28
  972. package/dist/vendored/brepjs/kernel/quality.d.ts.map +0 -1
  973. package/dist/vendored/brepjs/kernel/quality.js +0 -40
  974. package/dist/vendored/brepjs/kernel/quality.js.map +0 -1
  975. package/dist/vendored/brepjs/kernel/solverAdapter.d.ts +0 -50
  976. package/dist/vendored/brepjs/kernel/solverAdapter.d.ts.map +0 -1
  977. package/dist/vendored/brepjs/kernel/solverAdapter.js +0 -330
  978. package/dist/vendored/brepjs/kernel/solverAdapter.js.map +0 -1
  979. package/dist/vendored/brepjs/kernel/stlBuilder.d.ts +0 -21
  980. package/dist/vendored/brepjs/kernel/stlBuilder.d.ts.map +0 -1
  981. package/dist/vendored/brepjs/kernel/stlBuilder.js +0 -106
  982. package/dist/vendored/brepjs/kernel/stlBuilder.js.map +0 -1
  983. package/dist/vendored/brepjs/kernel/types.d.ts +0 -214
  984. package/dist/vendored/brepjs/kernel/types.d.ts.map +0 -1
  985. package/dist/vendored/brepjs/kernel/types.js +0 -22
  986. package/dist/vendored/brepjs/kernel/types.js.map +0 -1
  987. package/dist/vendored/brepjs/kernel/unsupported.d.ts +0 -15
  988. package/dist/vendored/brepjs/kernel/unsupported.d.ts.map +0 -1
  989. package/dist/vendored/brepjs/kernel/unsupported.js +0 -25
  990. package/dist/vendored/brepjs/kernel/unsupported.js.map +0 -1
  991. package/dist/vendored/brepjs/measurement/interferenceFns.d.ts +0 -68
  992. package/dist/vendored/brepjs/measurement/interferenceFns.d.ts.map +0 -1
  993. package/dist/vendored/brepjs/measurement/interferenceFns.js +0 -102
  994. package/dist/vendored/brepjs/measurement/interferenceFns.js.map +0 -1
  995. package/dist/vendored/brepjs/measurement/measureCache.d.ts +0 -20
  996. package/dist/vendored/brepjs/measurement/measureCache.d.ts.map +0 -1
  997. package/dist/vendored/brepjs/measurement/measureCache.js +0 -28
  998. package/dist/vendored/brepjs/measurement/measureCache.js.map +0 -1
  999. package/dist/vendored/brepjs/measurement/measureFns.d.ts +0 -92
  1000. package/dist/vendored/brepjs/measurement/measureFns.d.ts.map +0 -1
  1001. package/dist/vendored/brepjs/measurement/measureFns.js +0 -239
  1002. package/dist/vendored/brepjs/measurement/measureFns.js.map +0 -1
  1003. package/dist/vendored/brepjs/measurement/measureTypes.d.ts +0 -35
  1004. package/dist/vendored/brepjs/measurement/measureTypes.d.ts.map +0 -1
  1005. package/dist/vendored/brepjs/measurement/measureTypes.js +0 -7
  1006. package/dist/vendored/brepjs/measurement/measureTypes.js.map +0 -1
  1007. package/dist/vendored/brepjs/measurement.d.ts +0 -5
  1008. package/dist/vendored/brepjs/measurement.d.ts.map +0 -1
  1009. package/dist/vendored/brepjs/measurement.js +0 -5
  1010. package/dist/vendored/brepjs/measurement.js.map +0 -1
  1011. package/dist/vendored/brepjs/ns/booleans.d.ts +0 -11
  1012. package/dist/vendored/brepjs/ns/booleans.d.ts.map +0 -1
  1013. package/dist/vendored/brepjs/ns/booleans.js +0 -11
  1014. package/dist/vendored/brepjs/ns/booleans.js.map +0 -1
  1015. package/dist/vendored/brepjs/ns/construction.d.ts +0 -10
  1016. package/dist/vendored/brepjs/ns/construction.d.ts.map +0 -1
  1017. package/dist/vendored/brepjs/ns/construction.js +0 -10
  1018. package/dist/vendored/brepjs/ns/construction.js.map +0 -1
  1019. package/dist/vendored/brepjs/ns/ioNs.d.ts +0 -18
  1020. package/dist/vendored/brepjs/ns/ioNs.d.ts.map +0 -1
  1021. package/dist/vendored/brepjs/ns/ioNs.js +0 -20
  1022. package/dist/vendored/brepjs/ns/ioNs.js.map +0 -1
  1023. package/dist/vendored/brepjs/ns/measurement.d.ts +0 -6
  1024. package/dist/vendored/brepjs/ns/measurement.d.ts.map +0 -1
  1025. package/dist/vendored/brepjs/ns/measurement.js +0 -6
  1026. package/dist/vendored/brepjs/ns/measurement.js.map +0 -1
  1027. package/dist/vendored/brepjs/ns/modifiers.d.ts +0 -6
  1028. package/dist/vendored/brepjs/ns/modifiers.d.ts.map +0 -1
  1029. package/dist/vendored/brepjs/ns/modifiers.js +0 -6
  1030. package/dist/vendored/brepjs/ns/modifiers.js.map +0 -1
  1031. package/dist/vendored/brepjs/ns/patterns.d.ts +0 -5
  1032. package/dist/vendored/brepjs/ns/patterns.d.ts.map +0 -1
  1033. package/dist/vendored/brepjs/ns/patterns.js +0 -5
  1034. package/dist/vendored/brepjs/ns/patterns.js.map +0 -1
  1035. package/dist/vendored/brepjs/ns/primitives.d.ts +0 -7
  1036. package/dist/vendored/brepjs/ns/primitives.d.ts.map +0 -1
  1037. package/dist/vendored/brepjs/ns/primitives.js +0 -7
  1038. package/dist/vendored/brepjs/ns/primitives.js.map +0 -1
  1039. package/dist/vendored/brepjs/ns/query.d.ts +0 -6
  1040. package/dist/vendored/brepjs/ns/query.d.ts.map +0 -1
  1041. package/dist/vendored/brepjs/ns/query.js +0 -6
  1042. package/dist/vendored/brepjs/ns/query.js.map +0 -1
  1043. package/dist/vendored/brepjs/ns/transforms.d.ts +0 -5
  1044. package/dist/vendored/brepjs/ns/transforms.d.ts.map +0 -1
  1045. package/dist/vendored/brepjs/ns/transforms.js +0 -5
  1046. package/dist/vendored/brepjs/ns/transforms.js.map +0 -1
  1047. package/dist/vendored/brepjs/operations/api.d.ts +0 -39
  1048. package/dist/vendored/brepjs/operations/api.d.ts.map +0 -1
  1049. package/dist/vendored/brepjs/operations/api.js +0 -41
  1050. package/dist/vendored/brepjs/operations/api.js.map +0 -1
  1051. package/dist/vendored/brepjs/operations/assemblyFns.d.ts +0 -54
  1052. package/dist/vendored/brepjs/operations/assemblyFns.d.ts.map +0 -1
  1053. package/dist/vendored/brepjs/operations/assemblyFns.js +0 -91
  1054. package/dist/vendored/brepjs/operations/assemblyFns.js.map +0 -1
  1055. package/dist/vendored/brepjs/operations/compoundOpsFns.d.ts +0 -43
  1056. package/dist/vendored/brepjs/operations/compoundOpsFns.d.ts.map +0 -1
  1057. package/dist/vendored/brepjs/operations/compoundOpsFns.js +0 -368
  1058. package/dist/vendored/brepjs/operations/compoundOpsFns.js.map +0 -1
  1059. package/dist/vendored/brepjs/operations/convexHullFns.d.ts +0 -27
  1060. package/dist/vendored/brepjs/operations/convexHullFns.d.ts.map +0 -1
  1061. package/dist/vendored/brepjs/operations/convexHullFns.js +0 -50
  1062. package/dist/vendored/brepjs/operations/convexHullFns.js.map +0 -1
  1063. package/dist/vendored/brepjs/operations/dhFns.d.ts +0 -47
  1064. package/dist/vendored/brepjs/operations/dhFns.d.ts.map +0 -1
  1065. package/dist/vendored/brepjs/operations/dhFns.js +0 -53
  1066. package/dist/vendored/brepjs/operations/dhFns.js.map +0 -1
  1067. package/dist/vendored/brepjs/operations/exporterFns.d.ts +0 -47
  1068. package/dist/vendored/brepjs/operations/exporterFns.d.ts.map +0 -1
  1069. package/dist/vendored/brepjs/operations/exporterFns.js +0 -66
  1070. package/dist/vendored/brepjs/operations/exporterFns.js.map +0 -1
  1071. package/dist/vendored/brepjs/operations/exporterUtils.d.ts +0 -6
  1072. package/dist/vendored/brepjs/operations/exporterUtils.d.ts.map +0 -1
  1073. package/dist/vendored/brepjs/operations/exporterUtils.js +0 -5
  1074. package/dist/vendored/brepjs/operations/exporterUtils.js.map +0 -1
  1075. package/dist/vendored/brepjs/operations/exporters.d.ts +0 -59
  1076. package/dist/vendored/brepjs/operations/exporters.d.ts.map +0 -1
  1077. package/dist/vendored/brepjs/operations/exporters.js +0 -74
  1078. package/dist/vendored/brepjs/operations/exporters.js.map +0 -1
  1079. package/dist/vendored/brepjs/operations/extrudeFns.d.ts +0 -47
  1080. package/dist/vendored/brepjs/operations/extrudeFns.d.ts.map +0 -1
  1081. package/dist/vendored/brepjs/operations/extrudeFns.js +0 -119
  1082. package/dist/vendored/brepjs/operations/extrudeFns.js.map +0 -1
  1083. package/dist/vendored/brepjs/operations/extrudeUtils.d.ts +0 -63
  1084. package/dist/vendored/brepjs/operations/extrudeUtils.d.ts.map +0 -1
  1085. package/dist/vendored/brepjs/operations/extrudeUtils.js +0 -33
  1086. package/dist/vendored/brepjs/operations/extrudeUtils.js.map +0 -1
  1087. package/dist/vendored/brepjs/operations/guidedSweepFns.d.ts +0 -6
  1088. package/dist/vendored/brepjs/operations/guidedSweepFns.d.ts.map +0 -1
  1089. package/dist/vendored/brepjs/operations/guidedSweepFns.js +0 -6
  1090. package/dist/vendored/brepjs/operations/guidedSweepFns.js.map +0 -1
  1091. package/dist/vendored/brepjs/operations/historyFns.d.ts +0 -83
  1092. package/dist/vendored/brepjs/operations/historyFns.d.ts.map +0 -1
  1093. package/dist/vendored/brepjs/operations/historyFns.js +0 -256
  1094. package/dist/vendored/brepjs/operations/historyFns.js.map +0 -1
  1095. package/dist/vendored/brepjs/operations/ikFns.d.ts +0 -74
  1096. package/dist/vendored/brepjs/operations/ikFns.d.ts.map +0 -1
  1097. package/dist/vendored/brepjs/operations/ikFns.js +0 -320
  1098. package/dist/vendored/brepjs/operations/ikFns.js.map +0 -1
  1099. package/dist/vendored/brepjs/operations/instanceFns.d.ts +0 -76
  1100. package/dist/vendored/brepjs/operations/instanceFns.d.ts.map +0 -1
  1101. package/dist/vendored/brepjs/operations/instanceFns.js +0 -128
  1102. package/dist/vendored/brepjs/operations/instanceFns.js.map +0 -1
  1103. package/dist/vendored/brepjs/operations/jointFns.d.ts +0 -176
  1104. package/dist/vendored/brepjs/operations/jointFns.d.ts.map +0 -1
  1105. package/dist/vendored/brepjs/operations/jointFns.js +0 -298
  1106. package/dist/vendored/brepjs/operations/jointFns.js.map +0 -1
  1107. package/dist/vendored/brepjs/operations/loftFns.d.ts +0 -60
  1108. package/dist/vendored/brepjs/operations/loftFns.d.ts.map +0 -1
  1109. package/dist/vendored/brepjs/operations/loftFns.js +0 -112
  1110. package/dist/vendored/brepjs/operations/loftFns.js.map +0 -1
  1111. package/dist/vendored/brepjs/operations/mateFns.d.ts +0 -53
  1112. package/dist/vendored/brepjs/operations/mateFns.d.ts.map +0 -1
  1113. package/dist/vendored/brepjs/operations/mateFns.js +0 -142
  1114. package/dist/vendored/brepjs/operations/mateFns.js.map +0 -1
  1115. package/dist/vendored/brepjs/operations/multiSweepFns.d.ts +0 -6
  1116. package/dist/vendored/brepjs/operations/multiSweepFns.d.ts.map +0 -1
  1117. package/dist/vendored/brepjs/operations/multiSweepFns.js +0 -6
  1118. package/dist/vendored/brepjs/operations/multiSweepFns.js.map +0 -1
  1119. package/dist/vendored/brepjs/operations/patternFns.d.ts +0 -46
  1120. package/dist/vendored/brepjs/operations/patternFns.d.ts.map +0 -1
  1121. package/dist/vendored/brepjs/operations/patternFns.js +0 -126
  1122. package/dist/vendored/brepjs/operations/patternFns.js.map +0 -1
  1123. package/dist/vendored/brepjs/operations/roofFns.d.ts +0 -25
  1124. package/dist/vendored/brepjs/operations/roofFns.d.ts.map +0 -1
  1125. package/dist/vendored/brepjs/operations/roofFns.js +0 -250
  1126. package/dist/vendored/brepjs/operations/roofFns.js.map +0 -1
  1127. package/dist/vendored/brepjs/operations/straightSkeleton.d.ts +0 -29
  1128. package/dist/vendored/brepjs/operations/straightSkeleton.d.ts.map +0 -1
  1129. package/dist/vendored/brepjs/operations/straightSkeleton.js +0 -440
  1130. package/dist/vendored/brepjs/operations/straightSkeleton.js.map +0 -1
  1131. package/dist/vendored/brepjs/operations/sweepFns.d.ts +0 -121
  1132. package/dist/vendored/brepjs/operations/sweepFns.d.ts.map +0 -1
  1133. package/dist/vendored/brepjs/operations/sweepFns.js +0 -438
  1134. package/dist/vendored/brepjs/operations/sweepFns.js.map +0 -1
  1135. package/dist/vendored/brepjs/operations/threadFns.d.ts +0 -57
  1136. package/dist/vendored/brepjs/operations/threadFns.d.ts.map +0 -1
  1137. package/dist/vendored/brepjs/operations/threadFns.js +0 -145
  1138. package/dist/vendored/brepjs/operations/threadFns.js.map +0 -1
  1139. package/dist/vendored/brepjs/operations/urdfFns.d.ts +0 -48
  1140. package/dist/vendored/brepjs/operations/urdfFns.d.ts.map +0 -1
  1141. package/dist/vendored/brepjs/operations/urdfFns.js +0 -171
  1142. package/dist/vendored/brepjs/operations/urdfFns.js.map +0 -1
  1143. package/dist/vendored/brepjs/operations.d.ts +0 -20
  1144. package/dist/vendored/brepjs/operations.d.ts.map +0 -1
  1145. package/dist/vendored/brepjs/operations.js +0 -26
  1146. package/dist/vendored/brepjs/operations.js.map +0 -1
  1147. package/dist/vendored/brepjs/projection/cameraFns.d.ts +0 -63
  1148. package/dist/vendored/brepjs/projection/cameraFns.d.ts.map +0 -1
  1149. package/dist/vendored/brepjs/projection/cameraFns.js +0 -89
  1150. package/dist/vendored/brepjs/projection/cameraFns.js.map +0 -1
  1151. package/dist/vendored/brepjs/projection/makeProjectedEdges.d.ts +0 -14
  1152. package/dist/vendored/brepjs/projection/makeProjectedEdges.d.ts.map +0 -1
  1153. package/dist/vendored/brepjs/projection/makeProjectedEdges.js +0 -111
  1154. package/dist/vendored/brepjs/projection/makeProjectedEdges.js.map +0 -1
  1155. package/dist/vendored/brepjs/projection/projectionPlanes.d.ts +0 -18
  1156. package/dist/vendored/brepjs/projection/projectionPlanes.d.ts.map +0 -1
  1157. package/dist/vendored/brepjs/projection/projectionPlanes.js +0 -23
  1158. package/dist/vendored/brepjs/projection/projectionPlanes.js.map +0 -1
  1159. package/dist/vendored/brepjs/projection.d.ts +0 -12
  1160. package/dist/vendored/brepjs/projection.d.ts.map +0 -1
  1161. package/dist/vendored/brepjs/projection.js +0 -12
  1162. package/dist/vendored/brepjs/projection.js.map +0 -1
  1163. package/dist/vendored/brepjs/query/cornerFinder.d.ts +0 -54
  1164. package/dist/vendored/brepjs/query/cornerFinder.d.ts.map +0 -1
  1165. package/dist/vendored/brepjs/query/cornerFinder.js +0 -73
  1166. package/dist/vendored/brepjs/query/cornerFinder.js.map +0 -1
  1167. package/dist/vendored/brepjs/query/directionUtils.d.ts +0 -9
  1168. package/dist/vendored/brepjs/query/directionUtils.d.ts.map +0 -1
  1169. package/dist/vendored/brepjs/query/directionUtils.js +0 -18
  1170. package/dist/vendored/brepjs/query/directionUtils.js.map +0 -1
  1171. package/dist/vendored/brepjs/query/edgeFinder.d.ts +0 -5
  1172. package/dist/vendored/brepjs/query/edgeFinder.d.ts.map +0 -1
  1173. package/dist/vendored/brepjs/query/edgeFinder.js +0 -5
  1174. package/dist/vendored/brepjs/query/edgeFinder.js.map +0 -1
  1175. package/dist/vendored/brepjs/query/faceFinder.d.ts +0 -5
  1176. package/dist/vendored/brepjs/query/faceFinder.d.ts.map +0 -1
  1177. package/dist/vendored/brepjs/query/faceFinder.js +0 -5
  1178. package/dist/vendored/brepjs/query/faceFinder.js.map +0 -1
  1179. package/dist/vendored/brepjs/query/finderCore.d.ts +0 -49
  1180. package/dist/vendored/brepjs/query/finderCore.d.ts.map +0 -1
  1181. package/dist/vendored/brepjs/query/finderCore.js +0 -120
  1182. package/dist/vendored/brepjs/query/finderCore.js.map +0 -1
  1183. package/dist/vendored/brepjs/query/finderFns.d.ts +0 -25
  1184. package/dist/vendored/brepjs/query/finderFns.d.ts.map +0 -1
  1185. package/dist/vendored/brepjs/query/finderFns.js +0 -25
  1186. package/dist/vendored/brepjs/query/finderFns.js.map +0 -1
  1187. package/dist/vendored/brepjs/query/helpers.d.ts +0 -11
  1188. package/dist/vendored/brepjs/query/helpers.d.ts.map +0 -1
  1189. package/dist/vendored/brepjs/query/helpers.js +0 -17
  1190. package/dist/vendored/brepjs/query/helpers.js.map +0 -1
  1191. package/dist/vendored/brepjs/query/shapeDistanceFilter.d.ts +0 -15
  1192. package/dist/vendored/brepjs/query/shapeDistanceFilter.d.ts.map +0 -1
  1193. package/dist/vendored/brepjs/query/shapeDistanceFilter.js +0 -21
  1194. package/dist/vendored/brepjs/query/shapeDistanceFilter.js.map +0 -1
  1195. package/dist/vendored/brepjs/query/shapeFinders.d.ts +0 -39
  1196. package/dist/vendored/brepjs/query/shapeFinders.d.ts.map +0 -1
  1197. package/dist/vendored/brepjs/query/shapeFinders.js +0 -82
  1198. package/dist/vendored/brepjs/query/shapeFinders.js.map +0 -1
  1199. package/dist/vendored/brepjs/query/vertexFinder.d.ts +0 -19
  1200. package/dist/vendored/brepjs/query/vertexFinder.d.ts.map +0 -1
  1201. package/dist/vendored/brepjs/query/vertexFinder.js +0 -73
  1202. package/dist/vendored/brepjs/query/vertexFinder.js.map +0 -1
  1203. package/dist/vendored/brepjs/query/wireFinder.d.ts +0 -5
  1204. package/dist/vendored/brepjs/query/wireFinder.d.ts.map +0 -1
  1205. package/dist/vendored/brepjs/query/wireFinder.js +0 -5
  1206. package/dist/vendored/brepjs/query/wireFinder.js.map +0 -1
  1207. package/dist/vendored/brepjs/query.d.ts +0 -6
  1208. package/dist/vendored/brepjs/query.d.ts.map +0 -1
  1209. package/dist/vendored/brepjs/query.js +0 -6
  1210. package/dist/vendored/brepjs/query.js.map +0 -1
  1211. package/dist/vendored/brepjs/result.d.ts +0 -7
  1212. package/dist/vendored/brepjs/result.d.ts.map +0 -1
  1213. package/dist/vendored/brepjs/result.js +0 -7
  1214. package/dist/vendored/brepjs/result.js.map +0 -1
  1215. package/dist/vendored/brepjs/shapeRef.d.ts +0 -13
  1216. package/dist/vendored/brepjs/shapeRef.d.ts.map +0 -1
  1217. package/dist/vendored/brepjs/shapeRef.js +0 -13
  1218. package/dist/vendored/brepjs/shapeRef.js.map +0 -1
  1219. package/dist/vendored/brepjs/sketching/cannedSketches.d.ts +0 -144
  1220. package/dist/vendored/brepjs/sketching/cannedSketches.d.ts.map +0 -1
  1221. package/dist/vendored/brepjs/sketching/cannedSketches.js +0 -327
  1222. package/dist/vendored/brepjs/sketching/cannedSketches.js.map +0 -1
  1223. package/dist/vendored/brepjs/sketching/compoundSketch.d.ts +0 -70
  1224. package/dist/vendored/brepjs/sketching/compoundSketch.d.ts.map +0 -1
  1225. package/dist/vendored/brepjs/sketching/compoundSketch.js +0 -87
  1226. package/dist/vendored/brepjs/sketching/compoundSketch.js.map +0 -1
  1227. package/dist/vendored/brepjs/sketching/draw3d.d.ts +0 -22
  1228. package/dist/vendored/brepjs/sketching/draw3d.d.ts.map +0 -1
  1229. package/dist/vendored/brepjs/sketching/draw3d.js +0 -150
  1230. package/dist/vendored/brepjs/sketching/draw3d.js.map +0 -1
  1231. package/dist/vendored/brepjs/sketching/drawFns.d.ts +0 -122
  1232. package/dist/vendored/brepjs/sketching/drawFns.d.ts.map +0 -1
  1233. package/dist/vendored/brepjs/sketching/drawFns.js +0 -129
  1234. package/dist/vendored/brepjs/sketching/drawFns.js.map +0 -1
  1235. package/dist/vendored/brepjs/sketching/drawing.d.ts +0 -128
  1236. package/dist/vendored/brepjs/sketching/drawing.d.ts.map +0 -1
  1237. package/dist/vendored/brepjs/sketching/drawing.js +0 -275
  1238. package/dist/vendored/brepjs/sketching/drawing.js.map +0 -1
  1239. package/dist/vendored/brepjs/sketching/drawingFactories.d.ts +0 -95
  1240. package/dist/vendored/brepjs/sketching/drawingFactories.d.ts.map +0 -1
  1241. package/dist/vendored/brepjs/sketching/drawingFactories.js +0 -125
  1242. package/dist/vendored/brepjs/sketching/drawingFactories.js.map +0 -1
  1243. package/dist/vendored/brepjs/sketching/drawingPen.d.ts +0 -35
  1244. package/dist/vendored/brepjs/sketching/drawingPen.d.ts.map +0 -1
  1245. package/dist/vendored/brepjs/sketching/drawingPen.js +0 -57
  1246. package/dist/vendored/brepjs/sketching/drawingPen.js.map +0 -1
  1247. package/dist/vendored/brepjs/sketching/faceSketcher.d.ts +0 -53
  1248. package/dist/vendored/brepjs/sketching/faceSketcher.d.ts.map +0 -1
  1249. package/dist/vendored/brepjs/sketching/faceSketcher.js +0 -167
  1250. package/dist/vendored/brepjs/sketching/faceSketcher.js.map +0 -1
  1251. package/dist/vendored/brepjs/sketching/shortcuts.d.ts +0 -16
  1252. package/dist/vendored/brepjs/sketching/shortcuts.d.ts.map +0 -1
  1253. package/dist/vendored/brepjs/sketching/shortcuts.js +0 -24
  1254. package/dist/vendored/brepjs/sketching/shortcuts.js.map +0 -1
  1255. package/dist/vendored/brepjs/sketching/sketch.d.ts +0 -157
  1256. package/dist/vendored/brepjs/sketching/sketch.d.ts.map +0 -1
  1257. package/dist/vendored/brepjs/sketching/sketch.js +0 -151
  1258. package/dist/vendored/brepjs/sketching/sketch.js.map +0 -1
  1259. package/dist/vendored/brepjs/sketching/sketchFns.d.ts +0 -89
  1260. package/dist/vendored/brepjs/sketching/sketchFns.d.ts.map +0 -1
  1261. package/dist/vendored/brepjs/sketching/sketchFns.js +0 -266
  1262. package/dist/vendored/brepjs/sketching/sketchFns.js.map +0 -1
  1263. package/dist/vendored/brepjs/sketching/sketcher.d.ts +0 -70
  1264. package/dist/vendored/brepjs/sketching/sketcher.d.ts.map +0 -1
  1265. package/dist/vendored/brepjs/sketching/sketcher.js +0 -181
  1266. package/dist/vendored/brepjs/sketching/sketcher.js.map +0 -1
  1267. package/dist/vendored/brepjs/sketching/sketches.d.ts +0 -70
  1268. package/dist/vendored/brepjs/sketching/sketches.d.ts.map +0 -1
  1269. package/dist/vendored/brepjs/sketching/sketches.js +0 -91
  1270. package/dist/vendored/brepjs/sketching/sketches.js.map +0 -1
  1271. package/dist/vendored/brepjs/sketching.d.ts +0 -28
  1272. package/dist/vendored/brepjs/sketching.d.ts.map +0 -1
  1273. package/dist/vendored/brepjs/sketching.js +0 -30
  1274. package/dist/vendored/brepjs/sketching.js.map +0 -1
  1275. package/dist/vendored/brepjs/text/fontRegistry.d.ts +0 -23
  1276. package/dist/vendored/brepjs/text/fontRegistry.d.ts.map +0 -1
  1277. package/dist/vendored/brepjs/text/fontRegistry.js +0 -61
  1278. package/dist/vendored/brepjs/text/fontRegistry.js.map +0 -1
  1279. package/dist/vendored/brepjs/text/sketchText.d.ts +0 -31
  1280. package/dist/vendored/brepjs/text/sketchText.d.ts.map +0 -1
  1281. package/dist/vendored/brepjs/text/sketchText.js +0 -30
  1282. package/dist/vendored/brepjs/text/sketchText.js.map +0 -1
  1283. package/dist/vendored/brepjs/text/textBlueprints.d.ts +0 -19
  1284. package/dist/vendored/brepjs/text/textBlueprints.d.ts.map +0 -1
  1285. package/dist/vendored/brepjs/text/textBlueprints.js +0 -61
  1286. package/dist/vendored/brepjs/text/textBlueprints.js.map +0 -1
  1287. package/dist/vendored/brepjs/text/textMetrics.d.ts +0 -40
  1288. package/dist/vendored/brepjs/text/textMetrics.d.ts.map +0 -1
  1289. package/dist/vendored/brepjs/text/textMetrics.js +0 -43
  1290. package/dist/vendored/brepjs/text/textMetrics.js.map +0 -1
  1291. package/dist/vendored/brepjs/text.d.ts +0 -13
  1292. package/dist/vendored/brepjs/text.d.ts.map +0 -1
  1293. package/dist/vendored/brepjs/text.js +0 -13
  1294. package/dist/vendored/brepjs/text.js.map +0 -1
  1295. package/dist/vendored/brepjs/topology/adjacencyFns.d.ts +0 -89
  1296. package/dist/vendored/brepjs/topology/adjacencyFns.d.ts.map +0 -1
  1297. package/dist/vendored/brepjs/topology/adjacencyFns.js +0 -411
  1298. package/dist/vendored/brepjs/topology/adjacencyFns.js.map +0 -1
  1299. package/dist/vendored/brepjs/topology/api.d.ts +0 -145
  1300. package/dist/vendored/brepjs/topology/api.d.ts.map +0 -1
  1301. package/dist/vendored/brepjs/topology/api.js +0 -282
  1302. package/dist/vendored/brepjs/topology/api.js.map +0 -1
  1303. package/dist/vendored/brepjs/topology/apiTypes.d.ts +0 -135
  1304. package/dist/vendored/brepjs/topology/apiTypes.d.ts.map +0 -1
  1305. package/dist/vendored/brepjs/topology/apiTypes.js +0 -24
  1306. package/dist/vendored/brepjs/topology/apiTypes.js.map +0 -1
  1307. package/dist/vendored/brepjs/topology/booleanBatchFns.d.ts +0 -52
  1308. package/dist/vendored/brepjs/topology/booleanBatchFns.d.ts.map +0 -1
  1309. package/dist/vendored/brepjs/topology/booleanBatchFns.js +0 -164
  1310. package/dist/vendored/brepjs/topology/booleanBatchFns.js.map +0 -1
  1311. package/dist/vendored/brepjs/topology/booleanDiagnosticFns.d.ts +0 -21
  1312. package/dist/vendored/brepjs/topology/booleanDiagnosticFns.d.ts.map +0 -1
  1313. package/dist/vendored/brepjs/topology/booleanDiagnosticFns.js +0 -23
  1314. package/dist/vendored/brepjs/topology/booleanDiagnosticFns.js.map +0 -1
  1315. package/dist/vendored/brepjs/topology/booleanFns.d.ts +0 -155
  1316. package/dist/vendored/brepjs/topology/booleanFns.d.ts.map +0 -1
  1317. package/dist/vendored/brepjs/topology/booleanFns.js +0 -600
  1318. package/dist/vendored/brepjs/topology/booleanFns.js.map +0 -1
  1319. package/dist/vendored/brepjs/topology/cast.d.ts +0 -48
  1320. package/dist/vendored/brepjs/topology/cast.d.ts.map +0 -1
  1321. package/dist/vendored/brepjs/topology/cast.js +0 -113
  1322. package/dist/vendored/brepjs/topology/cast.js.map +0 -1
  1323. package/dist/vendored/brepjs/topology/chamferAngleFns.d.ts +0 -24
  1324. package/dist/vendored/brepjs/topology/chamferAngleFns.d.ts.map +0 -1
  1325. package/dist/vendored/brepjs/topology/chamferAngleFns.js +0 -64
  1326. package/dist/vendored/brepjs/topology/chamferAngleFns.js.map +0 -1
  1327. package/dist/vendored/brepjs/topology/compoundOpsFns.d.ts +0 -6
  1328. package/dist/vendored/brepjs/topology/compoundOpsFns.d.ts.map +0 -1
  1329. package/dist/vendored/brepjs/topology/compoundOpsFns.js +0 -6
  1330. package/dist/vendored/brepjs/topology/compoundOpsFns.js.map +0 -1
  1331. package/dist/vendored/brepjs/topology/curveBuilders.d.ts +0 -90
  1332. package/dist/vendored/brepjs/topology/curveBuilders.d.ts.map +0 -1
  1333. package/dist/vendored/brepjs/topology/curveBuilders.js +0 -125
  1334. package/dist/vendored/brepjs/topology/curveBuilders.js.map +0 -1
  1335. package/dist/vendored/brepjs/topology/curveFns.d.ts +0 -96
  1336. package/dist/vendored/brepjs/topology/curveFns.d.ts.map +0 -1
  1337. package/dist/vendored/brepjs/topology/curveFns.js +0 -191
  1338. package/dist/vendored/brepjs/topology/curveFns.js.map +0 -1
  1339. package/dist/vendored/brepjs/topology/evolutionFns.d.ts +0 -78
  1340. package/dist/vendored/brepjs/topology/evolutionFns.d.ts.map +0 -1
  1341. package/dist/vendored/brepjs/topology/evolutionFns.js +0 -271
  1342. package/dist/vendored/brepjs/topology/evolutionFns.js.map +0 -1
  1343. package/dist/vendored/brepjs/topology/faceFns.d.ts +0 -86
  1344. package/dist/vendored/brepjs/topology/faceFns.d.ts.map +0 -1
  1345. package/dist/vendored/brepjs/topology/faceFns.js +0 -169
  1346. package/dist/vendored/brepjs/topology/faceFns.js.map +0 -1
  1347. package/dist/vendored/brepjs/topology/healingFns.d.ts +0 -98
  1348. package/dist/vendored/brepjs/topology/healingFns.d.ts.map +0 -1
  1349. package/dist/vendored/brepjs/topology/healingFns.js +0 -338
  1350. package/dist/vendored/brepjs/topology/healingFns.js.map +0 -1
  1351. package/dist/vendored/brepjs/topology/hullFns.d.ts +0 -21
  1352. package/dist/vendored/brepjs/topology/hullFns.d.ts.map +0 -1
  1353. package/dist/vendored/brepjs/topology/hullFns.js +0 -60
  1354. package/dist/vendored/brepjs/topology/hullFns.js.map +0 -1
  1355. package/dist/vendored/brepjs/topology/index.d.ts +0 -14
  1356. package/dist/vendored/brepjs/topology/index.d.ts.map +0 -1
  1357. package/dist/vendored/brepjs/topology/index.js +0 -17
  1358. package/dist/vendored/brepjs/topology/index.js.map +0 -1
  1359. package/dist/vendored/brepjs/topology/meshCache.d.ts +0 -68
  1360. package/dist/vendored/brepjs/topology/meshCache.d.ts.map +0 -1
  1361. package/dist/vendored/brepjs/topology/meshCache.js +0 -117
  1362. package/dist/vendored/brepjs/topology/meshCache.js.map +0 -1
  1363. package/dist/vendored/brepjs/topology/meshFns.d.ts +0 -179
  1364. package/dist/vendored/brepjs/topology/meshFns.d.ts.map +0 -1
  1365. package/dist/vendored/brepjs/topology/meshFns.js +0 -393
  1366. package/dist/vendored/brepjs/topology/meshFns.js.map +0 -1
  1367. package/dist/vendored/brepjs/topology/metadata/colorFns.d.ts +0 -41
  1368. package/dist/vendored/brepjs/topology/metadata/colorFns.d.ts.map +0 -1
  1369. package/dist/vendored/brepjs/topology/metadata/colorFns.js +0 -128
  1370. package/dist/vendored/brepjs/topology/metadata/colorFns.js.map +0 -1
  1371. package/dist/vendored/brepjs/topology/metadata/faceTagFns.d.ts +0 -44
  1372. package/dist/vendored/brepjs/topology/metadata/faceTagFns.d.ts.map +0 -1
  1373. package/dist/vendored/brepjs/topology/metadata/faceTagFns.js +0 -168
  1374. package/dist/vendored/brepjs/topology/metadata/faceTagFns.js.map +0 -1
  1375. package/dist/vendored/brepjs/topology/metadata/metadataPropagation.d.ts +0 -59
  1376. package/dist/vendored/brepjs/topology/metadata/metadataPropagation.d.ts.map +0 -1
  1377. package/dist/vendored/brepjs/topology/metadata/metadataPropagation.js +0 -109
  1378. package/dist/vendored/brepjs/topology/metadata/metadataPropagation.js.map +0 -1
  1379. package/dist/vendored/brepjs/topology/metadata/originTrackingFns.d.ts +0 -43
  1380. package/dist/vendored/brepjs/topology/metadata/originTrackingFns.d.ts.map +0 -1
  1381. package/dist/vendored/brepjs/topology/metadata/originTrackingFns.js +0 -270
  1382. package/dist/vendored/brepjs/topology/metadata/originTrackingFns.js.map +0 -1
  1383. package/dist/vendored/brepjs/topology/minkowskiFns.d.ts +0 -26
  1384. package/dist/vendored/brepjs/topology/minkowskiFns.d.ts.map +0 -1
  1385. package/dist/vendored/brepjs/topology/minkowskiFns.js +0 -136
  1386. package/dist/vendored/brepjs/topology/minkowskiFns.js.map +0 -1
  1387. package/dist/vendored/brepjs/topology/modifierFns.d.ts +0 -87
  1388. package/dist/vendored/brepjs/topology/modifierFns.d.ts.map +0 -1
  1389. package/dist/vendored/brepjs/topology/modifierFns.js +0 -446
  1390. package/dist/vendored/brepjs/topology/modifierFns.js.map +0 -1
  1391. package/dist/vendored/brepjs/topology/nurbsFns.d.ts +0 -13
  1392. package/dist/vendored/brepjs/topology/nurbsFns.d.ts.map +0 -1
  1393. package/dist/vendored/brepjs/topology/nurbsFns.js +0 -22
  1394. package/dist/vendored/brepjs/topology/nurbsFns.js.map +0 -1
  1395. package/dist/vendored/brepjs/topology/polyhedronFns.d.ts +0 -11
  1396. package/dist/vendored/brepjs/topology/polyhedronFns.d.ts.map +0 -1
  1397. package/dist/vendored/brepjs/topology/polyhedronFns.js +0 -47
  1398. package/dist/vendored/brepjs/topology/polyhedronFns.js.map +0 -1
  1399. package/dist/vendored/brepjs/topology/positionFns.d.ts +0 -18
  1400. package/dist/vendored/brepjs/topology/positionFns.d.ts.map +0 -1
  1401. package/dist/vendored/brepjs/topology/positionFns.js +0 -34
  1402. package/dist/vendored/brepjs/topology/positionFns.js.map +0 -1
  1403. package/dist/vendored/brepjs/topology/primitiveFns.d.ts +0 -244
  1404. package/dist/vendored/brepjs/topology/primitiveFns.d.ts.map +0 -1
  1405. package/dist/vendored/brepjs/topology/primitiveFns.js +0 -361
  1406. package/dist/vendored/brepjs/topology/primitiveFns.js.map +0 -1
  1407. package/dist/vendored/brepjs/topology/shapeBooleans.d.ts +0 -14
  1408. package/dist/vendored/brepjs/topology/shapeBooleans.d.ts.map +0 -1
  1409. package/dist/vendored/brepjs/topology/shapeBooleans.js +0 -24
  1410. package/dist/vendored/brepjs/topology/shapeBooleans.js.map +0 -1
  1411. package/dist/vendored/brepjs/topology/shapeFns.d.ts +0 -30
  1412. package/dist/vendored/brepjs/topology/shapeFns.d.ts.map +0 -1
  1413. package/dist/vendored/brepjs/topology/shapeFns.js +0 -50
  1414. package/dist/vendored/brepjs/topology/shapeFns.js.map +0 -1
  1415. package/dist/vendored/brepjs/topology/shapeHelpers.d.ts +0 -9
  1416. package/dist/vendored/brepjs/topology/shapeHelpers.d.ts.map +0 -1
  1417. package/dist/vendored/brepjs/topology/shapeHelpers.js +0 -14
  1418. package/dist/vendored/brepjs/topology/shapeHelpers.js.map +0 -1
  1419. package/dist/vendored/brepjs/topology/shapeModifiers.d.ts +0 -33
  1420. package/dist/vendored/brepjs/topology/shapeModifiers.d.ts.map +0 -1
  1421. package/dist/vendored/brepjs/topology/shapeModifiers.js +0 -28
  1422. package/dist/vendored/brepjs/topology/shapeModifiers.js.map +0 -1
  1423. package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.d.ts +0 -29
  1424. package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.d.ts.map +0 -1
  1425. package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.js +0 -135
  1426. package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.js.map +0 -1
  1427. package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.d.ts +0 -25
  1428. package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.d.ts.map +0 -1
  1429. package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.js +0 -123
  1430. package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.js.map +0 -1
  1431. package/dist/vendored/brepjs/topology/shapeRef/index.d.ts +0 -11
  1432. package/dist/vendored/brepjs/topology/shapeRef/index.d.ts.map +0 -1
  1433. package/dist/vendored/brepjs/topology/shapeRef/index.js +0 -10
  1434. package/dist/vendored/brepjs/topology/shapeRef/index.js.map +0 -1
  1435. package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.d.ts +0 -66
  1436. package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.d.ts.map +0 -1
  1437. package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.js +0 -128
  1438. package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.js.map +0 -1
  1439. package/dist/vendored/brepjs/topology/shapeRef/roleLookup.d.ts +0 -18
  1440. package/dist/vendored/brepjs/topology/shapeRef/roleLookup.d.ts.map +0 -1
  1441. package/dist/vendored/brepjs/topology/shapeRef/roleLookup.js +0 -51
  1442. package/dist/vendored/brepjs/topology/shapeRef/roleLookup.js.map +0 -1
  1443. package/dist/vendored/brepjs/topology/shapeRef/scoring.d.ts +0 -20
  1444. package/dist/vendored/brepjs/topology/shapeRef/scoring.d.ts.map +0 -1
  1445. package/dist/vendored/brepjs/topology/shapeRef/scoring.js +0 -65
  1446. package/dist/vendored/brepjs/topology/shapeRef/scoring.js.map +0 -1
  1447. package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.d.ts +0 -59
  1448. package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.d.ts.map +0 -1
  1449. package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.js +0 -266
  1450. package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.js.map +0 -1
  1451. package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.d.ts +0 -153
  1452. package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.d.ts.map +0 -1
  1453. package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.js +0 -6
  1454. package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.js.map +0 -1
  1455. package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.d.ts +0 -24
  1456. package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.d.ts.map +0 -1
  1457. package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.js +0 -128
  1458. package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.js.map +0 -1
  1459. package/dist/vendored/brepjs/topology/shapeUtils.d.ts +0 -16
  1460. package/dist/vendored/brepjs/topology/shapeUtils.d.ts.map +0 -1
  1461. package/dist/vendored/brepjs/topology/shapeUtils.js +0 -28
  1462. package/dist/vendored/brepjs/topology/shapeUtils.js.map +0 -1
  1463. package/dist/vendored/brepjs/topology/solidBuilders.d.ts +0 -74
  1464. package/dist/vendored/brepjs/topology/solidBuilders.d.ts.map +0 -1
  1465. package/dist/vendored/brepjs/topology/solidBuilders.js +0 -173
  1466. package/dist/vendored/brepjs/topology/solidBuilders.js.map +0 -1
  1467. package/dist/vendored/brepjs/topology/surfaceBuilders.d.ts +0 -47
  1468. package/dist/vendored/brepjs/topology/surfaceBuilders.d.ts.map +0 -1
  1469. package/dist/vendored/brepjs/topology/surfaceBuilders.js +0 -162
  1470. package/dist/vendored/brepjs/topology/surfaceBuilders.js.map +0 -1
  1471. package/dist/vendored/brepjs/topology/surfaceFns.d.ts +0 -41
  1472. package/dist/vendored/brepjs/topology/surfaceFns.d.ts.map +0 -1
  1473. package/dist/vendored/brepjs/topology/surfaceFns.js +0 -178
  1474. package/dist/vendored/brepjs/topology/surfaceFns.js.map +0 -1
  1475. package/dist/vendored/brepjs/topology/threeHelpers.d.ts +0 -124
  1476. package/dist/vendored/brepjs/topology/threeHelpers.d.ts.map +0 -1
  1477. package/dist/vendored/brepjs/topology/threeHelpers.js +0 -118
  1478. package/dist/vendored/brepjs/topology/threeHelpers.js.map +0 -1
  1479. package/dist/vendored/brepjs/topology/topologyQueryFns.d.ts +0 -100
  1480. package/dist/vendored/brepjs/topology/topologyQueryFns.d.ts.map +0 -1
  1481. package/dist/vendored/brepjs/topology/topologyQueryFns.js +0 -307
  1482. package/dist/vendored/brepjs/topology/topologyQueryFns.js.map +0 -1
  1483. package/dist/vendored/brepjs/topology/transformFns.d.ts +0 -69
  1484. package/dist/vendored/brepjs/topology/transformFns.d.ts.map +0 -1
  1485. package/dist/vendored/brepjs/topology/transformFns.js +0 -235
  1486. package/dist/vendored/brepjs/topology/transformFns.js.map +0 -1
  1487. package/dist/vendored/brepjs/topology/wrapperFns.d.ts +0 -169
  1488. package/dist/vendored/brepjs/topology/wrapperFns.d.ts.map +0 -1
  1489. package/dist/vendored/brepjs/topology/wrapperFns.js +0 -291
  1490. package/dist/vendored/brepjs/topology/wrapperFns.js.map +0 -1
  1491. package/dist/vendored/brepjs/topology.d.ts +0 -28
  1492. package/dist/vendored/brepjs/topology.d.ts.map +0 -1
  1493. package/dist/vendored/brepjs/topology.js +0 -39
  1494. package/dist/vendored/brepjs/topology.js.map +0 -1
  1495. package/dist/vendored/brepjs/utils/arrayAccess.d.ts +0 -12
  1496. package/dist/vendored/brepjs/utils/arrayAccess.d.ts.map +0 -1
  1497. package/dist/vendored/brepjs/utils/arrayAccess.js +0 -25
  1498. package/dist/vendored/brepjs/utils/arrayAccess.js.map +0 -1
  1499. package/dist/vendored/brepjs/utils/bug.d.ts +0 -15
  1500. package/dist/vendored/brepjs/utils/bug.d.ts.map +0 -1
  1501. package/dist/vendored/brepjs/utils/bug.js +0 -21
  1502. package/dist/vendored/brepjs/utils/bug.js.map +0 -1
  1503. package/dist/vendored/brepjs/utils/ioFilename.d.ts +0 -3
  1504. package/dist/vendored/brepjs/utils/ioFilename.d.ts.map +0 -1
  1505. package/dist/vendored/brepjs/utils/ioFilename.js +0 -7
  1506. package/dist/vendored/brepjs/utils/ioFilename.js.map +0 -1
  1507. package/dist/vendored/brepjs/utils/precisionRound.d.ts +0 -11
  1508. package/dist/vendored/brepjs/utils/precisionRound.d.ts.map +0 -1
  1509. package/dist/vendored/brepjs/utils/precisionRound.js +0 -19
  1510. package/dist/vendored/brepjs/utils/precisionRound.js.map +0 -1
  1511. package/dist/vendored/brepjs/utils/quaternion.d.ts +0 -18
  1512. package/dist/vendored/brepjs/utils/quaternion.d.ts.map +0 -1
  1513. package/dist/vendored/brepjs/utils/quaternion.js +0 -68
  1514. package/dist/vendored/brepjs/utils/quaternion.js.map +0 -1
  1515. package/dist/vendored/brepjs/utils/range.d.ts +0 -3
  1516. package/dist/vendored/brepjs/utils/range.d.ts.map +0 -1
  1517. package/dist/vendored/brepjs/utils/range.js +0 -5
  1518. package/dist/vendored/brepjs/utils/range.js.map +0 -1
  1519. package/dist/vendored/brepjs/utils/uuid.d.ts +0 -3
  1520. package/dist/vendored/brepjs/utils/uuid.d.ts.map +0 -1
  1521. package/dist/vendored/brepjs/utils/uuid.js +0 -7
  1522. package/dist/vendored/brepjs/utils/uuid.js.map +0 -1
  1523. package/dist/vendored/brepjs/utils/vec2d.d.ts +0 -62
  1524. package/dist/vendored/brepjs/utils/vec2d.d.ts.map +0 -1
  1525. package/dist/vendored/brepjs/utils/vec2d.js +0 -107
  1526. package/dist/vendored/brepjs/utils/vec2d.js.map +0 -1
  1527. package/dist/vendored/brepjs/utils/vec3.d.ts +0 -32
  1528. package/dist/vendored/brepjs/utils/vec3.d.ts.map +0 -1
  1529. package/dist/vendored/brepjs/utils/vec3.js +0 -35
  1530. package/dist/vendored/brepjs/utils/vec3.js.map +0 -1
  1531. package/dist/vendored/brepjs/utils/zip.d.ts +0 -5
  1532. package/dist/vendored/brepjs/utils/zip.d.ts.map +0 -1
  1533. package/dist/vendored/brepjs/utils/zip.js +0 -8
  1534. package/dist/vendored/brepjs/utils/zip.js.map +0 -1
  1535. package/dist/vendored/brepjs/vectors.d.ts +0 -11
  1536. package/dist/vendored/brepjs/vectors.d.ts.map +0 -1
  1537. package/dist/vendored/brepjs/vectors.js +0 -9
  1538. package/dist/vendored/brepjs/vectors.js.map +0 -1
@@ -0,0 +1,21 @@
1
+ /**
2
+ * meshdata/weld — 顶点焊接(从 `boolean/geo-convert.ts` 迁出的共享实现)。
3
+ *
4
+ * 按 1e-6 量化位置把重复顶点焊成唯一顶点,并把索引用焊接后的编号重写。
5
+ * 这是 mesh 面从「未焊接的生成几何」到「Shape」的统一收口,`geo-convert` 与
6
+ * `meshdata` 共用同一实现(一个事实一个家,避免两份焊接逻辑漂移)。
7
+ */
8
+ /** Interleaved positions + triangle indices (the raw mesh container). */
9
+ export interface MeshData {
10
+ positions: Float32Array;
11
+ indices: Uint32Array;
12
+ }
13
+ /**
14
+ * Weld duplicate vertices by 1e-6-quantised position.
15
+ * @param positions - flat position array (x, y, z, ...).
16
+ * @param indices - triangle index array into `positions`.
17
+ * @param count - number of indices to consume (defaults to the whole array).
18
+ * @returns welded positions and rewritten indices.
19
+ */
20
+ export declare function weldMesh(positions: ArrayLike<number>, indices: ArrayLike<number>, count?: number): MeshData;
21
+ //# sourceMappingURL=weld.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"weld.d.ts","sourceRoot":"","sources":["../../../src/mesh/meshdata/weld.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,yEAAyE;AACzE,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,YAAY,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CACtB,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,EAC5B,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,EAC1B,KAAK,GAAE,MAAuB,GAC7B,QAAQ,CAqCV"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * meshdata/weld — 顶点焊接(从 `boolean/geo-convert.ts` 迁出的共享实现)。
3
+ *
4
+ * 按 1e-6 量化位置把重复顶点焊成唯一顶点,并把索引用焊接后的编号重写。
5
+ * 这是 mesh 面从「未焊接的生成几何」到「Shape」的统一收口,`geo-convert` 与
6
+ * `meshdata` 共用同一实现(一个事实一个家,避免两份焊接逻辑漂移)。
7
+ */
8
+ /**
9
+ * Weld duplicate vertices by 1e-6-quantised position.
10
+ * @param positions - flat position array (x, y, z, ...).
11
+ * @param indices - triangle index array into `positions`.
12
+ * @param count - number of indices to consume (defaults to the whole array).
13
+ * @returns welded positions and rewritten indices.
14
+ */
15
+ export function weldMesh(positions, indices, count = indices.length) {
16
+ const mapX = new Map();
17
+ const weldedPosArr = [];
18
+ const weldedIdxArr = [];
19
+ for (let i = 0; i < count; i++) {
20
+ const vi = indices[i];
21
+ const x = positions[vi * 3];
22
+ const y = positions[vi * 3 + 1];
23
+ const z = positions[vi * 3 + 2];
24
+ const qx = Math.round(x * 1e6);
25
+ const qy = Math.round(y * 1e6);
26
+ const qz = Math.round(z * 1e6);
27
+ let mapY = mapX.get(qx);
28
+ if (mapY === undefined) {
29
+ mapY = new Map();
30
+ mapX.set(qx, mapY);
31
+ }
32
+ let mapZ = mapY.get(qy);
33
+ if (mapZ === undefined) {
34
+ mapZ = new Map();
35
+ mapY.set(qy, mapZ);
36
+ }
37
+ let ni = mapZ.get(qz);
38
+ if (ni === undefined) {
39
+ ni = weldedPosArr.length / 3;
40
+ mapZ.set(qz, ni);
41
+ weldedPosArr.push(x, y, z);
42
+ }
43
+ weldedIdxArr.push(ni);
44
+ }
45
+ return {
46
+ positions: new Float32Array(weldedPosArr),
47
+ indices: new Uint32Array(weldedIdxArr),
48
+ };
49
+ }
50
+ //# sourceMappingURL=weld.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"weld.js","sourceRoot":"","sources":["../../../src/mesh/meshdata/weld.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAQH;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CACtB,SAA4B,EAC5B,OAA0B,EAC1B,QAAgB,OAAO,CAAC,MAAM;IAE9B,MAAM,IAAI,GAAG,IAAI,GAAG,EAA4C,CAAA;IAChE,MAAM,YAAY,GAAa,EAAE,CAAA;IACjC,MAAM,YAAY,GAAa,EAAE,CAAA;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QACrB,MAAM,CAAC,GAAG,SAAS,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;QAC3B,MAAM,CAAC,GAAG,SAAS,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;QAC/B,MAAM,CAAC,GAAG,SAAS,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;QAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;QAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;QAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;QAE9B,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACvB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,GAAG,IAAI,GAAG,EAA+B,CAAA;YAC7C,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QACpB,CAAC;QACD,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACvB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAA;YAChC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QACpB,CAAC;QACD,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACrB,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,EAAE,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAA;YAC5B,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;YAChB,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAC5B,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACvB,CAAC;IAED,OAAO;QACL,SAAS,EAAE,IAAI,YAAY,CAAC,YAAY,CAAC;QACzC,OAAO,EAAE,IAAI,WAAW,CAAC,YAAY,CAAC;KACvC,CAAA;AACH,CAAC","sourcesContent":["/**\r\n * meshdata/weld — 顶点焊接(从 `boolean/geo-convert.ts` 迁出的共享实现)。\r\n *\r\n * 按 1e-6 量化位置把重复顶点焊成唯一顶点,并把索引用焊接后的编号重写。\r\n * 这是 mesh 面从「未焊接的生成几何」到「Shape」的统一收口,`geo-convert` 与\r\n * `meshdata` 共用同一实现(一个事实一个家,避免两份焊接逻辑漂移)。\r\n */\r\n\r\n/** Interleaved positions + triangle indices (the raw mesh container). */\r\nexport interface MeshData {\r\n positions: Float32Array\r\n indices: Uint32Array\r\n}\r\n\r\n/**\r\n * Weld duplicate vertices by 1e-6-quantised position.\r\n * @param positions - flat position array (x, y, z, ...).\r\n * @param indices - triangle index array into `positions`.\r\n * @param count - number of indices to consume (defaults to the whole array).\r\n * @returns welded positions and rewritten indices.\r\n */\r\nexport function weldMesh(\r\n positions: ArrayLike<number>,\r\n indices: ArrayLike<number>,\r\n count: number = indices.length,\r\n): MeshData {\r\n const mapX = new Map<number, Map<number, Map<number, number>>>()\r\n const weldedPosArr: number[] = []\r\n const weldedIdxArr: number[] = []\r\n\r\n for (let i = 0; i < count; i++) {\r\n const vi = indices[i]\r\n const x = positions[vi * 3]\r\n const y = positions[vi * 3 + 1]\r\n const z = positions[vi * 3 + 2]\r\n const qx = Math.round(x * 1e6)\r\n const qy = Math.round(y * 1e6)\r\n const qz = Math.round(z * 1e6)\r\n\r\n let mapY = mapX.get(qx)\r\n if (mapY === undefined) {\r\n mapY = new Map<number, Map<number, number>>()\r\n mapX.set(qx, mapY)\r\n }\r\n let mapZ = mapY.get(qy)\r\n if (mapZ === undefined) {\r\n mapZ = new Map<number, number>()\r\n mapY.set(qy, mapZ)\r\n }\r\n let ni = mapZ.get(qz)\r\n if (ni === undefined) {\r\n ni = weldedPosArr.length / 3\r\n mapZ.set(qz, ni)\r\n weldedPosArr.push(x, y, z)\r\n }\r\n weldedIdxArr.push(ni)\r\n }\r\n\r\n return {\r\n positions: new Float32Array(weldedPosArr),\r\n indices: new Uint32Array(weldedIdxArr),\r\n }\r\n}"]}
@@ -9,7 +9,7 @@
9
9
  * B 组迁到 `@faicad/faijs-extra` 的 `mesh/primitives.ts`,core 的 mesh 面不再
10
10
  * 承载 three 的非基础几何生成链。
11
11
  *
12
- * 所有函数返回 Shape (ManifoldMeshData):THREE.BufferGeometry → geoToManifoldMesh 转换。
12
+ * 所有函数返回 Shape (ManifoldMeshData):parametric GeoData → geoToManifoldMesh 转换。
13
13
  * 坐标系:Z-up、毫米。
14
14
  */
15
15
  import type { Shape, BoxParams, SphereParams, CylinderParams, ConeParams, WedgeParams, SdfParams } from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../src/mesh/primitives.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAcjH;;;;;;;;;;;GAWG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,KAAK,CAiC5C;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,KAAK,CAOlD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,CAkBtD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,CA6C9C;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,KAAK,CA0DhD;AAED;;;;;GAKG;AACH,wBAAsB,KAAK,CAAC,MAAM,EAAE;IAClC,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAA;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAA;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAA;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,GAAG,OAAO,CAAC,KAAK,CAAC,CAYjB;AAED;;;;;;GAMG;AACH,wBAAsB,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAc3D"}
1
+ {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../src/mesh/primitives.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAiBjH;;;;;;;;;;;GAWG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,KAAK,CAkC5C;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,KAAK,CAQlD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,CAkBtD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK,CAiC9C;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,KAAK,CAwDhD;AAED;;;;;GAKG;AACH,wBAAsB,KAAK,CAAC,MAAM,EAAE;IAClC,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAA;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAA;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAA;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,GAAG,OAAO,CAAC,KAAK,CAAC,CAYjB;AAED;;;;;;GAMG;AACH,wBAAsB,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAc3D"}
@@ -9,21 +9,24 @@
9
9
  * B 组迁到 `@faicad/faijs-extra` 的 `mesh/primitives.ts`,core 的 mesh 面不再
10
10
  * 承载 three 的非基础几何生成链。
11
11
  *
12
- * 所有函数返回 Shape (ManifoldMeshData):THREE.BufferGeometry → geoToManifoldMesh 转换。
12
+ * 所有函数返回 Shape (ManifoldMeshData):parametric GeoData → geoToManifoldMesh 转换。
13
13
  * 坐标系:Z-up、毫米。
14
14
  */
15
- import * as THREE from 'three';
16
- import { makePrimitiveGeo } from '../primitives/mesh-primitives.js';
15
+ import { Mat4 } from '../math3d/index.js';
16
+ import { boxGeometry, cylinderGeometry, coneGeometry, sphereGeometry } from './meshdata/parametric.js';
17
+ import { transformShape, translateShape } from './meshdata/ops.js';
17
18
  import { geoToManifoldMesh } from '../boolean/csg-backend.js';
18
19
  import { clampNRad } from './types.js';
19
20
  // ── 内部工具 ──
20
- /** THREE.BufferGeometry → Shape (ManifoldMeshData);可选携带面结构元数据。 */
21
+ /** GeoData → Shape (ManifoldMeshData);可选携带面结构元数据。 */
21
22
  function geoToShape(geo, faceRanges) {
22
23
  const shape = geoToManifoldMesh(geo);
23
24
  if (faceRanges !== undefined)
24
25
  shape.faceRanges = faceRanges;
25
26
  return shape;
26
27
  }
28
+ /** Y-up → Z-up rotation (rotateX by PI/2), same as three's `makeRotationX(Math.PI / 2)`. */
29
+ const ROT_Y_TO_Z = new Mat4().makeRotationX(Math.PI / 2);
27
30
  // ── 创建 API ──
28
31
  /**
29
32
  * Create a box solid (brepjs contract, §4.1 A 决策).
@@ -39,11 +42,10 @@ function geoToShape(geo, faceRanges) {
39
42
  */
40
43
  export function box(params) {
41
44
  const { width, depth, height } = params;
42
- // THREE.BoxGeometry(a, b, c) is Y-up (X=a, Y=b, Z=c); after the +90° rotateX
43
- // the dims map to X=a, Y=c, Z=b. To reach X=width, Y=depth, Z=height the
44
- // pre-rotation sizes must be (width, height, depth) — 裁决 7 xyz contract.
45
- const geo = new THREE.BoxGeometry(width, height, depth);
46
- geo.applyMatrix4(new THREE.Matrix4().makeRotationX(Math.PI / 2));
45
+ // boxGeometry(width, height, depth) is Y-up (X=width, Y=height, Z=depth);
46
+ // after the +90° rotateX the dims map to X=width, Y=depth, Z=height.
47
+ const geo = boxGeometry(width, height, depth);
48
+ const rotated = transformShape(geo, ROT_Y_TO_Z);
47
49
  // 原 brepjs box semantics: corner at origin by default; centered at origin when
48
50
  // `centered` (no `at`); `at` (CENTER semantics) takes precedence.
49
51
  const at = params.at;
@@ -59,8 +61,9 @@ export function box(params) {
59
61
  ty = depth / 2;
60
62
  tz = height / 2;
61
63
  }
62
- if (tx !== 0 || ty !== 0 || tz !== 0)
63
- geo.translate(tx, ty, tz);
64
+ const translated = tx !== 0 || ty !== 0 || tz !== 0
65
+ ? translateShape(rotated, tx, ty, tz)
66
+ : rotated;
64
67
  // 面结构(P4 面级):BoxGeometry 12 三角形 = 6 面 × 2,顺序固定
65
68
  // (+X, −X, +Y, −Y, +Z, −Z);geoToManifoldMesh 焊接顶点保三角形序,故面序契约成立。
66
69
  // 面序号契约(setFaceColor 的 faceIds 即此序号):0=+X, 1=−X, 2=+Y, 3=−Y, 4=+Z, 5=−Z。
@@ -72,7 +75,7 @@ export function box(params) {
72
75
  { start: 8, count: 2 },
73
76
  { start: 10, count: 2 },
74
77
  ];
75
- return geoToShape(geo, faceRanges);
78
+ return geoToShape(translated, faceRanges);
76
79
  }
77
80
  /**
78
81
  * Create a sphere centered at the origin (or the optional `center`).
@@ -82,11 +85,12 @@ export function box(params) {
82
85
  */
83
86
  export function sphere(params) {
84
87
  const segs = clampNRad(params.nRad ?? params.segments);
85
- const geo = makePrimitiveGeo('sphere', params.radius * 2, segs);
86
- if (params.center) {
87
- geo.translate(params.center[0], params.center[1], params.center[2]);
88
- }
89
- return geoToShape(geo);
88
+ const geo = sphereGeometry(params.radius, segs, segs);
89
+ const rotated = transformShape(geo, ROT_Y_TO_Z);
90
+ const translated = params.center
91
+ ? translateShape(rotated, params.center[0], params.center[1], params.center[2])
92
+ : rotated;
93
+ return geoToShape(translated);
90
94
  }
91
95
  /**
92
96
  * Create a cylinder along +Z (`cylinder(radius, height, { at?, centered?,
@@ -101,14 +105,14 @@ export function sphere(params) {
101
105
  */
102
106
  export function cylinder(params) {
103
107
  const segs = clampNRad(params.nRad ?? params.segments);
104
- const geo = new THREE.CylinderGeometry(params.radius, params.radius, params.height, segs);
105
- geo.applyMatrix4(new THREE.Matrix4().makeRotationX(Math.PI / 2));
108
+ const geo = cylinderGeometry(params.radius, params.radius, params.height, segs);
109
+ const rotated = transformShape(geo, ROT_Y_TO_Z);
106
110
  // geometry(rotateX 后)沿 z ∈ [-h/2, +h/2](three 默认 Y-up 居中):
107
111
  // 目标底面中心 in baseZ = (at?.[2] ?? 0) - (centered ? h/2 : 0) → 平移到 baseZ + h/2。
108
112
  const baseX = params.at?.[0] ?? 0;
109
113
  const baseY = params.at?.[1] ?? 0;
110
114
  const baseZ = (params.at?.[2] ?? 0) - (params.centered === true ? params.height / 2 : 0);
111
- geo.translate(baseX, baseY, baseZ + params.height / 2);
115
+ const translated = translateShape(rotated, baseX, baseY, baseZ + params.height / 2);
112
116
  // 面结构(P4 面级):CylinderGeometry 三角形布局稳定——侧面 2*segs(tri 0..2segs-1)、
113
117
  // 顶盖 segs、底盖 segs。面序号契约:0=侧面, 1=顶, 2=底。
114
118
  const faceRanges = [
@@ -116,7 +120,7 @@ export function cylinder(params) {
116
120
  { start: 2 * segs, count: segs },
117
121
  { start: 3 * segs, count: segs },
118
122
  ];
119
- return geoToShape(geo, faceRanges);
123
+ return geoToShape(translated, faceRanges);
120
124
  }
121
125
  /**
122
126
  * Create a cone, or a frustum when the top and bottom radii differ
@@ -132,25 +136,22 @@ export function cylinder(params) {
132
136
  */
133
137
  export function cone(params) {
134
138
  const segs = clampNRad(params.nRad ?? params.segments);
135
- const geo = new THREE.ConeGeometry(Math.max(params.radiusBottom, params.radiusTop), params.height, segs);
136
- geo.applyMatrix4(new THREE.Matrix4().makeRotationX(Math.PI / 2));
137
- // radiusTop === 0 → 尖锥(ConeGeometry 顶点在顶);其余(含 radiusTop ===
138
- // radiusBottom 的等径圆柱/圆台)用 CylinderGeometry(radiusTop/bottom 各就各位)。
139
- let resultGeo;
139
+ // radiusTop === 0 → 尖锥(coneGeometry 顶点在顶);其余(含 radiusTop ===
140
+ // radiusBottom 的等径圆柱/圆台)用 cylinderGeometry(radiusTop/bottom 各就各位)。
141
+ let geo;
140
142
  if (params.radiusTop === 0) {
141
- resultGeo = geo;
143
+ geo = coneGeometry(Math.max(params.radiusBottom, params.radiusTop), params.height, segs);
142
144
  }
143
145
  else {
144
- const geo2 = new THREE.CylinderGeometry(params.radiusTop, params.radiusBottom, params.height, segs);
145
- geo2.applyMatrix4(new THREE.Matrix4().makeRotationX(Math.PI / 2));
146
- resultGeo = geo2;
146
+ geo = cylinderGeometry(params.radiusTop, params.radiusBottom, params.height, segs);
147
147
  }
148
+ const rotated = transformShape(geo, ROT_Y_TO_Z);
148
149
  // geometry(rotateX 后)沿 z ∈ [-h/2, +h/2](three 默认 Y-up 居中):
149
150
  // 目标底面中心 in baseZ = (at?.[2] ?? 0) - (centered ? h/2 : 0) → 平坦平移 baseZ + h/2。
150
151
  const baseX = params.at?.[0] ?? 0;
151
152
  const baseY = params.at?.[1] ?? 0;
152
153
  const baseZ = (params.at?.[2] ?? 0) - (params.centered === true ? params.height / 2 : 0);
153
- resultGeo.translate(baseX, baseY, baseZ + params.height / 2);
154
+ const translated = translateShape(rotated, baseX, baseY, baseZ + params.height / 2);
154
155
  // 面结构(P4 面级):radiusTop=0 的 ConeGeometry 只有 2 面——侧面(segs 个
155
156
  // 三角扇)+ 底盖(segs 个);radiusTop>0 的圆台 CylinderGeometry 3 面
156
157
  // (侧面 2*segs、顶、底,同 cylinder 布局)。面序号契约:0=侧面, 1=底
@@ -165,7 +166,7 @@ export function cone(params) {
165
166
  { start: 2 * segs, count: segs },
166
167
  { start: 3 * segs, count: segs },
167
168
  ];
168
- return geoToShape(resultGeo, faceRanges);
169
+ return geoToShape(translated, faceRanges);
169
170
  }
170
171
  /**
171
172
  * Create a wedge (ramp) solid, fully parameterized and Z-up.
@@ -219,13 +220,11 @@ export function wedge(params) {
219
220
  0, 3, 7, 0, 7, 4,
220
221
  1, 5, 6, 1, 6, 2,
221
222
  ]);
222
- const geo = new THREE.BufferGeometry();
223
- geo.setAttribute('position', new THREE.BufferAttribute(positions, 3));
224
- geo.setIndex(new THREE.BufferAttribute(indices, 1));
225
- if (params.center) {
226
- geo.translate(params.center[0], params.center[1], params.center[2]);
227
- }
228
- return geoToShape(geo);
223
+ const geo = { positions, indices };
224
+ const translated = params.center
225
+ ? translateShape(geo, params.center[0], params.center[1], params.center[2])
226
+ : geo;
227
+ return geoToShape(translated);
229
228
  }
230
229
  /**
231
230
  * Create a screw (threaded) geometry.
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../../src/mesh/primitives.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * mesh 基本体 API — 从现有纯函数提取的统一接口\n *\n * 提取来源(§5.7):\n * - box/sphere/cylinder/cone/wedge ← engine/primitives/mesh-primitives.ts (makePrimitiveGeo)\n * - screw ← engine/primitives/screw/screw.ts (makeScrew)\n *\n * `text` / `svgExtrude`(three 的 Shape / ExtrudeGeometry / SVGLoader 链)已随\n * B 组迁到 `@faicad/faijs-extra` 的 `mesh/primitives.ts`,core 的 mesh 面不再\n * 承载 three 的非基础几何生成链。\n *\n * 所有函数返回 Shape (ManifoldMeshData):THREE.BufferGeometry → geoToManifoldMesh 转换。\n * 坐标系:Z-up、毫米。\n */\n\nimport * as THREE from 'three'\nimport { makePrimitiveGeo } from '../primitives/mesh-primitives'\nimport { geoToManifoldMesh } from '../boolean/csg-backend'\nimport type { Shape, BoxParams, SphereParams, CylinderParams, ConeParams, WedgeParams, SdfParams } from './types'\nimport { clampNRad } from './types'\n\n// ── 内部工具 ──\n\n/** THREE.BufferGeometry → Shape (ManifoldMeshData);可选携带面结构元数据。 */\nfunction geoToShape(geo: THREE.BufferGeometry, faceRanges?: Shape['faceRanges']): Shape {\n const shape = geoToManifoldMesh(geo) as Shape\n if (faceRanges !== undefined) shape.faceRanges = faceRanges\n return shape\n}\n\n// ── 创建 API ──\n\n/**\n * Create a box solid (brepjs contract, §4.1 A 决策).\n *\n * `box(width, depth, height)` — X=width, Y=depth, Z=height — places the\n * min-corner at the origin by default (`centered:false`). `centered: true`\n * centers the box at the origin; `at` is CENTER semantics and takes precedence\n * over `centered`. The `segments` option is consumed by the tessellation\n * caller (this mesh builder keeps it via clampNRad when present).\n *\n * @param params - box parameters (width/depth/height, optional at/centered/segments).\n * @returns the box shape.\n */\nexport function box(params: BoxParams): Shape {\n const { width, depth, height } = params\n // THREE.BoxGeometry(a, b, c) is Y-up (X=a, Y=b, Z=c); after the +90° rotateX\n // the dims map to X=a, Y=c, Z=b. To reach X=width, Y=depth, Z=height the\n // pre-rotation sizes must be (width, height, depth) — 裁决 7 xyz contract.\n const geo = new THREE.BoxGeometry(width, height, depth)\n geo.applyMatrix4(new THREE.Matrix4().makeRotationX(Math.PI / 2))\n // 原 brepjs box semantics: corner at origin by default; centered at origin when\n // `centered` (no `at`); `at` (CENTER semantics) takes precedence.\n const at = params.at\n let tx = 0\n let ty = 0\n let tz = 0\n if (at !== undefined) {\n ;[tx, ty, tz] = at\n } else if (!params.centered) {\n tx = width / 2\n ty = depth / 2\n tz = height / 2\n }\n if (tx !== 0 || ty !== 0 || tz !== 0) geo.translate(tx, ty, tz)\n // 面结构(P4 面级):BoxGeometry 12 三角形 = 6 面 × 2,顺序固定\n // (+X, −X, +Y, −Y, +Z, −Z);geoToManifoldMesh 焊接顶点保三角形序,故面序契约成立。\n // 面序号契约(setFaceColor 的 faceIds 即此序号):0=+X, 1=−X, 2=+Y, 3=−Y, 4=+Z, 5=−Z。\n const faceRanges: Shape['faceRanges'] = [\n { start: 0, count: 2 },\n { start: 2, count: 2 },\n { start: 4, count: 2 },\n { start: 6, count: 2 },\n { start: 8, count: 2 },\n { start: 10, count: 2 },\n ]\n return geoToShape(geo, faceRanges)\n}\n\n/**\n * Create a sphere centered at the origin (or the optional `center`).\n *\n * @param params - sphere parameters (radius, optional segments, optional center).\n * @returns the sphere shape.\n */\nexport function sphere(params: SphereParams): Shape {\n const segs = clampNRad(params.nRad ?? params.segments)\n const geo = makePrimitiveGeo('sphere', params.radius * 2, segs)\n if (params.center) {\n geo.translate(params.center[0], params.center[1], params.center[2])\n }\n return geoToShape(geo)\n}\n\n/**\n * Create a cylinder along +Z (`cylinder(radius, height, { at?, centered?,\n * segments? })` brepjs 契约,§4.3 A 决策;与 brep 路径逐点对齐)。\n *\n * 锚点:`at` 是**底面轴心**(BASE)语义(默认 [0,0,0],底面在原点、+Z 延伸);\n * `centered:true` 指底面落到 −h/2(无 at 时居中到原点)——与 `at` 同给时以\n * `at` 为中心。`segments` 经 clampNRad 消费(P0 §5)。\n *\n * @param params - cylinder parameters (radius, height, optional at/centered/segments).\n * @returns the cylinder shape.\n */\nexport function cylinder(params: CylinderParams): Shape {\n const segs = clampNRad(params.nRad ?? params.segments)\n const geo = new THREE.CylinderGeometry(params.radius, params.radius, params.height, segs)\n geo.applyMatrix4(new THREE.Matrix4().makeRotationX(Math.PI / 2))\n // geometry(rotateX 后)沿 z ∈ [-h/2, +h/2](three 默认 Y-up 居中):\n // 目标底面中心 in baseZ = (at?.[2] ?? 0) - (centered ? h/2 : 0) → 平移到 baseZ + h/2。\n const baseX = params.at?.[0] ?? 0\n const baseY = params.at?.[1] ?? 0\n const baseZ = (params.at?.[2] ?? 0) - (params.centered === true ? params.height / 2 : 0)\n geo.translate(baseX, baseY, baseZ + params.height / 2)\n // 面结构(P4 面级):CylinderGeometry 三角形布局稳定——侧面 2*segs(tri 0..2segs-1)、\n // 顶盖 segs、底盖 segs。面序号契约:0=侧面, 1=顶, 2=底。\n const faceRanges: Shape['faceRanges'] = [\n { start: 0, count: 2 * segs },\n { start: 2 * segs, count: segs },\n { start: 3 * segs, count: segs },\n ]\n return geoToShape(geo, faceRanges)\n}\n\n/**\n * Create a cone, or a frustum when the top and bottom radii differ\n * (`cone(bottomRadius, topRadius, height, { at?, centered?, segments? })` brepjs\n * 契约,§4.1 P 决策;与 brep 路径逐点对齐)。\n *\n * 锚点:`at` 是**底面轴心**(BASE)语义(默认 [0,0,0],底面在原点、+Z 延伸);\n * `centered:true` 指底面落到 −h/2(无 at 时居中到原点)——与 `at` 同给时以\n * `at` 为中心。`segments` 经 clampNRad 消费(P0 §5)。\n *\n * @param params - cone parameters (radiusBottom, radiusTop, height, optional at/centered/segments).\n * @returns the cone shape.\n */\nexport function cone(params: ConeParams): Shape {\n const segs = clampNRad(params.nRad ?? params.segments)\n const geo = new THREE.ConeGeometry(\n Math.max(params.radiusBottom, params.radiusTop),\n params.height,\n segs,\n )\n geo.applyMatrix4(new THREE.Matrix4().makeRotationX(Math.PI / 2))\n // radiusTop === 0 → 尖锥(ConeGeometry 顶点在顶);其余(含 radiusTop ===\n // radiusBottom 的等径圆柱/圆台)用 CylinderGeometry(radiusTop/bottom 各就各位)。\n let resultGeo: THREE.BufferGeometry\n if (params.radiusTop === 0) {\n resultGeo = geo\n } else {\n const geo2 = new THREE.CylinderGeometry(\n params.radiusTop,\n params.radiusBottom,\n params.height,\n segs,\n )\n geo2.applyMatrix4(new THREE.Matrix4().makeRotationX(Math.PI / 2))\n resultGeo = geo2\n }\n // geometry(rotateX 后)沿 z ∈ [-h/2, +h/2](three 默认 Y-up 居中):\n // 目标底面中心 in baseZ = (at?.[2] ?? 0) - (centered ? h/2 : 0) → 平坦平移 baseZ + h/2。\n const baseX = params.at?.[0] ?? 0\n const baseY = params.at?.[1] ?? 0\n const baseZ = (params.at?.[2] ?? 0) - (params.centered === true ? params.height / 2 : 0)\n resultGeo.translate(baseX, baseY, baseZ + params.height / 2)\n // 面结构(P4 面级):radiusTop=0 的 ConeGeometry 只有 2 面——侧面(segs 个\n // 三角扇)+ 底盖(segs 个);radiusTop>0 的圆台 CylinderGeometry 3 面\n // (侧面 2*segs、顶、底,同 cylinder 布局)。面序号契约:0=侧面, 1=底\n // (尖锥);0=侧面, 1=顶, 2=底(圆台)。\n const faceRanges: Shape['faceRanges'] =\n params.radiusTop === 0\n ? [\n { start: 0, count: segs },\n { start: segs, count: segs },\n ]\n : [\n { start: 0, count: 2 * segs },\n { start: 2 * segs, count: segs },\n { start: 3 * segs, count: segs },\n ]\n return geoToShape(resultGeo, faceRanges)\n}\n\n/**\n * Create a wedge (ramp) solid, fully parameterized and Z-up.\n *\n * @param params - wedge parameters (width, height, angle, length, optional center).\n * @returns the wedge shape.\n */\nexport function wedge(params: WedgeParams): Shape {\n const width = params.width\n const height = params.height\n const angle = params.angle\n const length = params.length\n\n const angleRad = (angle * Math.PI) / 180\n const halfExtrude = length / 2\n const hw = width / 2\n const halfTopWidth = Math.max(0, hw - height / Math.tan(angleRad))\n // 顶边塌缩(斜坡已在宽度内到顶)→ 三角棱柱(与 brep wedge 的退化处理一致,\n // 保证 mesh/brep 同参数 bbox 一致;零面积三角形会破坏 manifold)。\n const degenerate = halfTopWidth <= 1e-12\n\n const positions = degenerate\n ? new Float32Array([\n -halfExtrude, -hw, 0,\n -halfExtrude, hw, 0,\n -halfExtrude, 0, height,\n halfExtrude, -hw, 0,\n halfExtrude, hw, 0,\n halfExtrude, 0, height,\n ])\n : new Float32Array([\n -halfExtrude, -hw, 0,\n -halfExtrude, hw, 0,\n -halfExtrude, halfTopWidth, height,\n -halfExtrude, -halfTopWidth, height,\n halfExtrude, -hw, 0,\n halfExtrude, hw, 0,\n halfExtrude, halfTopWidth, height,\n halfExtrude, -halfTopWidth, height,\n ])\n\n const indices = degenerate\n ? new Uint32Array([\n 0, 1, 2, 3, 5, 4,\n 0, 3, 4, 0, 4, 1,\n 0, 2, 5, 0, 5, 3,\n 1, 4, 5, 1, 5, 2,\n ])\n : new Uint32Array([\n 0, 1, 2, 0, 2, 3,\n 4, 6, 5, 4, 7, 6,\n 0, 4, 5, 0, 5, 1,\n 3, 2, 6, 3, 6, 7,\n 0, 3, 7, 0, 7, 4,\n 1, 5, 6, 1, 6, 2,\n ])\n\n const geo = new THREE.BufferGeometry()\n geo.setAttribute('position', new THREE.BufferAttribute(positions, 3))\n geo.setIndex(new THREE.BufferAttribute(indices, 1))\n\n if (params.center) {\n geo.translate(params.center[0], params.center[1], params.center[2])\n }\n return geoToShape(geo)\n}\n\n/**\n * Create a screw (threaded) geometry.\n *\n * @param params - screw parameters (system, specIdx, thread, length, head, optional pitchCustom and nRad).\n * @returns the screw shape.\n */\nexport async function screw(params: {\n system: 'metric' | 'imperial'\n specIdx: number\n thread: 'coarse' | 'fine' | 'custom' | 'none'\n pitchCustom?: number\n length: number\n head: 'hex' | 'chc' | 'none'\n nRad?: number\n}): Promise<Shape> {\n const { makeScrew } = await import('../primitives/screw/screw')\n const geo = makeScrew({\n system: params.system,\n specIdx: params.specIdx,\n thread: params.thread,\n pitchCustom: params.pitchCustom ?? 0,\n length: params.length,\n head: params.head,\n nRad: clampNRad(params.nRad),\n })\n return geoToShape(geo)\n}\n\n/**\n * Create a mesh from SDF (signed distance field) code, sampling the field with\n * marching cubes.\n *\n * @param params - SDF parameters (code, optional bounds, params, resolution).\n * @returns the sampled shape.\n */\nexport async function sdf(params: SdfParams): Promise<Shape> {\n const { runSdf } = await import('../sdf/sdf-runner')\n const box = params.box ?? [[-10, -10, -10], [10, 10, 10]]\n const bounds: [number, number, number, number, number, number] = [\n box[0][0], box[0][1], box[0][2],\n box[1][0], box[1][1], box[1][2],\n ]\n const mesh = await runSdf(\n params.code,\n params.params ?? {},\n bounds,\n params.resolution ?? 1.0,\n )\n return { positions: mesh.positions, indices: mesh.indices }\n}\n"]}
1
+ {"version":3,"file":"primitives.js","sourceRoot":"","sources":["../../src/mesh/primitives.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * mesh 基本体 API — 从现有纯函数提取的统一接口\n *\n * 提取来源(§5.7):\n * - box/sphere/cylinder/cone/wedge ← engine/primitives/mesh-primitives.ts (makePrimitiveGeo)\n * - screw ← engine/primitives/screw/screw.ts (makeScrew)\n *\n * `text` / `svgExtrude`(three 的 Shape / ExtrudeGeometry / SVGLoader 链)已随\n * B 组迁到 `@faicad/faijs-extra` 的 `mesh/primitives.ts`,core 的 mesh 面不再\n * 承载 three 的非基础几何生成链。\n *\n * 所有函数返回 Shape (ManifoldMeshData):parametric GeoData → geoToManifoldMesh 转换。\n * 坐标系:Z-up、毫米。\n */\n\nimport { Mat4 } from '../math3d'\nimport { boxGeometry, cylinderGeometry, coneGeometry, sphereGeometry, type GeoData } from './meshdata/parametric'\nimport { transformShape, translateShape } from './meshdata/ops'\nimport { geoToManifoldMesh } from '../boolean/csg-backend'\nimport type { Shape, BoxParams, SphereParams, CylinderParams, ConeParams, WedgeParams, SdfParams } from './types'\nimport { clampNRad } from './types'\n\n// ── 内部工具 ──\n\n/** GeoData → Shape (ManifoldMeshData);可选携带面结构元数据。 */\nfunction geoToShape(geo: GeoData, faceRanges?: Shape['faceRanges']): Shape {\n const shape = geoToManifoldMesh(geo) as Shape\n if (faceRanges !== undefined) shape.faceRanges = faceRanges\n return shape\n}\n\n/** Y-up → Z-up rotation (rotateX by PI/2), same as three's `makeRotationX(Math.PI / 2)`. */\nconst ROT_Y_TO_Z = new Mat4().makeRotationX(Math.PI / 2)\n\n// ── 创建 API ──\n\n/**\n * Create a box solid (brepjs contract, §4.1 A 决策).\n *\n * `box(width, depth, height)` — X=width, Y=depth, Z=height — places the\n * min-corner at the origin by default (`centered:false`). `centered: true`\n * centers the box at the origin; `at` is CENTER semantics and takes precedence\n * over `centered`. The `segments` option is consumed by the tessellation\n * caller (this mesh builder keeps it via clampNRad when present).\n *\n * @param params - box parameters (width/depth/height, optional at/centered/segments).\n * @returns the box shape.\n */\nexport function box(params: BoxParams): Shape {\n const { width, depth, height } = params\n // boxGeometry(width, height, depth) is Y-up (X=width, Y=height, Z=depth);\n // after the +90° rotateX the dims map to X=width, Y=depth, Z=height.\n const geo = boxGeometry(width, height, depth)\n const rotated = transformShape(geo, ROT_Y_TO_Z)\n // 原 brepjs box semantics: corner at origin by default; centered at origin when\n // `centered` (no `at`); `at` (CENTER semantics) takes precedence.\n const at = params.at\n let tx = 0\n let ty = 0\n let tz = 0\n if (at !== undefined) {\n ;[tx, ty, tz] = at\n } else if (!params.centered) {\n tx = width / 2\n ty = depth / 2\n tz = height / 2\n }\n const translated = tx !== 0 || ty !== 0 || tz !== 0\n ? translateShape(rotated, tx, ty, tz)\n : rotated\n // 面结构(P4 面级):BoxGeometry 12 三角形 = 6 面 × 2,顺序固定\n // (+X, −X, +Y, −Y, +Z, −Z);geoToManifoldMesh 焊接顶点保三角形序,故面序契约成立。\n // 面序号契约(setFaceColor 的 faceIds 即此序号):0=+X, 1=−X, 2=+Y, 3=−Y, 4=+Z, 5=−Z。\n const faceRanges: Shape['faceRanges'] = [\n { start: 0, count: 2 },\n { start: 2, count: 2 },\n { start: 4, count: 2 },\n { start: 6, count: 2 },\n { start: 8, count: 2 },\n { start: 10, count: 2 },\n ]\n return geoToShape(translated, faceRanges)\n}\n\n/**\n * Create a sphere centered at the origin (or the optional `center`).\n *\n * @param params - sphere parameters (radius, optional segments, optional center).\n * @returns the sphere shape.\n */\nexport function sphere(params: SphereParams): Shape {\n const segs = clampNRad(params.nRad ?? params.segments)\n const geo = sphereGeometry(params.radius, segs, segs)\n const rotated = transformShape(geo, ROT_Y_TO_Z)\n const translated = params.center\n ? translateShape(rotated, params.center[0], params.center[1], params.center[2])\n : rotated\n return geoToShape(translated)\n}\n\n/**\n * Create a cylinder along +Z (`cylinder(radius, height, { at?, centered?,\n * segments? })` brepjs 契约,§4.3 A 决策;与 brep 路径逐点对齐)。\n *\n * 锚点:`at` 是**底面轴心**(BASE)语义(默认 [0,0,0],底面在原点、+Z 延伸);\n * `centered:true` 指底面落到 −h/2(无 at 时居中到原点)——与 `at` 同给时以\n * `at` 为中心。`segments` 经 clampNRad 消费(P0 §5)。\n *\n * @param params - cylinder parameters (radius, height, optional at/centered/segments).\n * @returns the cylinder shape.\n */\nexport function cylinder(params: CylinderParams): Shape {\n const segs = clampNRad(params.nRad ?? params.segments)\n const geo = cylinderGeometry(params.radius, params.radius, params.height, segs)\n const rotated = transformShape(geo, ROT_Y_TO_Z)\n // geometry(rotateX 后)沿 z ∈ [-h/2, +h/2](three 默认 Y-up 居中):\n // 目标底面中心 in baseZ = (at?.[2] ?? 0) - (centered ? h/2 : 0) → 平移到 baseZ + h/2。\n const baseX = params.at?.[0] ?? 0\n const baseY = params.at?.[1] ?? 0\n const baseZ = (params.at?.[2] ?? 0) - (params.centered === true ? params.height / 2 : 0)\n const translated = translateShape(rotated, baseX, baseY, baseZ + params.height / 2)\n // 面结构(P4 面级):CylinderGeometry 三角形布局稳定——侧面 2*segs(tri 0..2segs-1)、\n // 顶盖 segs、底盖 segs。面序号契约:0=侧面, 1=顶, 2=底。\n const faceRanges: Shape['faceRanges'] = [\n { start: 0, count: 2 * segs },\n { start: 2 * segs, count: segs },\n { start: 3 * segs, count: segs },\n ]\n return geoToShape(translated, faceRanges)\n}\n\n/**\n * Create a cone, or a frustum when the top and bottom radii differ\n * (`cone(bottomRadius, topRadius, height, { at?, centered?, segments? })` brepjs\n * 契约,§4.1 P 决策;与 brep 路径逐点对齐)。\n *\n * 锚点:`at` 是**底面轴心**(BASE)语义(默认 [0,0,0],底面在原点、+Z 延伸);\n * `centered:true` 指底面落到 −h/2(无 at 时居中到原点)——与 `at` 同给时以\n * `at` 为中心。`segments` 经 clampNRad 消费(P0 §5)。\n *\n * @param params - cone parameters (radiusBottom, radiusTop, height, optional at/centered/segments).\n * @returns the cone shape.\n */\nexport function cone(params: ConeParams): Shape {\n const segs = clampNRad(params.nRad ?? params.segments)\n // radiusTop === 0 → 尖锥(coneGeometry 顶点在顶);其余(含 radiusTop ===\n // radiusBottom 的等径圆柱/圆台)用 cylinderGeometry(radiusTop/bottom 各就各位)。\n let geo: GeoData\n if (params.radiusTop === 0) {\n geo = coneGeometry(Math.max(params.radiusBottom, params.radiusTop), params.height, segs)\n } else {\n geo = cylinderGeometry(params.radiusTop, params.radiusBottom, params.height, segs)\n }\n const rotated = transformShape(geo, ROT_Y_TO_Z)\n // geometry(rotateX 后)沿 z ∈ [-h/2, +h/2](three 默认 Y-up 居中):\n // 目标底面中心 in baseZ = (at?.[2] ?? 0) - (centered ? h/2 : 0) → 平坦平移 baseZ + h/2。\n const baseX = params.at?.[0] ?? 0\n const baseY = params.at?.[1] ?? 0\n const baseZ = (params.at?.[2] ?? 0) - (params.centered === true ? params.height / 2 : 0)\n const translated = translateShape(rotated, baseX, baseY, baseZ + params.height / 2)\n // 面结构(P4 面级):radiusTop=0 的 ConeGeometry 只有 2 面——侧面(segs 个\n // 三角扇)+ 底盖(segs 个);radiusTop>0 的圆台 CylinderGeometry 3 面\n // (侧面 2*segs、顶、底,同 cylinder 布局)。面序号契约:0=侧面, 1=底\n // (尖锥);0=侧面, 1=顶, 2=底(圆台)。\n const faceRanges: Shape['faceRanges'] =\n params.radiusTop === 0\n ? [\n { start: 0, count: segs },\n { start: segs, count: segs },\n ]\n : [\n { start: 0, count: 2 * segs },\n { start: 2 * segs, count: segs },\n { start: 3 * segs, count: segs },\n ]\n return geoToShape(translated, faceRanges)\n}\n\n/**\n * Create a wedge (ramp) solid, fully parameterized and Z-up.\n *\n * @param params - wedge parameters (width, height, angle, length, optional center).\n * @returns the wedge shape.\n */\nexport function wedge(params: WedgeParams): Shape {\n const width = params.width\n const height = params.height\n const angle = params.angle\n const length = params.length\n\n const angleRad = (angle * Math.PI) / 180\n const halfExtrude = length / 2\n const hw = width / 2\n const halfTopWidth = Math.max(0, hw - height / Math.tan(angleRad))\n // 顶边塌缩(斜坡已在宽度内到顶)→ 三角棱柱(与 brep wedge 的退化处理一致,\n // 保证 mesh/brep 同参数 bbox 一致;零面积三角形会破坏 manifold)。\n const degenerate = halfTopWidth <= 1e-12\n\n const positions = degenerate\n ? new Float32Array([\n -halfExtrude, -hw, 0,\n -halfExtrude, hw, 0,\n -halfExtrude, 0, height,\n halfExtrude, -hw, 0,\n halfExtrude, hw, 0,\n halfExtrude, 0, height,\n ])\n : new Float32Array([\n -halfExtrude, -hw, 0,\n -halfExtrude, hw, 0,\n -halfExtrude, halfTopWidth, height,\n -halfExtrude, -halfTopWidth, height,\n halfExtrude, -hw, 0,\n halfExtrude, hw, 0,\n halfExtrude, halfTopWidth, height,\n halfExtrude, -halfTopWidth, height,\n ])\n\n const indices = degenerate\n ? new Uint32Array([\n 0, 1, 2, 3, 5, 4,\n 0, 3, 4, 0, 4, 1,\n 0, 2, 5, 0, 5, 3,\n 1, 4, 5, 1, 5, 2,\n ])\n : new Uint32Array([\n 0, 1, 2, 0, 2, 3,\n 4, 6, 5, 4, 7, 6,\n 0, 4, 5, 0, 5, 1,\n 3, 2, 6, 3, 6, 7,\n 0, 3, 7, 0, 7, 4,\n 1, 5, 6, 1, 6, 2,\n ])\n\n const geo: GeoData = { positions, indices }\n\n const translated = params.center\n ? translateShape(geo, params.center[0], params.center[1], params.center[2])\n : geo\n return geoToShape(translated)\n}\n\n/**\n * Create a screw (threaded) geometry.\n *\n * @param params - screw parameters (system, specIdx, thread, length, head, optional pitchCustom and nRad).\n * @returns the screw shape.\n */\nexport async function screw(params: {\n system: 'metric' | 'imperial'\n specIdx: number\n thread: 'coarse' | 'fine' | 'custom' | 'none'\n pitchCustom?: number\n length: number\n head: 'hex' | 'chc' | 'none'\n nRad?: number\n}): Promise<Shape> {\n const { makeScrew } = await import('../primitives/screw/screw')\n const geo = makeScrew({\n system: params.system,\n specIdx: params.specIdx,\n thread: params.thread,\n pitchCustom: params.pitchCustom ?? 0,\n length: params.length,\n head: params.head,\n nRad: clampNRad(params.nRad),\n })\n return geoToShape(geo)\n}\n\n/**\n * Create a mesh from SDF (signed distance field) code, sampling the field with\n * marching cubes.\n *\n * @param params - SDF parameters (code, optional bounds, params, resolution).\n * @returns the sampled shape.\n */\nexport async function sdf(params: SdfParams): Promise<Shape> {\n const { runSdf } = await import('../sdf/sdf-runner')\n const box = params.box ?? [[-10, -10, -10], [10, 10, 10]]\n const bounds: [number, number, number, number, number, number] = [\n box[0][0], box[0][1], box[0][2],\n box[1][0], box[1][1], box[1][2],\n ]\n const mesh = await runSdf(\n params.code,\n params.params ?? {},\n bounds,\n params.resolution ?? 1.0,\n )\n return { positions: mesh.positions, indices: mesh.indices }\n}\n"]}
@@ -4,7 +4,7 @@
4
4
  * 提取来源:transform-store 的 compute*BoundingBox
5
5
  * 这些函数不产生几何,供 GeomRef 求值与面板显示使用。
6
6
  */
7
- import * as THREE from 'three';
7
+ import { Vec3 as Vec3C } from '../math3d/index.js';
8
8
  /**
9
9
  * Compute the axis-aligned bounding box of a shape.
10
10
  *
@@ -79,8 +79,8 @@ export function volume(shape) {
79
79
  * @returns the closest face descriptor, or null when the mesh has no faces.
80
80
  */
81
81
  export function faceAt(shape, anchor) {
82
- const targetPoint = new THREE.Vector3(...anchor.point);
83
- const targetNormal = anchor.normal ? new THREE.Vector3(...anchor.normal) : null;
82
+ const targetPoint = new Vec3C(anchor.point[0], anchor.point[1], anchor.point[2]);
83
+ const targetNormal = anchor.normal ? new Vec3C(anchor.normal[0], anchor.normal[1], anchor.normal[2]) : null;
84
84
  let bestDist = Infinity;
85
85
  let bestFace = null;
86
86
  const indices = shape.indices;
@@ -89,16 +89,16 @@ export function faceAt(shape, anchor) {
89
89
  const a = indices[i] * 3;
90
90
  const b = indices[i + 1] * 3;
91
91
  const c = indices[i + 2] * 3;
92
- const va = new THREE.Vector3(positions[a], positions[a + 1], positions[a + 2]);
93
- const vb = new THREE.Vector3(positions[b], positions[b + 1], positions[b + 2]);
94
- const vc = new THREE.Vector3(positions[c], positions[c + 1], positions[c + 2]);
92
+ const va = new Vec3C(positions[a], positions[a + 1], positions[a + 2]);
93
+ const vb = new Vec3C(positions[b], positions[b + 1], positions[b + 2]);
94
+ const vc = new Vec3C(positions[c], positions[c + 1], positions[c + 2]);
95
95
  // 面中心
96
- const center = new THREE.Vector3().addVectors(va, vb).add(vc).divideScalar(3);
96
+ const center = new Vec3C().addVectors(va, vb).add(vc).divideScalar(3);
97
97
  const dist = center.distanceTo(targetPoint);
98
98
  // 面法向
99
- const normal = new THREE.Vector3()
99
+ const normal = new Vec3C()
100
100
  .subVectors(vb, va)
101
- .cross(new THREE.Vector3().subVectors(vc, va))
101
+ .cross(new Vec3C().subVectors(vc, va))
102
102
  .normalize();
103
103
  // 如果有目标法向,加权距离(法向不匹配的面惩罚更大)
104
104
  let weightedDist = dist;
@@ -108,9 +108,9 @@ export function faceAt(shape, anchor) {
108
108
  }
109
109
  if (weightedDist < bestDist) {
110
110
  bestDist = weightedDist;
111
- const area = new THREE.Vector3()
111
+ const area = new Vec3C()
112
112
  .subVectors(vb, va)
113
- .cross(new THREE.Vector3().subVectors(vc, va))
113
+ .cross(new Vec3C().subVectors(vc, va))
114
114
  .length() / 2;
115
115
  bestFace = {
116
116
  center: [center.x, center.y, center.z],
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/mesh/query.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * mesh 查询 API\n *\n * 提取来源:transform-store 的 compute*BoundingBox\n * 这些函数不产生几何,供 GeomRef 求值与面板显示使用。\n */\n\nimport * as THREE from 'three'\nimport type { Shape, Vec3, BoundingBox, FaceDescriptor } from './types'\n\n/**\n * Compute the axis-aligned bounding box of a shape.\n *\n * @param shape - the shape to measure.\n * @returns the min/max bounding box.\n */\nexport function boundingBox(shape: Shape): BoundingBox {\n const min: Vec3 = [Infinity, Infinity, Infinity]\n const max: Vec3 = [-Infinity, -Infinity, -Infinity]\n for (let i = 0; i < shape.positions.length; i += 3) {\n const x = shape.positions[i]\n const y = shape.positions[i + 1]\n const z = shape.positions[i + 2]\n if (x < min[0]) min[0] = x\n if (y < min[1]) min[1] = y\n if (z < min[2]) min[2] = z\n if (x > max[0]) max[0] = x\n if (y > max[1]) max[1] = y\n if (z > max[2]) max[2] = z\n }\n return { min, max }\n}\n\n/**\n * Compute the center of a shape's bounding box.\n *\n * @param shape - the shape to measure.\n * @returns the bounding-box center as a Vec3.\n */\nexport function bboxCenter(shape: Shape): Vec3 {\n const bb = boundingBox(shape)\n return [\n (bb.min[0] + bb.max[0]) / 2,\n (bb.min[1] + bb.max[1]) / 2,\n (bb.min[2] + bb.max[2]) / 2,\n ]\n}\n\n/**\n * Compute the enclosed volume of a closed triangle mesh using the divergence\n * theorem.\n *\n * @param shape - the shape to measure.\n * @returns the volume in mm³.\n */\nexport function volume(shape: Shape): number {\n let vol = 0\n const indices = shape.indices\n const positions = shape.positions\n for (let i = 0; i < indices.length; i += 3) {\n const a = indices[i] * 3\n const b = indices[i + 1] * 3\n const c = indices[i + 2] * 3\n const ax = positions[a], ay = positions[a + 1], az = positions[a + 2]\n const bx = positions[b], by = positions[b + 1], bz = positions[b + 2]\n const cx = positions[c], cy = positions[c + 1], cz = positions[c + 2]\n vol += (ax * (by * cz - bz * cy) - ay * (bx * cz - bz * cx) + az * (bx * cy - by * cx)) / 6\n }\n return Math.abs(vol)\n}\n\n/**\n * Find the face nearest to an anchor (a pick point plus an optional reference\n * normal). Used for GeomRef faceNormal evaluation: faces whose\n * normal is closer to the target normal are weighted more favorably.\n *\n * @param shape - the shape to search.\n * @param anchor - the target point with an optional reference normal.\n * @returns the closest face descriptor, or null when the mesh has no faces.\n */\nexport function faceAt(shape: Shape, anchor: { point: Vec3; normal?: Vec3 }): FaceDescriptor | null {\n const targetPoint = new THREE.Vector3(...anchor.point)\n const targetNormal = anchor.normal ? new THREE.Vector3(...anchor.normal) : null\n\n let bestDist = Infinity\n let bestFace: FaceDescriptor | null = null\n\n const indices = shape.indices\n const positions = shape.positions\n\n for (let i = 0; i < indices.length; i += 3) {\n const a = indices[i] * 3\n const b = indices[i + 1] * 3\n const c = indices[i + 2] * 3\n\n const va = new THREE.Vector3(positions[a], positions[a + 1], positions[a + 2])\n const vb = new THREE.Vector3(positions[b], positions[b + 1], positions[b + 2])\n const vc = new THREE.Vector3(positions[c], positions[c + 1], positions[c + 2])\n\n // 面中心\n const center = new THREE.Vector3().addVectors(va, vb).add(vc).divideScalar(3)\n const dist = center.distanceTo(targetPoint)\n\n // 面法向\n const normal = new THREE.Vector3()\n .subVectors(vb, va)\n .cross(new THREE.Vector3().subVectors(vc, va))\n .normalize()\n\n // 如果有目标法向,加权距离(法向不匹配的面惩罚更大)\n let weightedDist = dist\n if (targetNormal) {\n const dot = Math.abs(normal.dot(targetNormal))\n weightedDist = dist / (dot + 0.01) // 法向越匹配,权重越小\n }\n\n if (weightedDist < bestDist) {\n bestDist = weightedDist\n const area = new THREE.Vector3()\n .subVectors(vb, va)\n .cross(new THREE.Vector3().subVectors(vc, va))\n .length() / 2\n bestFace = {\n center: [center.x, center.y, center.z],\n normal: [normal.x, normal.y, normal.z],\n area,\n }\n }\n }\n\n return bestFace\n}\n"]}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/mesh/query.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * mesh 查询 API\n *\n * 提取来源:transform-store 的 compute*BoundingBox\n * 这些函数不产生几何,供 GeomRef 求值与面板显示使用。\n */\n\nimport { Vec3 as Vec3C } from '../math3d'\nimport type { Shape, Vec3, BoundingBox, FaceDescriptor } from './types'\n\n/**\n * Compute the axis-aligned bounding box of a shape.\n *\n * @param shape - the shape to measure.\n * @returns the min/max bounding box.\n */\nexport function boundingBox(shape: Shape): BoundingBox {\n const min: Vec3 = [Infinity, Infinity, Infinity]\n const max: Vec3 = [-Infinity, -Infinity, -Infinity]\n for (let i = 0; i < shape.positions.length; i += 3) {\n const x = shape.positions[i]\n const y = shape.positions[i + 1]\n const z = shape.positions[i + 2]\n if (x < min[0]) min[0] = x\n if (y < min[1]) min[1] = y\n if (z < min[2]) min[2] = z\n if (x > max[0]) max[0] = x\n if (y > max[1]) max[1] = y\n if (z > max[2]) max[2] = z\n }\n return { min, max }\n}\n\n/**\n * Compute the center of a shape's bounding box.\n *\n * @param shape - the shape to measure.\n * @returns the bounding-box center as a Vec3.\n */\nexport function bboxCenter(shape: Shape): Vec3 {\n const bb = boundingBox(shape)\n return [\n (bb.min[0] + bb.max[0]) / 2,\n (bb.min[1] + bb.max[1]) / 2,\n (bb.min[2] + bb.max[2]) / 2,\n ]\n}\n\n/**\n * Compute the enclosed volume of a closed triangle mesh using the divergence\n * theorem.\n *\n * @param shape - the shape to measure.\n * @returns the volume in mm³.\n */\nexport function volume(shape: Shape): number {\n let vol = 0\n const indices = shape.indices\n const positions = shape.positions\n for (let i = 0; i < indices.length; i += 3) {\n const a = indices[i] * 3\n const b = indices[i + 1] * 3\n const c = indices[i + 2] * 3\n const ax = positions[a], ay = positions[a + 1], az = positions[a + 2]\n const bx = positions[b], by = positions[b + 1], bz = positions[b + 2]\n const cx = positions[c], cy = positions[c + 1], cz = positions[c + 2]\n vol += (ax * (by * cz - bz * cy) - ay * (bx * cz - bz * cx) + az * (bx * cy - by * cx)) / 6\n }\n return Math.abs(vol)\n}\n\n/**\n * Find the face nearest to an anchor (a pick point plus an optional reference\n * normal). Used for GeomRef faceNormal evaluation: faces whose\n * normal is closer to the target normal are weighted more favorably.\n *\n * @param shape - the shape to search.\n * @param anchor - the target point with an optional reference normal.\n * @returns the closest face descriptor, or null when the mesh has no faces.\n */\nexport function faceAt(shape: Shape, anchor: { point: Vec3; normal?: Vec3 }): FaceDescriptor | null {\n const targetPoint = new Vec3C(anchor.point[0], anchor.point[1], anchor.point[2])\n const targetNormal = anchor.normal ? new Vec3C(anchor.normal[0], anchor.normal[1], anchor.normal[2]) : null\n\n let bestDist = Infinity\n let bestFace: FaceDescriptor | null = null\n\n const indices = shape.indices\n const positions = shape.positions\n\n for (let i = 0; i < indices.length; i += 3) {\n const a = indices[i] * 3\n const b = indices[i + 1] * 3\n const c = indices[i + 2] * 3\n\n const va = new Vec3C(positions[a], positions[a + 1], positions[a + 2])\n const vb = new Vec3C(positions[b], positions[b + 1], positions[b + 2])\n const vc = new Vec3C(positions[c], positions[c + 1], positions[c + 2])\n\n // 面中心\n const center = new Vec3C().addVectors(va, vb).add(vc).divideScalar(3)\n const dist = center.distanceTo(targetPoint)\n\n // 面法向\n const normal = new Vec3C()\n .subVectors(vb, va)\n .cross(new Vec3C().subVectors(vc, va))\n .normalize()\n\n // 如果有目标法向,加权距离(法向不匹配的面惩罚更大)\n let weightedDist = dist\n if (targetNormal) {\n const dot = Math.abs(normal.dot(targetNormal))\n weightedDist = dist / (dot + 0.01) // 法向越匹配,权重越小\n }\n\n if (weightedDist < bestDist) {\n bestDist = weightedDist\n const area = new Vec3C()\n .subVectors(vb, va)\n .cross(new Vec3C().subVectors(vc, va))\n .length() / 2\n bestFace = {\n center: [center.x, center.y, center.z],\n normal: [normal.x, normal.y, normal.z],\n area,\n }\n }\n }\n\n return bestFace\n}\n"]}
@@ -7,17 +7,17 @@
7
7
  * whose bundle must stay free of the addons. Precedent: `mesh/creased-normals.ts`
8
8
  * ports three's `toCreasedNormals` for exactly this reason.
9
9
  *
10
- * Output matches `STLLoader.parse()`: a non-indexed `BufferGeometry` carrying
11
- * `position` (one vertex triple per triangle, duplicates preserved) and `normal`
12
- * attributes, so callers can keep using `geoToManifoldMesh` for welding.
10
+ * Output: a non-indexed `Shape` carrying `positions` (one vertex triple per
11
+ * triangle, duplicates preserved), sequential `indices`, and `normals`,
12
+ * so callers can keep using `geoToManifoldMesh` for welding.
13
13
  */
14
- import * as THREE from 'three';
14
+ import type { Shape } from './types.js';
15
15
  /**
16
- * Parse STL bytes into a non-indexed BufferGeometry.
16
+ * Parse STL bytes into a non-indexed Shape.
17
17
  *
18
18
  * @param buffer - the raw STL file bytes (binary or ASCII).
19
- * @returns the parsed geometry (empty when the file holds no triangle).
19
+ * @returns the parsed shape (empty when the file holds no triangle).
20
20
  * @throws when the buffer is neither a well-formed binary nor ASCII STL.
21
21
  */
22
- export declare function parseStl(buffer: ArrayBuffer): THREE.BufferGeometry;
22
+ export declare function parseStl(buffer: ArrayBuffer): Shape;
23
23
  //# sourceMappingURL=stl-loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stl-loader.d.ts","sourceRoot":"","sources":["../../src/mesh/stl-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AA4H9B;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,KAAK,CAAC,cAAc,CAKlE"}
1
+ {"version":3,"file":"stl-loader.d.ts","sourceRoot":"","sources":["../../src/mesh/stl-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AA8HpC;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,KAAK,CAKnD"}
@@ -1,17 +1,3 @@
1
- /**
2
- * stl-loader — minimal STL parser (binary + ASCII), zero addons.
3
- *
4
- * Why hand-written: three's `STLLoader` lives in `three/examples/jsm/`, which is
5
- * outside three's version-compatibility promise and would pull a second,
6
- * unpinnable module into every faijs consumer — including the weapp worker,
7
- * whose bundle must stay free of the addons. Precedent: `mesh/creased-normals.ts`
8
- * ports three's `toCreasedNormals` for exactly this reason.
9
- *
10
- * Output matches `STLLoader.parse()`: a non-indexed `BufferGeometry` carrying
11
- * `position` (one vertex triple per triangle, duplicates preserved) and `normal`
12
- * attributes, so callers can keep using `geoToManifoldMesh` for welding.
13
- */
14
- import * as THREE from 'three';
15
1
  /** Binary STL layout: 80-byte header + uint32 count + 50 bytes per triangle. */
16
2
  const BINARY_HEADER_BYTES = 80;
17
3
  const BINARY_TRIANGLE_BYTES = 50;
@@ -43,6 +29,14 @@ function normalOf(ax, ay, az, bx, by, bz, cx, cy, cz) {
43
29
  return [0, 0, 0];
44
30
  return [nx / len, ny / len, nz / len];
45
31
  }
32
+ /** Build a non-indexed Shape from positions + normals (sequential indices). */
33
+ function makeShape(positions, normals) {
34
+ const vertCount = positions.length / 3;
35
+ const indices = new Uint32Array(vertCount);
36
+ for (let i = 0; i < vertCount; i++)
37
+ indices[i] = i;
38
+ return { positions, indices, normals };
39
+ }
46
40
  function parseBinary(buffer) {
47
41
  const view = new DataView(buffer);
48
42
  const triangles = view.getUint32(BINARY_HEADER_BYTES, true);
@@ -79,10 +73,7 @@ function parseBinary(buffer) {
79
73
  }
80
74
  offset += 2; // attribute byte count
81
75
  }
82
- const geo = new THREE.BufferGeometry();
83
- geo.setAttribute('position', new THREE.BufferAttribute(positions, 3));
84
- geo.setAttribute('normal', new THREE.BufferAttribute(normals, 3));
85
- return geo;
76
+ return makeShape(positions, normals);
86
77
  }
87
78
  function parseAscii(buffer) {
88
79
  const text = new TextDecoder().decode(new Uint8Array(buffer));
@@ -118,16 +109,13 @@ function parseAscii(buffer) {
118
109
  }
119
110
  }
120
111
  flush();
121
- const geo = new THREE.BufferGeometry();
122
- geo.setAttribute('position', new THREE.BufferAttribute(new Float32Array(vertices), 3));
123
- geo.setAttribute('normal', new THREE.BufferAttribute(new Float32Array(normals), 3));
124
- return geo;
112
+ return makeShape(new Float32Array(vertices), new Float32Array(normals));
125
113
  }
126
114
  /**
127
- * Parse STL bytes into a non-indexed BufferGeometry.
115
+ * Parse STL bytes into a non-indexed Shape.
128
116
  *
129
117
  * @param buffer - the raw STL file bytes (binary or ASCII).
130
- * @returns the parsed geometry (empty when the file holds no triangle).
118
+ * @returns the parsed shape (empty when the file holds no triangle).
131
119
  * @throws when the buffer is neither a well-formed binary nor ASCII STL.
132
120
  */
133
121
  export function parseStl(buffer) {