@faicad/faijs 0.31.1 → 0.32.3

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 +15 -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
@@ -1 +1 @@
1
- {"version":3,"file":"stl-loader.js","sourceRoot":"","sources":["../../src/mesh/stl-loader.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * stl-loader — minimal STL parser (binary + ASCII), zero addons.\n *\n * Why hand-written: three's `STLLoader` lives in `three/examples/jsm/`, which is\n * outside three's version-compatibility promise and would pull a second,\n * unpinnable module into every faijs consumer — including the weapp worker,\n * whose bundle must stay free of the addons. Precedent: `mesh/creased-normals.ts`\n * ports three's `toCreasedNormals` for exactly this reason.\n *\n * Output matches `STLLoader.parse()`: a non-indexed `BufferGeometry` carrying\n * `position` (one vertex triple per triangle, duplicates preserved) and `normal`\n * attributes, so callers can keep using `geoToManifoldMesh` for welding.\n */\nimport * as THREE from 'three'\n\n/** Binary STL layout: 80-byte header + uint32 count + 50 bytes per triangle. */\nconst BINARY_HEADER_BYTES = 80\nconst BINARY_TRIANGLE_BYTES = 50\n\n/**\n * Decide whether `buffer` is a binary STL by checking the declared triangle\n * count against the file size (the same test `STLLoader` uses).\n *\n * @param buffer - the raw file bytes.\n * @returns true when the buffer is binary STL.\n */\nfunction isBinaryStl(buffer: ArrayBuffer): boolean {\n if (buffer.byteLength < BINARY_HEADER_BYTES + 4) return false\n const view = new DataView(buffer)\n const triangles = view.getUint32(BINARY_HEADER_BYTES, true)\n if (triangles === 0) return false\n return BINARY_HEADER_BYTES + 4 + triangles * BINARY_TRIANGLE_BYTES === buffer.byteLength\n}\n\n/** Normalize a triangle normal, falling back to the geometric one. */\nfunction normalOf(\n ax: number, ay: number, az: number,\n bx: number, by: number, bz: number,\n cx: number, cy: number, cz: number,\n): [number, number, number] {\n const ux = bx - ax, uy = by - ay, uz = bz - az\n const vx = cx - ax, vy = cy - ay, vz = cz - az\n const nx = uy * vz - uz * vy\n const ny = uz * vx - ux * vz\n const nz = ux * vy - uy * vx\n const len = Math.hypot(nx, ny, nz)\n if (len < 1e-20) return [0, 0, 0]\n return [nx / len, ny / len, nz / len]\n}\n\nfunction parseBinary(buffer: ArrayBuffer): THREE.BufferGeometry {\n const view = new DataView(buffer)\n const triangles = view.getUint32(BINARY_HEADER_BYTES, true)\n const positions = new Float32Array(triangles * 9)\n const normals = new Float32Array(triangles * 9)\n let offset = BINARY_HEADER_BYTES + 4\n for (let t = 0; t < triangles; t++) {\n // Stored facet normal — used when it is a usable unit vector.\n let nx = view.getFloat32(offset, true)\n let ny = view.getFloat32(offset + 4, true)\n let nz = view.getFloat32(offset + 8, true)\n const stored = Math.hypot(nx, ny, nz)\n offset += 12\n const base = t * 9\n for (let v = 0; v < 3; v++) {\n positions[base + v * 3] = view.getFloat32(offset, true)\n positions[base + v * 3 + 1] = view.getFloat32(offset + 4, true)\n positions[base + v * 3 + 2] = view.getFloat32(offset + 8, true)\n offset += 12\n }\n if (stored < 1e-20) {\n ;[nx, ny, nz] = normalOf(\n positions[base], positions[base + 1], positions[base + 2],\n positions[base + 3], positions[base + 4], positions[base + 5],\n positions[base + 6], positions[base + 7], positions[base + 8],\n )\n } else {\n nx /= stored; ny /= stored; nz /= stored\n }\n for (let v = 0; v < 3; v++) {\n normals[base + v * 3] = nx\n normals[base + v * 3 + 1] = ny\n normals[base + v * 3 + 2] = nz\n }\n offset += 2 // attribute byte count\n }\n const geo = new THREE.BufferGeometry()\n geo.setAttribute('position', new THREE.BufferAttribute(positions, 3))\n geo.setAttribute('normal', new THREE.BufferAttribute(normals, 3))\n return geo\n}\n\nfunction parseAscii(buffer: ArrayBuffer): THREE.BufferGeometry {\n const text = new TextDecoder().decode(new Uint8Array(buffer))\n const vertices: number[] = []\n const normals: number[] = []\n let facetNormal: [number, number, number] | null = null\n const pending: number[] = []\n\n const flush = (): void => {\n if (pending.length !== 9) return\n vertices.push(...pending)\n const n = facetNormal ?? normalOf(\n pending[0], pending[1], pending[2],\n pending[3], pending[4], pending[5],\n pending[6], pending[7], pending[8],\n )\n for (let v = 0; v < 3; v++) normals.push(n[0], n[1], n[2])\n pending.length = 0\n }\n\n for (const rawLine of text.split('\\n')) {\n const line = rawLine.trim()\n if (line.startsWith('facet normal')) {\n flush()\n const parts = line.split(/\\s+/)\n facetNormal = [Number(parts[2]), Number(parts[3]), Number(parts[4])]\n continue\n }\n if (line.startsWith('vertex')) {\n const parts = line.split(/\\s+/)\n pending.push(Number(parts[1]), Number(parts[2]), Number(parts[3]))\n continue\n }\n if (line.startsWith('endfacet')) {\n flush()\n facetNormal = null\n }\n }\n flush()\n\n const geo = new THREE.BufferGeometry()\n geo.setAttribute('position', new THREE.BufferAttribute(new Float32Array(vertices), 3))\n geo.setAttribute('normal', new THREE.BufferAttribute(new Float32Array(normals), 3))\n return geo\n}\n\n/**\n * Parse STL bytes into a non-indexed BufferGeometry.\n *\n * @param buffer - the raw STL file bytes (binary or ASCII).\n * @returns the parsed geometry (empty when the file holds no triangle).\n * @throws when the buffer is neither a well-formed binary nor ASCII STL.\n */\nexport function parseStl(buffer: ArrayBuffer): THREE.BufferGeometry {\n if (buffer.byteLength === 0) {\n throw new Error('[mesh/stl-loader] empty STL buffer')\n }\n return isBinaryStl(buffer) ? parseBinary(buffer) : parseAscii(buffer)\n}\n"]}
1
+ {"version":3,"file":"stl-loader.js","sourceRoot":"","sources":["../../src/mesh/stl-loader.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * stl-loader — minimal STL parser (binary + ASCII), zero addons.\n *\n * Why hand-written: three's `STLLoader` lives in `three/examples/jsm/`, which is\n * outside three's version-compatibility promise and would pull a second,\n * unpinnable module into every faijs consumer — including the weapp worker,\n * whose bundle must stay free of the addons. Precedent: `mesh/creased-normals.ts`\n * ports three's `toCreasedNormals` for exactly this reason.\n *\n * Output: a non-indexed `Shape` carrying `positions` (one vertex triple per\n * triangle, duplicates preserved), sequential `indices`, and `normals`,\n * so callers can keep using `geoToManifoldMesh` for welding.\n */\nimport type { Shape } from './types'\n\n/** Binary STL layout: 80-byte header + uint32 count + 50 bytes per triangle. */\nconst BINARY_HEADER_BYTES = 80\nconst BINARY_TRIANGLE_BYTES = 50\n\n/**\n * Decide whether `buffer` is a binary STL by checking the declared triangle\n * count against the file size (the same test `STLLoader` uses).\n *\n * @param buffer - the raw file bytes.\n * @returns true when the buffer is binary STL.\n */\nfunction isBinaryStl(buffer: ArrayBuffer): boolean {\n if (buffer.byteLength < BINARY_HEADER_BYTES + 4) return false\n const view = new DataView(buffer)\n const triangles = view.getUint32(BINARY_HEADER_BYTES, true)\n if (triangles === 0) return false\n return BINARY_HEADER_BYTES + 4 + triangles * BINARY_TRIANGLE_BYTES === buffer.byteLength\n}\n\n/** Normalize a triangle normal, falling back to the geometric one. */\nfunction normalOf(\n ax: number, ay: number, az: number,\n bx: number, by: number, bz: number,\n cx: number, cy: number, cz: number,\n): [number, number, number] {\n const ux = bx - ax, uy = by - ay, uz = bz - az\n const vx = cx - ax, vy = cy - ay, vz = cz - az\n const nx = uy * vz - uz * vy\n const ny = uz * vx - ux * vz\n const nz = ux * vy - uy * vx\n const len = Math.hypot(nx, ny, nz)\n if (len < 1e-20) return [0, 0, 0]\n return [nx / len, ny / len, nz / len]\n}\n\n/** Build a non-indexed Shape from positions + normals (sequential indices). */\nfunction makeShape(positions: Float32Array, normals: Float32Array): Shape {\n const vertCount = positions.length / 3\n const indices = new Uint32Array(vertCount)\n for (let i = 0; i < vertCount; i++) indices[i] = i\n return { positions, indices, normals }\n}\n\nfunction parseBinary(buffer: ArrayBuffer): Shape {\n const view = new DataView(buffer)\n const triangles = view.getUint32(BINARY_HEADER_BYTES, true)\n const positions = new Float32Array(triangles * 9)\n const normals = new Float32Array(triangles * 9)\n let offset = BINARY_HEADER_BYTES + 4\n for (let t = 0; t < triangles; t++) {\n // Stored facet normal — used when it is a usable unit vector.\n let nx = view.getFloat32(offset, true)\n let ny = view.getFloat32(offset + 4, true)\n let nz = view.getFloat32(offset + 8, true)\n const stored = Math.hypot(nx, ny, nz)\n offset += 12\n const base = t * 9\n for (let v = 0; v < 3; v++) {\n positions[base + v * 3] = view.getFloat32(offset, true)\n positions[base + v * 3 + 1] = view.getFloat32(offset + 4, true)\n positions[base + v * 3 + 2] = view.getFloat32(offset + 8, true)\n offset += 12\n }\n if (stored < 1e-20) {\n ;[nx, ny, nz] = normalOf(\n positions[base], positions[base + 1], positions[base + 2],\n positions[base + 3], positions[base + 4], positions[base + 5],\n positions[base + 6], positions[base + 7], positions[base + 8],\n )\n } else {\n nx /= stored; ny /= stored; nz /= stored\n }\n for (let v = 0; v < 3; v++) {\n normals[base + v * 3] = nx\n normals[base + v * 3 + 1] = ny\n normals[base + v * 3 + 2] = nz\n }\n offset += 2 // attribute byte count\n }\n return makeShape(positions, normals)\n}\n\nfunction parseAscii(buffer: ArrayBuffer): Shape {\n const text = new TextDecoder().decode(new Uint8Array(buffer))\n const vertices: number[] = []\n const normals: number[] = []\n let facetNormal: [number, number, number] | null = null\n const pending: number[] = []\n\n const flush = (): void => {\n if (pending.length !== 9) return\n vertices.push(...pending)\n const n = facetNormal ?? normalOf(\n pending[0], pending[1], pending[2],\n pending[3], pending[4], pending[5],\n pending[6], pending[7], pending[8],\n )\n for (let v = 0; v < 3; v++) normals.push(n[0], n[1], n[2])\n pending.length = 0\n }\n\n for (const rawLine of text.split('\\n')) {\n const line = rawLine.trim()\n if (line.startsWith('facet normal')) {\n flush()\n const parts = line.split(/\\s+/)\n facetNormal = [Number(parts[2]), Number(parts[3]), Number(parts[4])]\n continue\n }\n if (line.startsWith('vertex')) {\n const parts = line.split(/\\s+/)\n pending.push(Number(parts[1]), Number(parts[2]), Number(parts[3]))\n continue\n }\n if (line.startsWith('endfacet')) {\n flush()\n facetNormal = null\n }\n }\n flush()\n\n return makeShape(new Float32Array(vertices), new Float32Array(normals))\n}\n\n/**\n * Parse STL bytes into a non-indexed Shape.\n *\n * @param buffer - the raw STL file bytes (binary or ASCII).\n * @returns the parsed shape (empty when the file holds no triangle).\n * @throws when the buffer is neither a well-formed binary nor ASCII STL.\n */\nexport function parseStl(buffer: ArrayBuffer): Shape {\n if (buffer.byteLength === 0) {\n throw new Error('[mesh/stl-loader] empty STL buffer')\n }\n return isBinaryStl(buffer) ? parseBinary(buffer) : parseAscii(buffer)\n}\n"]}
@@ -11,12 +11,12 @@
11
11
  * target pose we need
12
12
  * delta = M_target × M_build⁻¹ (component-level transforms cancel).
13
13
  *
14
- * Matrices are `THREE.Matrix4` — core already depends on three as a peer dep
14
+ * Matrices are `Mat4` — core already depends on three as a peer dep
15
15
  * (io.ts imports THREE.BufferAttribute, brep imports occt-wasm) and the host
16
16
  * resolves it. This module is only reachable from the web display path
17
17
  * (`@faicad/faijs/mesh/threemf-view`); the weapp bundle never imports it.
18
18
  */
19
- import * as THREE from 'three';
19
+ import { Mat4 } from '../math3d/index.js';
20
20
  import type { Bambu3mfMetadata } from './threemf-bambu.js';
21
21
  /** Bambu view layout: the pose a part carries on the plate / assembled / import. */
22
22
  export type ViewMode = 'print' | 'assembly' | 'import';
@@ -26,29 +26,29 @@ export interface ViewPartInfo {
26
26
  scopedId?: string;
27
27
  }
28
28
  type ViewMetadata = Pick<Bambu3mfMetadata, 'buildItems' | 'assembleTransforms' | 'importTransforms'>;
29
- /** Convert a 12-value 4×3 column-major transform (3MF §3.5.1) to THREE.Matrix4.
29
+ /** Convert a 12-value 4×3 column-major transform (3MF §3.5.1) to Mat4.
30
30
  *
31
31
  * Per 3MF spec (Section 3.5.1) the 12 values are column-major:
32
32
  * Col 0: [v0,v1,v2], Col 1: [v3,v4,v5], Col 2: [v6,v7,v8],
33
33
  * Col 3: [v9,v10,v11] (translation).
34
- * THREE.Matrix4.set() takes row-major args, so we transpose.
34
+ * Mat4.set() takes row-major args, so we transpose.
35
35
  *
36
36
  * @param v - the 12 column-major transform values (3MF §3.5.1).
37
- * @returns the equivalent column-major 4×4 THREE.Matrix4.
37
+ * @returns the equivalent column-major 4×4 Mat4.
38
38
  */
39
- export declare function mat4From12Values(v: number[]): THREE.Matrix4;
40
- /** Convert a 16-value 4×4 row-major array to THREE.Matrix4.
39
+ export declare function mat4From12Values(v: number[]): Mat4;
40
+ /** Convert a 16-value 4×4 row-major array to Mat4.
41
41
  *
42
42
  * @param v - the 16 row-major matrix values.
43
- * @returns the equivalent THREE.Matrix4.
43
+ * @returns the equivalent Mat4.
44
44
  */
45
- export declare function mat4From16Values(v: number[]): THREE.Matrix4;
45
+ export declare function mat4From16Values(v: number[]): Mat4;
46
46
  /** Create a translation-only matrix.
47
47
  *
48
48
  * @param t - the translation [x, y, z].
49
49
  * @returns the 4×4 translation matrix.
50
50
  */
51
- export declare function makeTranslationMatrix(t: [number, number, number]): THREE.Matrix4;
51
+ export declare function makeTranslationMatrix(t: [number, number, number]): Mat4;
52
52
  /**
53
53
  * Compute the delta matrix to transform a mesh from print-view to the target
54
54
  * view: delta = M_target × M_build⁻¹. Returns null when the target view has no
@@ -59,7 +59,7 @@ export declare function makeTranslationMatrix(t: [number, number, number]): THRE
59
59
  * @param partInfo - the part's objectId/scopedId used to key into `bambuMeta`.
60
60
  * @returns the delta matrix, or null when the target view has no data for the part.
61
61
  */
62
- export declare function computeViewDelta(viewMode: ViewMode, bambuMeta: ViewMetadata, partInfo: ViewPartInfo): THREE.Matrix4 | null;
62
+ export declare function computeViewDelta(viewMode: ViewMode, bambuMeta: ViewMetadata, partInfo: ViewPartInfo): Mat4 | null;
63
63
  /** Whether a view mode is available for a given bambu metadata object.
64
64
  *
65
65
  * @param viewMode - the target view ('print' | 'assembly' | 'import').
@@ -1 +1 @@
1
- {"version":3,"file":"threemf-view.d.ts","sourceRoot":"","sources":["../../src/mesh/threemf-view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAEvD,oFAAoF;AACpF,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAA;AAEtD,gFAAgF;AAChF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,KAAK,YAAY,GAAG,IAAI,CACtB,gBAAgB,EAChB,YAAY,GAAG,oBAAoB,GAAG,kBAAkB,CACzD,CAAA;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAO3D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAO3D;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAEhF;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,YAAY,EACvB,QAAQ,EAAE,YAAY,GACrB,KAAK,CAAC,OAAO,GAAG,IAAI,CAyBtB;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,kBAAkB,CAAC,GAC3E,OAAO,CAKT"}
1
+ {"version":3,"file":"threemf-view.d.ts","sourceRoot":"","sources":["../../src/mesh/threemf-view.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAEvD,oFAAoF;AACpF,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAA;AAEtD,gFAAgF;AAChF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,KAAK,YAAY,GAAG,IAAI,CACtB,gBAAgB,EAChB,YAAY,GAAG,oBAAoB,GAAG,kBAAkB,CACzD,CAAA;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAOlD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAOlD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAEvE;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,YAAY,EACvB,QAAQ,EAAE,YAAY,GACrB,IAAI,GAAG,IAAI,CAyBb;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,kBAAkB,CAAC,GAC3E,OAAO,CAKT"}
@@ -11,32 +11,32 @@
11
11
  * target pose we need
12
12
  * delta = M_target × M_build⁻¹ (component-level transforms cancel).
13
13
  *
14
- * Matrices are `THREE.Matrix4` — core already depends on three as a peer dep
14
+ * Matrices are `Mat4` — core already depends on three as a peer dep
15
15
  * (io.ts imports THREE.BufferAttribute, brep imports occt-wasm) and the host
16
16
  * resolves it. This module is only reachable from the web display path
17
17
  * (`@faicad/faijs/mesh/threemf-view`); the weapp bundle never imports it.
18
18
  */
19
- import * as THREE from 'three';
20
- /** Convert a 12-value 4×3 column-major transform (3MF §3.5.1) to THREE.Matrix4.
19
+ import { Mat4 } from '../math3d/index.js';
20
+ /** Convert a 12-value 4×3 column-major transform (3MF §3.5.1) to Mat4.
21
21
  *
22
22
  * Per 3MF spec (Section 3.5.1) the 12 values are column-major:
23
23
  * Col 0: [v0,v1,v2], Col 1: [v3,v4,v5], Col 2: [v6,v7,v8],
24
24
  * Col 3: [v9,v10,v11] (translation).
25
- * THREE.Matrix4.set() takes row-major args, so we transpose.
25
+ * Mat4.set() takes row-major args, so we transpose.
26
26
  *
27
27
  * @param v - the 12 column-major transform values (3MF §3.5.1).
28
- * @returns the equivalent column-major 4×4 THREE.Matrix4.
28
+ * @returns the equivalent column-major 4×4 Mat4.
29
29
  */
30
30
  export function mat4From12Values(v) {
31
- return new THREE.Matrix4().set(v[0], v[3], v[6], v[9], v[1], v[4], v[7], v[10], v[2], v[5], v[8], v[11], 0, 0, 0, 1);
31
+ return new Mat4().set(v[0], v[3], v[6], v[9], v[1], v[4], v[7], v[10], v[2], v[5], v[8], v[11], 0, 0, 0, 1);
32
32
  }
33
- /** Convert a 16-value 4×4 row-major array to THREE.Matrix4.
33
+ /** Convert a 16-value 4×4 row-major array to Mat4.
34
34
  *
35
35
  * @param v - the 16 row-major matrix values.
36
- * @returns the equivalent THREE.Matrix4.
36
+ * @returns the equivalent Mat4.
37
37
  */
38
38
  export function mat4From16Values(v) {
39
- return new THREE.Matrix4().set(v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7], v[8], v[9], v[10], v[11], v[12], v[13], v[14], v[15]);
39
+ return new Mat4().set(v[0], v[1], v[2], v[3], v[4], v[5], v[6], v[7], v[8], v[9], v[10], v[11], v[12], v[13], v[14], v[15]);
40
40
  }
41
41
  /** Create a translation-only matrix.
42
42
  *
@@ -44,7 +44,7 @@ export function mat4From16Values(v) {
44
44
  * @returns the 4×4 translation matrix.
45
45
  */
46
46
  export function makeTranslationMatrix(t) {
47
- return new THREE.Matrix4().makeTranslation(t[0], t[1], t[2]);
47
+ return new Mat4().makeTranslation(t[0], t[1], t[2]);
48
48
  }
49
49
  /**
50
50
  * Compute the delta matrix to transform a mesh from print-view to the target
@@ -1 +1 @@
1
- {"version":3,"file":"threemf-view.js","sourceRoot":"","sources":["../../src/mesh/threemf-view.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * threemf-view — Bambu view-mode deltas (moved up from 3d_editor's\n * `viewTransforms.ts`, plan §8 decision 2).\n *\n * Bambu stores per-object transforms for three view modes:\n * print — the build `<item transform>` (pose on the plate).\n * assembly — an extra `<assemble_item transform>` + offset (assembled pose).\n * import — a per-part 4×4 `matrix` in `model_settings.config` (import pose).\n *\n * To carry a mesh that already has M_build baked in (from `parseThreemf`) to the\n * target pose we need\n * delta = M_target × M_build⁻¹ (component-level transforms cancel).\n *\n * Matrices are `THREE.Matrix4` — core already depends on three as a peer dep\n * (io.ts imports THREE.BufferAttribute, brep imports occt-wasm) and the host\n * resolves it. This module is only reachable from the web display path\n * (`@faicad/faijs/mesh/threemf-view`); the weapp bundle never imports it.\n */\nimport * as THREE from 'three'\nimport type { Bambu3mfMetadata } from './threemf-bambu'\n\n/** Bambu view layout: the pose a part carries on the plate / assembled / import. */\nexport type ViewMode = 'print' | 'assembly' | 'import'\n\n/** Narrowed part identity the view layer keys on (host passes its PartInfo). */\nexport interface ViewPartInfo {\n objectId?: string\n scopedId?: string\n}\n\ntype ViewMetadata = Pick<\n Bambu3mfMetadata,\n 'buildItems' | 'assembleTransforms' | 'importTransforms'\n>\n\n/** Convert a 12-value 4×3 column-major transform (3MF §3.5.1) to THREE.Matrix4.\n *\n * Per 3MF spec (Section 3.5.1) the 12 values are column-major:\n * Col 0: [v0,v1,v2], Col 1: [v3,v4,v5], Col 2: [v6,v7,v8],\n * Col 3: [v9,v10,v11] (translation).\n * THREE.Matrix4.set() takes row-major args, so we transpose.\n *\n * @param v - the 12 column-major transform values (3MF §3.5.1).\n * @returns the equivalent column-major 4×4 THREE.Matrix4.\n */\nexport function mat4From12Values(v: number[]): THREE.Matrix4 {\n return new THREE.Matrix4().set(\n v[0], v[3], v[6], v[9],\n v[1], v[4], v[7], v[10],\n v[2], v[5], v[8], v[11],\n 0, 0, 0, 1,\n )\n}\n\n/** Convert a 16-value 4×4 row-major array to THREE.Matrix4.\n *\n * @param v - the 16 row-major matrix values.\n * @returns the equivalent THREE.Matrix4.\n */\nexport function mat4From16Values(v: number[]): THREE.Matrix4 {\n return new THREE.Matrix4().set(\n v[0], v[1], v[2], v[3],\n v[4], v[5], v[6], v[7],\n v[8], v[9], v[10], v[11],\n v[12], v[13], v[14], v[15],\n )\n}\n\n/** Create a translation-only matrix.\n *\n * @param t - the translation [x, y, z].\n * @returns the 4×4 translation matrix.\n */\nexport function makeTranslationMatrix(t: [number, number, number]): THREE.Matrix4 {\n return new THREE.Matrix4().makeTranslation(t[0], t[1], t[2])\n}\n\n/**\n * Compute the delta matrix to transform a mesh from print-view to the target\n * view: delta = M_target × M_build⁻¹. Returns null when the target view has no\n * data for this object (the caller leaves the mesh as-is).\n *\n * @param viewMode - the target view ('print' | 'assembly' | 'import').\n * @param bambuMeta - Bambu build/assemble/import transform lookups.\n * @param partInfo - the part's objectId/scopedId used to key into `bambuMeta`.\n * @returns the delta matrix, or null when the target view has no data for the part.\n */\nexport function computeViewDelta(\n viewMode: ViewMode,\n bambuMeta: ViewMetadata,\n partInfo: ViewPartInfo,\n): THREE.Matrix4 | null {\n const objectId = partInfo.objectId\n if (!objectId) return null\n\n const buildItem = bambuMeta.buildItems?.find(b => b.objectId === objectId)\n if (!buildItem?.transform) return null\n const buildMatrix = mat4From12Values(buildItem.transform)\n\n if (viewMode === 'assembly') {\n const assembleItem = bambuMeta.assembleTransforms?.get(objectId)\n if (!assembleItem) return null\n const assembleMatrix = mat4From12Values(assembleItem.transform)\n return assembleMatrix.multiply(buildMatrix.clone().invert())\n }\n\n if (viewMode === 'import') {\n const scopedId = partInfo.scopedId ?? '0'\n const importItem = bambuMeta.importTransforms?.get(`${objectId}:${scopedId}`)\n if (!importItem) return null\n const importMatrix = mat4From16Values(importItem.matrix)\n importMatrix.multiply(makeTranslationMatrix(importItem.sourceOffset))\n return importMatrix.multiply(buildMatrix.clone().invert())\n }\n\n return null\n}\n\n/** Whether a view mode is available for a given bambu metadata object.\n *\n * @param viewMode - the target view ('print' | 'assembly' | 'import').\n * @param bambuMeta - Bambu assemble/import transform lookups.\n * @returns true when `viewMode` has data available (print always does).\n */\nexport function hasViewData(\n viewMode: ViewMode,\n bambuMeta: Pick<Bambu3mfMetadata, 'assembleTransforms' | 'importTransforms'>,\n): boolean {\n if (viewMode === 'print') return true\n if (viewMode === 'assembly') return (bambuMeta.assembleTransforms?.size ?? 0) > 0\n if (viewMode === 'import') return (bambuMeta.importTransforms?.size ?? 0) > 0\n return false\n}"]}
1
+ {"version":3,"file":"threemf-view.js","sourceRoot":"","sources":["../../src/mesh/threemf-view.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * threemf-view — Bambu view-mode deltas (moved up from 3d_editor's\n * `viewTransforms.ts`, plan §8 decision 2).\n *\n * Bambu stores per-object transforms for three view modes:\n * print — the build `<item transform>` (pose on the plate).\n * assembly — an extra `<assemble_item transform>` + offset (assembled pose).\n * import — a per-part 4×4 `matrix` in `model_settings.config` (import pose).\n *\n * To carry a mesh that already has M_build baked in (from `parseThreemf`) to the\n * target pose we need\n * delta = M_target × M_build⁻¹ (component-level transforms cancel).\n *\n * Matrices are `Mat4` — core already depends on three as a peer dep\n * (io.ts imports THREE.BufferAttribute, brep imports occt-wasm) and the host\n * resolves it. This module is only reachable from the web display path\n * (`@faicad/faijs/mesh/threemf-view`); the weapp bundle never imports it.\n */\nimport { Mat4 } from '../math3d'\nimport type { Bambu3mfMetadata } from './threemf-bambu'\n\n/** Bambu view layout: the pose a part carries on the plate / assembled / import. */\nexport type ViewMode = 'print' | 'assembly' | 'import'\n\n/** Narrowed part identity the view layer keys on (host passes its PartInfo). */\nexport interface ViewPartInfo {\n objectId?: string\n scopedId?: string\n}\n\ntype ViewMetadata = Pick<\n Bambu3mfMetadata,\n 'buildItems' | 'assembleTransforms' | 'importTransforms'\n>\n\n/** Convert a 12-value 4×3 column-major transform (3MF §3.5.1) to Mat4.\n *\n * Per 3MF spec (Section 3.5.1) the 12 values are column-major:\n * Col 0: [v0,v1,v2], Col 1: [v3,v4,v5], Col 2: [v6,v7,v8],\n * Col 3: [v9,v10,v11] (translation).\n * Mat4.set() takes row-major args, so we transpose.\n *\n * @param v - the 12 column-major transform values (3MF §3.5.1).\n * @returns the equivalent column-major 4×4 Mat4.\n */\nexport function mat4From12Values(v: number[]): Mat4 {\n return new Mat4().set(\n v[0], v[3], v[6], v[9],\n v[1], v[4], v[7], v[10],\n v[2], v[5], v[8], v[11],\n 0, 0, 0, 1,\n )\n}\n\n/** Convert a 16-value 4×4 row-major array to Mat4.\n *\n * @param v - the 16 row-major matrix values.\n * @returns the equivalent Mat4.\n */\nexport function mat4From16Values(v: number[]): Mat4 {\n return new Mat4().set(\n v[0], v[1], v[2], v[3],\n v[4], v[5], v[6], v[7],\n v[8], v[9], v[10], v[11],\n v[12], v[13], v[14], v[15],\n )\n}\n\n/** Create a translation-only matrix.\n *\n * @param t - the translation [x, y, z].\n * @returns the 4×4 translation matrix.\n */\nexport function makeTranslationMatrix(t: [number, number, number]): Mat4 {\n return new Mat4().makeTranslation(t[0], t[1], t[2])\n}\n\n/**\n * Compute the delta matrix to transform a mesh from print-view to the target\n * view: delta = M_target × M_build⁻¹. Returns null when the target view has no\n * data for this object (the caller leaves the mesh as-is).\n *\n * @param viewMode - the target view ('print' | 'assembly' | 'import').\n * @param bambuMeta - Bambu build/assemble/import transform lookups.\n * @param partInfo - the part's objectId/scopedId used to key into `bambuMeta`.\n * @returns the delta matrix, or null when the target view has no data for the part.\n */\nexport function computeViewDelta(\n viewMode: ViewMode,\n bambuMeta: ViewMetadata,\n partInfo: ViewPartInfo,\n): Mat4 | null {\n const objectId = partInfo.objectId\n if (!objectId) return null\n\n const buildItem = bambuMeta.buildItems?.find(b => b.objectId === objectId)\n if (!buildItem?.transform) return null\n const buildMatrix = mat4From12Values(buildItem.transform)\n\n if (viewMode === 'assembly') {\n const assembleItem = bambuMeta.assembleTransforms?.get(objectId)\n if (!assembleItem) return null\n const assembleMatrix = mat4From12Values(assembleItem.transform)\n return assembleMatrix.multiply(buildMatrix.clone().invert())\n }\n\n if (viewMode === 'import') {\n const scopedId = partInfo.scopedId ?? '0'\n const importItem = bambuMeta.importTransforms?.get(`${objectId}:${scopedId}`)\n if (!importItem) return null\n const importMatrix = mat4From16Values(importItem.matrix)\n importMatrix.multiply(makeTranslationMatrix(importItem.sourceOffset))\n return importMatrix.multiply(buildMatrix.clone().invert())\n }\n\n return null\n}\n\n/** Whether a view mode is available for a given bambu metadata object.\n *\n * @param viewMode - the target view ('print' | 'assembly' | 'import').\n * @param bambuMeta - Bambu assemble/import transform lookups.\n * @returns true when `viewMode` has data available (print always does).\n */\nexport function hasViewData(\n viewMode: ViewMode,\n bambuMeta: Pick<Bambu3mfMetadata, 'assembleTransforms' | 'importTransforms'>,\n): boolean {\n if (viewMode === 'print') return true\n if (viewMode === 'assembly') return (bambuMeta.assembleTransforms?.size ?? 0) > 0\n if (viewMode === 'import') return (bambuMeta.importTransforms?.size ?? 0) > 0\n return false\n}"]}
@@ -10,16 +10,19 @@
10
10
  * - 执行器(dispatcher / runtime.execute)调用这些函数将变换烘焙进几何
11
11
  * - 交互拖拽期间的预览仍由 partTransforms(渲染层瞬态)承担
12
12
  * 确认后由引擎重放语句完成烘焙(P2)
13
+ *
14
+ * 数学层:three 已由 `../math3d` 替代(Vec3/Mat4/Euler 为 r162 逐位移植)。
13
15
  */
14
- import * as THREE from 'three';
15
- import type { Shape, Vec3 } from './types.js';
16
+ import { type MatrixLike } from '../math3d/index.js';
17
+ import type { Shape } from './types.js';
18
+ import type { Vec3 as Vec3Tuple } from './types.js';
16
19
  /**
17
20
  * Translate a mesh shape by baking the offset into its vertices.
18
21
  * @param shape - the mesh shape to translate.
19
22
  * @param offset - translation vector in mm.
20
23
  * @returns a new shape moved by the given offset.
21
24
  */
22
- export declare function translate(shape: Shape, offset: Vec3): Shape;
25
+ export declare function translate(shape: Shape, offset: Vec3Tuple): Shape;
23
26
  /**
24
27
  * Rotate a mesh shape by baking the rotation into its vertices (angles in
25
28
  * degrees, optionally about a pivot).
@@ -28,7 +31,7 @@ export declare function translate(shape: Shape, offset: Vec3): Shape;
28
31
  * @param pivot - optional rotation pivot point in mm.
29
32
  * @returns a new shape with rotated vertices.
30
33
  */
31
- export declare function rotate_euler(shape: Shape, angles: Vec3, pivot?: Vec3): Shape;
34
+ export declare function rotate_euler(shape: Shape, angles: Vec3Tuple, pivot?: Vec3Tuple): Shape;
32
35
  /**
33
36
  * Scale a mesh shape by baking the factor into its vertices.
34
37
  * @param shape - the mesh shape to scale.
@@ -36,7 +39,7 @@ export declare function rotate_euler(shape: Shape, angles: Vec3, pivot?: Vec3):
36
39
  * @param center - optional fixed point of the scaling (P6 §4.6; default origin).
37
40
  * @returns a new shape with scaled vertices.
38
41
  */
39
- export declare function scale3d(shape: Shape, factor: number | Vec3, center?: Vec3): Shape;
42
+ export declare function scale3d(shape: Shape, factor: number | Vec3Tuple, center?: Vec3Tuple): Shape;
40
43
  /**
41
44
  * Uniformly scale a mesh shape (原 brepjs `scale` 契约,P6 §4.6)。后台用
42
45
  * `scale3d` 的等比参数;`center` 为缩放不动的点,默认原点。
@@ -45,13 +48,16 @@ export declare function scale3d(shape: Shape, factor: number | Vec3, center?: Ve
45
48
  * @param center - optional fixed point of the scaling (default origin).
46
49
  * @returns a new shape with uniformly scaled vertices.
47
50
  */
48
- export declare function scale(shape: Shape, factor: number, center?: Vec3): Shape;
51
+ export declare function scale(shape: Shape, factor: number, center?: Vec3Tuple): Shape;
49
52
  /**
50
- * Transform a mesh shape with an arbitrary THREE.Matrix4 (corresponds to the
53
+ * Transform a mesh shape with an arbitrary 4x4 matrix (corresponds to the
51
54
  * existing transformMeshData function).
55
+ *
56
+ * 参数类型为结构化的 `MatrixLike`(`{ elements: number[] }`)——three.Matrix4
57
+ * 与 core 的 `Mat4` 都满足,避免把公开 API 绑死在某一个矩阵类上。
52
58
  * @param shape - the mesh shape to transform.
53
59
  * @param matrix - the 4x4 transform matrix to apply.
54
60
  * @returns a new shape with transformed vertices.
55
61
  */
56
- export declare function transformMatrix(shape: Shape, matrix: THREE.Matrix4): Shape;
62
+ export declare function transformMatrix(shape: Shape, matrix: MatrixLike): Shape;
57
63
  //# sourceMappingURL=transform.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/mesh/transform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAE1C;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,GAAG,KAAK,CAQ3D;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,GAAG,KAAK,CAY5E;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,IAAI,GAAG,KAAK,CAIjF;AAED;;;;;;;GAOG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,GAAG,KAAK,CAExE;AA0BD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,GAAG,KAAK,CAE1E"}
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/mesh/transform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,WAAW,CAAA;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,KAAK,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,SAAS,CAAA;AAEhD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,GAAG,KAAK,CAQhE;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,SAAS,GAAG,KAAK,CAYtF;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,KAAK,CAI3F;AAED;;;;;;;GAOG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,KAAK,CAE7E;AA0BD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,GAAG,KAAK,CAEvE"}
@@ -10,8 +10,10 @@
10
10
  * - 执行器(dispatcher / runtime.execute)调用这些函数将变换烘焙进几何
11
11
  * - 交互拖拽期间的预览仍由 partTransforms(渲染层瞬态)承担
12
12
  * 确认后由引擎重放语句完成烘焙(P2)
13
+ *
14
+ * 数学层:three 已由 `../math3d` 替代(Vec3/Mat4/Euler 为 r162 逐位移植)。
13
15
  */
14
- import * as THREE from 'three';
16
+ import { Vec3, Mat4, Euler } from '../math3d/index.js';
15
17
  /**
16
18
  * Translate a mesh shape by baking the offset into its vertices.
17
19
  * @param shape - the mesh shape to translate.
@@ -25,7 +27,7 @@ export function translate(shape, offset) {
25
27
  positions[i + 1] += offset[1];
26
28
  positions[i + 2] += offset[2];
27
29
  }
28
- return { positions, indices: shape.indices };
30
+ return { ...shape, positions };
29
31
  }
30
32
  /**
31
33
  * Rotate a mesh shape by baking the rotation into its vertices (angles in
@@ -36,11 +38,11 @@ export function translate(shape, offset) {
36
38
  * @returns a new shape with rotated vertices.
37
39
  */
38
40
  export function rotate_euler(shape, angles, pivot) {
39
- const euler = new THREE.Euler((angles[0] * Math.PI) / 180, (angles[1] * Math.PI) / 180, (angles[2] * Math.PI) / 180);
40
- const matrix = new THREE.Matrix4().makeRotationFromEuler(euler);
41
+ const euler = new Euler((angles[0] * Math.PI) / 180, (angles[1] * Math.PI) / 180, (angles[2] * Math.PI) / 180);
42
+ const matrix = new Mat4().makeRotationFromEuler(euler);
41
43
  if (pivot) {
42
- matrix.premultiply(new THREE.Matrix4().makeTranslation(pivot[0], pivot[1], pivot[2]));
43
- matrix.multiply(new THREE.Matrix4().makeTranslation(-pivot[0], -pivot[1], -pivot[2]));
44
+ matrix.premultiply(new Mat4().makeTranslation(pivot[0], pivot[1], pivot[2]));
45
+ matrix.multiply(new Mat4().makeTranslation(-pivot[0], -pivot[1], -pivot[2]));
44
46
  }
45
47
  return applyMatrix(shape, matrix);
46
48
  }
@@ -68,18 +70,18 @@ export function scale(shape, factor, center) {
68
70
  }
69
71
  /** 缩放矩阵:围绕 `center`(缺省原点)构造 T(c)·S·T(−c)。 */
70
72
  function scaleMatrix(f, center) {
71
- const s = new THREE.Matrix4().makeScale(f[0], f[1], f[2]);
73
+ const s = new Mat4().makeScale(f[0], f[1], f[2]);
72
74
  if (!center)
73
75
  return s;
74
- return new THREE.Matrix4()
76
+ return new Mat4()
75
77
  .makeTranslation(center[0], center[1], center[2])
76
78
  .multiply(s)
77
- .multiply(new THREE.Matrix4().makeTranslation(-center[0], -center[1], -center[2]));
79
+ .multiply(new Mat4().makeTranslation(-center[0], -center[1], -center[2]));
78
80
  }
79
- /** 用 THREE.Matrix4 变换几何 */
81
+ /** 用 4x4 矩阵变换几何 */
80
82
  function applyMatrix(shape, matrix) {
81
83
  const positions = new Float32Array(shape.positions);
82
- const v = new THREE.Vector3();
84
+ const v = new Vec3();
83
85
  for (let i = 0; i < positions.length; i += 3) {
84
86
  v.set(positions[i], positions[i + 1], positions[i + 2]);
85
87
  v.applyMatrix4(matrix);
@@ -87,11 +89,14 @@ function applyMatrix(shape, matrix) {
87
89
  positions[i + 1] = v.y;
88
90
  positions[i + 2] = v.z;
89
91
  }
90
- return { positions, indices: shape.indices };
92
+ return { ...shape, positions };
91
93
  }
92
94
  /**
93
- * Transform a mesh shape with an arbitrary THREE.Matrix4 (corresponds to the
95
+ * Transform a mesh shape with an arbitrary 4x4 matrix (corresponds to the
94
96
  * existing transformMeshData function).
97
+ *
98
+ * 参数类型为结构化的 `MatrixLike`(`{ elements: number[] }`)——three.Matrix4
99
+ * 与 core 的 `Mat4` 都满足,避免把公开 API 绑死在某一个矩阵类上。
95
100
  * @param shape - the mesh shape to transform.
96
101
  * @param matrix - the 4x4 transform matrix to apply.
97
102
  * @returns a new shape with transformed vertices.
@@ -1 +1 @@
1
- {"version":3,"file":"transform.js","sourceRoot":"","sources":["../../src/mesh/transform.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * mesh 变换 API\n *\n * 提取来源:\n * - engine/mesh-simplify/proxy-mesh-cache.ts (transformMeshData)\n * - engine-store.partTransforms\n *\n * 变换语义(烘焙执行引擎):\n * - translate/rotate_euler/scale3d 直接烘焙顶点(修改 positions)\n * - 执行器(dispatcher / runtime.execute)调用这些函数将变换烘焙进几何\n * - 交互拖拽期间的预览仍由 partTransforms(渲染层瞬态)承担\n * 确认后由引擎重放语句完成烘焙(P2)\n */\n\nimport * as THREE from 'three'\nimport type { Shape, Vec3 } from './types'\n\n/**\n * Translate a mesh shape by baking the offset into its vertices.\n * @param shape - the mesh shape to translate.\n * @param offset - translation vector in mm.\n * @returns a new shape moved by the given offset.\n */\nexport function translate(shape: Shape, offset: Vec3): Shape {\n const positions = new Float32Array(shape.positions)\n for (let i = 0; i < positions.length; i += 3) {\n positions[i] += offset[0]\n positions[i + 1] += offset[1]\n positions[i + 2] += offset[2]\n }\n return { positions, indices: shape.indices }\n}\n\n/**\n * Rotate a mesh shape by baking the rotation into its vertices (angles in\n * degrees, optionally about a pivot).\n * @param shape - the mesh shape to rotate.\n * @param angles - XYZ Euler angles in degrees.\n * @param pivot - optional rotation pivot point in mm.\n * @returns a new shape with rotated vertices.\n */\nexport function rotate_euler(shape: Shape, angles: Vec3, pivot?: Vec3): Shape {\n const euler = new THREE.Euler(\n (angles[0] * Math.PI) / 180,\n (angles[1] * Math.PI) / 180,\n (angles[2] * Math.PI) / 180,\n )\n const matrix = new THREE.Matrix4().makeRotationFromEuler(euler)\n if (pivot) {\n matrix.premultiply(new THREE.Matrix4().makeTranslation(pivot[0], pivot[1], pivot[2]))\n matrix.multiply(new THREE.Matrix4().makeTranslation(-pivot[0], -pivot[1], -pivot[2]))\n }\n return applyMatrix(shape, matrix)\n}\n\n/**\n * Scale a mesh shape by baking the factor into its vertices.\n * @param shape - the mesh shape to scale.\n * @param factor - uniform scale factor or per-axis (x, y, z) factors.\n * @param center - optional fixed point of the scaling (P6 §4.6; default origin).\n * @returns a new shape with scaled vertices.\n */\nexport function scale3d(shape: Shape, factor: number | Vec3, center?: Vec3): Shape {\n const f: [number, number, number] =\n typeof factor === 'number' ? [factor, factor, factor] : [factor[0], factor[1], factor[2]]\n return applyMatrix(shape, scaleMatrix(f, center))\n}\n\n/**\n * Uniformly scale a mesh shape (原 brepjs `scale` 契约,P6 §4.6)。后台用\n * `scale3d` 的等比参数;`center` 为缩放不动的点,默认原点。\n * @param shape - the mesh shape to scale.\n * @param factor - uniform scale factor (> 0).\n * @param center - optional fixed point of the scaling (default origin).\n * @returns a new shape with uniformly scaled vertices.\n */\nexport function scale(shape: Shape, factor: number, center?: Vec3): Shape {\n return applyMatrix(shape, scaleMatrix([factor, factor, factor], center))\n}\n\n/** 缩放矩阵:围绕 `center`(缺省原点)构造 T(c)·S·T(−c)。 */\nfunction scaleMatrix(f: [number, number, number], center?: Vec3): THREE.Matrix4 {\n const s = new THREE.Matrix4().makeScale(f[0], f[1], f[2])\n if (!center) return s\n return new THREE.Matrix4()\n .makeTranslation(center[0], center[1], center[2])\n .multiply(s)\n .multiply(new THREE.Matrix4().makeTranslation(-center[0], -center[1], -center[2]))\n}\n\n/** 用 THREE.Matrix4 变换几何 */\nfunction applyMatrix(shape: Shape, matrix: THREE.Matrix4): Shape {\n const positions = new Float32Array(shape.positions)\n const v = new THREE.Vector3()\n for (let i = 0; i < positions.length; i += 3) {\n v.set(positions[i], positions[i + 1], positions[i + 2])\n v.applyMatrix4(matrix)\n positions[i] = v.x\n positions[i + 1] = v.y\n positions[i + 2] = v.z\n }\n return { positions, indices: shape.indices }\n}\n\n/**\n * Transform a mesh shape with an arbitrary THREE.Matrix4 (corresponds to the\n * existing transformMeshData function).\n * @param shape - the mesh shape to transform.\n * @param matrix - the 4x4 transform matrix to apply.\n * @returns a new shape with transformed vertices.\n */\nexport function transformMatrix(shape: Shape, matrix: THREE.Matrix4): Shape {\n return applyMatrix(shape, matrix)\n}\n"]}
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../../src/mesh/transform.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * mesh 变换 API\n *\n * 提取来源:\n * - engine/mesh-simplify/proxy-mesh-cache.ts (transformMeshData)\n * - engine-store.partTransforms\n *\n * 变换语义(烘焙执行引擎):\n * - translate/rotate_euler/scale3d 直接烘焙顶点(修改 positions)\n * - 执行器(dispatcher / runtime.execute)调用这些函数将变换烘焙进几何\n * - 交互拖拽期间的预览仍由 partTransforms(渲染层瞬态)承担\n * 确认后由引擎重放语句完成烘焙(P2)\n *\n * 数学层:three 已由 `../math3d` 替代(Vec3/Mat4/Euler 为 r162 逐位移植)。\n */\n\nimport { Vec3, Mat4, Euler, type MatrixLike } from '../math3d'\nimport type { Shape } from './types'\nimport type { Vec3 as Vec3Tuple } from './types'\n\n/**\n * Translate a mesh shape by baking the offset into its vertices.\n * @param shape - the mesh shape to translate.\n * @param offset - translation vector in mm.\n * @returns a new shape moved by the given offset.\n */\nexport function translate(shape: Shape, offset: Vec3Tuple): Shape {\n const positions = new Float32Array(shape.positions)\n for (let i = 0; i < positions.length; i += 3) {\n positions[i] += offset[0]\n positions[i + 1] += offset[1]\n positions[i + 2] += offset[2]\n }\n return { ...shape, positions }\n}\n\n/**\n * Rotate a mesh shape by baking the rotation into its vertices (angles in\n * degrees, optionally about a pivot).\n * @param shape - the mesh shape to rotate.\n * @param angles - XYZ Euler angles in degrees.\n * @param pivot - optional rotation pivot point in mm.\n * @returns a new shape with rotated vertices.\n */\nexport function rotate_euler(shape: Shape, angles: Vec3Tuple, pivot?: Vec3Tuple): Shape {\n const euler = new Euler(\n (angles[0] * Math.PI) / 180,\n (angles[1] * Math.PI) / 180,\n (angles[2] * Math.PI) / 180,\n )\n const matrix = new Mat4().makeRotationFromEuler(euler)\n if (pivot) {\n matrix.premultiply(new Mat4().makeTranslation(pivot[0], pivot[1], pivot[2]))\n matrix.multiply(new Mat4().makeTranslation(-pivot[0], -pivot[1], -pivot[2]))\n }\n return applyMatrix(shape, matrix)\n}\n\n/**\n * Scale a mesh shape by baking the factor into its vertices.\n * @param shape - the mesh shape to scale.\n * @param factor - uniform scale factor or per-axis (x, y, z) factors.\n * @param center - optional fixed point of the scaling (P6 §4.6; default origin).\n * @returns a new shape with scaled vertices.\n */\nexport function scale3d(shape: Shape, factor: number | Vec3Tuple, center?: Vec3Tuple): Shape {\n const f: [number, number, number] =\n typeof factor === 'number' ? [factor, factor, factor] : [factor[0], factor[1], factor[2]]\n return applyMatrix(shape, scaleMatrix(f, center))\n}\n\n/**\n * Uniformly scale a mesh shape (原 brepjs `scale` 契约,P6 §4.6)。后台用\n * `scale3d` 的等比参数;`center` 为缩放不动的点,默认原点。\n * @param shape - the mesh shape to scale.\n * @param factor - uniform scale factor (> 0).\n * @param center - optional fixed point of the scaling (default origin).\n * @returns a new shape with uniformly scaled vertices.\n */\nexport function scale(shape: Shape, factor: number, center?: Vec3Tuple): Shape {\n return applyMatrix(shape, scaleMatrix([factor, factor, factor], center))\n}\n\n/** 缩放矩阵:围绕 `center`(缺省原点)构造 T(c)·S·T(−c)。 */\nfunction scaleMatrix(f: [number, number, number], center?: Vec3Tuple): Mat4 {\n const s = new Mat4().makeScale(f[0], f[1], f[2])\n if (!center) return s\n return new Mat4()\n .makeTranslation(center[0], center[1], center[2])\n .multiply(s)\n .multiply(new Mat4().makeTranslation(-center[0], -center[1], -center[2]))\n}\n\n/** 用 4x4 矩阵变换几何 */\nfunction applyMatrix(shape: Shape, matrix: MatrixLike): Shape {\n const positions = new Float32Array(shape.positions)\n const v = new Vec3()\n for (let i = 0; i < positions.length; i += 3) {\n v.set(positions[i], positions[i + 1], positions[i + 2])\n v.applyMatrix4(matrix)\n positions[i] = v.x\n positions[i + 1] = v.y\n positions[i + 2] = v.z\n }\n return { ...shape, positions }\n}\n\n/**\n * Transform a mesh shape with an arbitrary 4x4 matrix (corresponds to the\n * existing transformMeshData function).\n *\n * 参数类型为结构化的 `MatrixLike`(`{ elements: number[] }`)——three.Matrix4\n * 与 core 的 `Mat4` 都满足,避免把公开 API 绑死在某一个矩阵类上。\n * @param shape - the mesh shape to transform.\n * @param matrix - the 4x4 transform matrix to apply.\n * @returns a new shape with transformed vertices.\n */\nexport function transformMatrix(shape: Shape, matrix: MatrixLike): Shape {\n return applyMatrix(shape, matrix)\n}\n"]}
@@ -36,6 +36,8 @@ export type JsonValue = string | number | boolean | null | JsonValue[] | {
36
36
  export interface Shape {
37
37
  positions: Float32Array;
38
38
  indices: Uint32Array;
39
+ /** Per-vertex normals (x, y, z interleaved), length = positions.length. Optional; derived via creased-normals when absent. */
40
+ normals?: Float32Array;
39
41
  /** 可选:形状级外观(mesh/brep 双链路产物自解释;worker 序列化保留字段、不保留方法)。 */
40
42
  appearance?: PbrAppearance;
41
43
  /** Phase 2:面级外观分组 [三角形起始, 数量, 外观];存在时优先于 appearance 作为未分组默认。 */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mesh/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mesh/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAI5C,oCAAoC;AACpC,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAE3C;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,EAAE,GACX;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AAI9B;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,KAAK;IACpB,SAAS,EAAE,YAAY,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;IACpB,8HAA8H;IAC9H,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,yDAAyD;IACzD,UAAU,CAAC,EAAE,aAAa,CAAA;IAC1B,gEAAgE;IAChE,cAAc,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,aAAa,CAAA;KAAE,CAAC,CAAA;IACnF,2EAA2E;IAC3E,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,SAAS,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,IAAI,CAAC;QAAC,MAAM,CAAC,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,IAAI,CAAA;SAAE,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;IAC5F;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACrD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,KAAK,CAElD;AAID,8DAA8D;AAC9D,eAAO,MAAM,YAAY,KAAK,CAAA;AAC9B,4CAA4C;AAC5C,eAAO,MAAM,QAAQ,IAAI,CAAA;AACzB,4CAA4C;AAC5C,eAAO,MAAM,QAAQ,MAAM,CAAA;AAE3B;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAGvD;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,2FAA2F;IAC3F,EAAE,CAAC,EAAE,IAAI,CAAA;IACT,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,wCAAwC;AACxC,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,sEAAsE;AACtE,MAAM,WAAW,cAAc;IAC7B,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,4BAA4B;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,6EAA6E;IAC7E,EAAE,CAAC,EAAE,IAAI,CAAA;IACT,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,sFAAsF;IACtF,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,4DAA4D;AAC5D,MAAM,WAAW,UAAU;IACzB,+BAA+B;IAC/B,YAAY,EAAE,MAAM,CAAA;IACpB,qFAAqF;IACrF,SAAS,EAAE,MAAM,CAAA;IACjB,4BAA4B;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,6EAA6E;IAC7E,EAAE,CAAC,EAAE,IAAI,CAAA;IACT,sFAAsF;IACtF,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAA;IACb,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAA;IACd,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAA;IACb,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,uCAAuC;AACvC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,oDAAoD;AACpD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,8EAA8E;AAC9E,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAID,0CAA0C;AAC1C,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,IAAI,CAAA;CACb;AAED,uCAAuC;AACvC,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,IAAI,CAAA;IACZ,KAAK,CAAC,EAAE,IAAI,CAAA;CACb;AAED,sCAAsC;AACtC,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAID,0CAA0C;AAC1C,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,UAAU,GAAG,WAAW,CAAA;AAIjE,oEAAoE;AACpE,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,IAAI,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;CACf;AAED,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,UAAU,CAAA;IACjB,WAAW,EAAE,IAAI,CAAA;IACjB,QAAQ,EAAE,IAAI,CAAA;IACd,mBAAmB,EAAE,MAAM,CAAA;IAC3B,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAA;QACb,cAAc,EAAE,MAAM,CAAA;QACtB,KAAK,EAAE,MAAM,CAAA;QACb,cAAc,EAAE,MAAM,CAAA;QACtB,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,2EAA2E;AAC3E,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,UAAU,CAAA;IACjB,WAAW,EAAE,IAAI,CAAA;IACjB,QAAQ,EAAE,IAAI,CAAA;IACd,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAA;QAChB,iBAAiB,EAAE,MAAM,CAAA;QACzB,MAAM,EAAE,MAAM,CAAA;QACd,eAAe,EAAE,MAAM,CAAA;KACxB,CAAA;IACD,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;CACnC;AAED,gFAAgF;AAChF,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,UAAU,CAAA;IACjB,WAAW,EAAE,IAAI,CAAA;IACjB,QAAQ,EAAE,IAAI,CAAA;IACd,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,CAAA;QAClB,mBAAmB,EAAE,MAAM,CAAA;QAC3B,MAAM,EAAE,MAAM,CAAA;QACd,eAAe,EAAE,MAAM,CAAA;KACxB,CAAA;IACD,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;CACnC;AAED,wEAAwE;AACxE,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,KAAK,CAAA;IACZ,IAAI,EAAE,KAAK,CAAA;IACX,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CACpB;AAID,sCAAsC;AACtC,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,SAAS,GAAG,OAAO,CAAA;IACzB,QAAQ,EAAE,IAAI,CAAA;IACd,SAAS,EAAE,IAAI,CAAA;IACf,UAAU,EAAE,IAAI,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAID,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,IAAI,CAAA;IACZ,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,CAAA;CAC3C;AAID,2DAA2D;AAC3D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE;QACJ,MAAM,EAAE,IAAI,CAAA;QACZ,MAAM,EAAE,IAAI,CAAA;KACb,CAAA;IACD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,yDAAyD;AACzD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE;QACJ,MAAM,EAAE,IAAI,CAAA;QACZ,MAAM,EAAE,IAAI,CAAA;KACb,CAAA;IACD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,uBAAuB,EAAE,OAAO,CAAA;IAChC,iBAAiB,EAAE,MAAM,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAID,gDAAgD;AAChD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,IAAI,CAAA;IACT,GAAG,EAAE,IAAI,CAAA;CACV;AAED,iEAAiE;AACjE,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,IAAI,CAAA;IACZ,MAAM,EAAE,IAAI,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/mesh/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAqFH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,CAAU;IACpC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,WAAW,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,CAAA;AAC3E,CAAC;AAED,aAAa;AAEb,8DAA8D;AAC9D,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAA;AAC9B,4CAA4C;AAC5C,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AACzB,4CAA4C;AAC5C,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,CAAA;AAE3B;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,CAAqB;IAC7C,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,YAAY,CAAA;IACxC,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC9D,CAAC","sourcesContent":["/**\n * mesh 类型定义 — 纯数据几何 API 的类型契约\n *\n * 设计原则(§5.1):\n * - 全部纯数据:输入输出是 ManifoldMeshData 或 JSON 值,不碰 THREE 场景、不读 store\n * - 不可变:每个 API 返回新几何,不修改输入\n * - 坐标系:右手系 +Z 向上、毫米、角度用度\n * - 坐标空间:所有 API 输入/输出均为**世界空间** ManifoldMeshData\n * (局部↔世界变换由执行器负责,mesh 不感知 mesh.matrixWorld)\n *\n * P1 阶段 Shape = ManifoldMeshData(无 worker)。\n * P3+ 阶段 Shape 将变为 worker 内 Manifold 对象的句柄。\n */\n\nimport type { PbrAppearance } from '../api/appearance'\nimport type { ShapeMeta } from '../api/meta'\n\n// ── 基础类型 ──\n\n/** 三维坐标 / RGB 颜色元组(分量 sRGB 0–1)。 */\nexport type Vec3 = [number, number, number]\n\n/**\n * A JSON-serializable value: scalar, null, array, or plain object.\n */\nexport type JsonValue =\n | string\n | number\n | boolean\n | null\n | JsonValue[]\n | { [k: string]: JsonValue }\n\n// ── Shape ──\n\n/**\n * A mesh shape — the core data type of the mesh API.\n *\n * Shape is defined directly in mesh/types.ts rather than re-exported from\n * ops/types.ts; ops/types.ts imports it from here, removing the type cycle.\n *\n * 外观(PBR):`appearance` 为可选数据字段(设计文档 2026-10-05 v2 §4.2),\n * 双链路产物自解释、可序列化;外观设置是 Shape **方法**(非 op,见\n * `api/appearance.ts` 的 `ShapeAppearanceMethods` / `attachAppearanceMethods`),\n * 方法只挂载在产物构造点(solid/curve)返回的实例上,基础 Shape 保持纯数据\n * 契约——因此本接口**不** extends 方法接口,`isMeshShape` 鸭子判定不受影响。\n */\nexport interface Shape {\n positions: Float32Array\n indices: Uint32Array\n /** 可选:形状级外观(mesh/brep 双链路产物自解释;worker 序列化保留字段、不保留方法)。 */\n appearance?: PbrAppearance\n /** Phase 2:面级外观分组 [三角形起始, 数量, 外观];存在时优先于 appearance 作为未分组默认。 */\n materialGroups?: Array<{ start: number; count: number; appearance: PbrAppearance }>\n /** Phase 2:顶点颜色(3MF colorgroup / 面级 mesh 链),sRGB 0–1,长度 = positions 长度。 */\n vertexColors?: Float32Array\n /**\n * 零件级说明性元数据(设计文档 2026-10-05-meta §4.3):名称/描述/料号/自定义\n * 键值,随 Shape 走 mesh/brep 双链路、JSON 可序列化。设置方法是 Shape 实例\n * 方法(非 op,见 `api/meta.ts` 的 `ShapeMetaMethods` / `attachMetaMethods`),\n * 方法只挂载在产物构造点(solid/curve)返回的实例上,基础 Shape 保持纯数据\n * 契约——因此本接口**不** extends 方法接口,`isMeshShape` 鸭子判定不受影响。\n */\n meta?: ShapeMeta\n /**\n * 装配节点位姿(方案 2026-10-08 §2.1「装配模型 = 节点属性,单一真源」):节点\n * **相对其父**的位置/姿态。可选、纯数据、JSON 可序列化——与 `appearance` /\n * `meta` 同为**字段**而非方法,随 Shape 一起过 worker 序列化与 `structuredClone`\n * (`isMeshShape` 鸭子判定不看本字段)。装配层级就是 Shape / CompoundShape\n * 自身的 `children` + 本字段,**没有**平行的装配树。\n *\n * 取值形态(三种等价书写,均为可序列化纯数据):`translate` 平移;`rotate`\n * 单一轴角(`angle` 按本文件约定用**度**,`axis` 为轴向量);`matrix` 3×4\n * 行主序 12 元组——即 3MF `<component transform>` 与 XCAF location 的直接形态。\n * 三者的复合顺序与形态间优先级由读侧实现固定(§5 第 4、5 步),本字段只定\n * 义取值形态。\n *\n * 写入方两个、写回同一字段:导入侧(XCAF location / 3MF component transform)\n * 与求解侧(`AssemblyTransform[]`)。导出侧**只读**它:STL 顶点烘焙、3MF\n * `<component transform>`、STEP XCAF location(§2.1 映射表)。分量刻度与\n * `positions` 同(基准单位),换算到声明单位由写出器成对完成(§2.1)。\n *\n * 阶段说明:本字段随 §5 第 3 步引入;写出器在 §5 第 4(3MF components)、第 5\n * (导入归一 / STL 烘焙)步之前不消费它(`export-model.test.ts` 用「带与不带\n * `transform` 的导出字节相等」钉住这一当前事实,届时翻转)。\n */\n transform?: { translate?: Vec3; rotate?: { angle: number; axis?: Vec3 }; matrix?: number[] }\n /**\n * 面结构元数据:面序号 → 三角形区间 [start, count)(start/count 为三角形索引,\n * 对应 positions/indices 焊接后的三角形序列)。仅参数化 primitives 构造时记录\n * (面结构构造时已知、三角形顺序固定);manifold 布尔/组合/导入后无 CAD 面\n * 概念,本字段不存在。`setFaceColor`/`setFaceMaterial` 依赖本字段把面序号映射\n * 到三角形区间并写入 materialGroups。\n */\n faceRanges?: Array<{ start: number; count: number }>\n}\n\n/**\n * Structural guard: returns true when the value looks like a mesh Shape\n * (duck-typed via positions/indices, with no requirements on third-party\n * types).\n *\n * Per the keep-syntax design, hosts use this guard to distinguish mesh Shapes\n * from compounds when consuming ExecutionResult.outputs, in the same style as\n * the runtime-internal isShapeLike.\n * @param v - the value to test.\n * @returns true when the value is a mesh Shape.\n */\nexport function isMeshShape(v: unknown): v is Shape {\n return !!v && typeof v === 'object' && 'positions' in v && 'indices' in v\n}\n\n// ── 创建参数 ──\n\n/** Default radial segment count used for rounded geometry. */\nexport const NRAD_DEFAULT = 64\n/** Minimum allowed radial segment count. */\nexport const NRAD_MIN = 3\n/** Maximum allowed radial segment count. */\nexport const NRAD_MAX = 128\n\n/**\n * Clamp an nRad value into the legal range [NRAD_MIN, NRAD_MAX], rounding to\n * the nearest integer; undefined falls back to NRAD_DEFAULT.\n * @param n - the requested radial segment count, or undefined.\n * @returns the clamped radial segment count.\n */\nexport function clampNRad(n: number | undefined): number {\n if (n === undefined) return NRAD_DEFAULT\n return Math.max(NRAD_MIN, Math.min(NRAD_MAX, Math.round(n)))\n}\n\n/**\n * Parameters for creating a box (原 brepjs `box(width, depth, height, {at?, centered?, segments?})`\n * contract, §4.1 A 决策). Default: min-corner at the origin. `centered: true` shifts so the\n * box is centered at the origin; `at` is CENTER semantics and takes precedence over `centered`.\n */\nexport interface BoxParams {\n /** Side length along X (mm). */\n width: number\n /** Side length along Y (mm). */\n depth: number\n /** Side length along Z (mm). */\n height: number\n /** Center position (原 brepjs `at`, CENTER semantics); takes precedence over `centered`. */\n at?: Vec3\n /** Center the box at the origin when `at` is absent. Default: false (min-corner at origin). */\n centered?: boolean\n /** Tessellation segment count (box: affects only brep/mesh tessellation, not topology). */\n segments?: number\n /** Internal historical alias for `segments` (accepted by clampNRad, §5.1). */\n nRad?: number\n}\n\n/** Parameters for creating a sphere. */\nexport interface SphereParams {\n radius: number\n segments?: number\n center?: Vec3\n nRad?: number\n}\n\n/** Parameters for creating a cylinder (原 brepjs contract, §4.3 A). */\nexport interface CylinderParams {\n /** Radius (mm). */\n radius: number\n /** Height along +Z (mm). */\n height: number\n /** Base circle center (原 brepjs `at`, BASE semantics; default [0, 0, 0]). */\n at?: Vec3\n /** Center the cylinder (base at −h/2 / center at `at`) instead of base at `at`/origin. */\n centered?: boolean\n /** Tessellation segment count (cylinder: affects only tessellation, not topology). */\n segments?: number\n /** Internal historical alias for `segments` (accepted by clampNRad, §5.1). */\n nRad?: number\n}\n\n/** Parameters for creating a cone (or a truncated cone). */\nexport interface ConeParams {\n /** Radius at the base (mm). */\n radiusBottom: number\n /** Radius at the top (mm); 0 for a pointed cone, === radiusBottom for a cylinder. */\n radiusTop: number\n /** Height along +Z (mm). */\n height: number\n /** Base circle center (原 brepjs `at`, BASE semantics; default [0, 0, 0]). */\n at?: Vec3\n /** Center the cone (base at −h/2 / center at `at`) instead of base at `at`/origin. */\n centered?: boolean\n /** Tessellation segment count (cone: affects only mere tessellation, not topology). */\n segments?: number\n /** Internal historical alias for `segments` (accepted by clampNRad, §5.1). */\n nRad?: number\n}\n\n/**\n * Parameters for creating a wedge (trapezoidal prism).\n */\nexport interface WedgeParams {\n /** Width of the base edge (mm), along the Y axis. */\n width: number\n /** Height of the trapezoid (mm), along the Z axis. */\n height: number\n /** Angle between the base edge and the slope (degrees). */\n angle: number\n /** Total extrusion length (mm), along the X axis. */\n length: number\n center?: Vec3\n nRad?: number\n}\n\n/** Parameters for creating 3D text. */\nexport interface TextParams {\n text: string\n size: number\n depth: number\n}\n\n/** Parameters for extruding an SVG into a solid. */\nexport interface SvgExtrudeParams {\n svg: string\n depth: number\n targetLongSide: number\n naturalWidth?: number\n naturalHeight?: number\n}\n\n/** Parameters for building a solid from an SDF (signed distance function). */\nexport interface SdfParams {\n code: string\n box?: [Vec3, Vec3]\n resolution?: number\n params?: Record<string, number>\n}\n\n// ── 变换参数 ──\n\n/** Parameters for translating a shape. */\nexport interface TranslateParams {\n offset: Vec3\n}\n\n/** Parameters for rotating a shape. */\nexport interface RotateParams {\n angles: Vec3\n pivot?: Vec3\n}\n\n/** Parameters for scaling a shape. */\nexport interface ScaleParams {\n factor: number | Vec3\n}\n\n// ── 布尔参数 ──\n\n/** Kinds of binary boolean operations. */\nexport type BooleanOperation = 'union' | 'subtract' | 'intersect'\n\n// ── 分割参数 ──\n\n/** A cutting plane defined by a unit normal and a signed offset. */\nexport interface SplitPlane {\n normal: Vec3\n offset: number\n}\n\n/** Parameters for a dovetail split, including the cutting plane setup. */\nexport interface DovetailSplitParams {\n plane: SplitPlane\n planeCenter: Vec3\n widthDir: Vec3\n bboxWidthOnWidthDir: number\n groove: {\n depth: number\n depthTolerance: number\n width: number\n widthTolerance: number\n flapsAngle: number\n }\n}\n\n/** Parameters for a dowel-pin split, including the cutting plane setup. */\nexport interface DowelSplitParams {\n plane: SplitPlane\n planeCenter: Vec3\n widthDir: Vec3\n dowel: {\n diameter: number\n diameterTolerance: number\n height: number\n heightTolerance: number\n }\n selectedSections?: number[] | null\n}\n\n/** Parameters for a straight-tenon split, including the cutting plane setup. */\nexport interface TenonSplitParams {\n plane: SplitPlane\n planeCenter: Vec3\n widthDir: Vec3\n tenon: {\n sideLength: number\n sideLengthTolerance: number\n height: number\n heightTolerance: number\n }\n selectedSections?: number[] | null\n}\n\n/** Result of a joinery split: the two halves plus the cut-out wedge. */\nexport interface SplitResult {\n front: Shape\n back: Shape\n wedge: Shape | null\n}\n\n// ── 钻孔参数 ──\n\n/** Parameters for drilling a hole. */\nexport interface DrillParams {\n diameter: number\n depth?: number\n type: 'through' | 'blind'\n position: Vec3\n direction: Vec3\n faceNormal: Vec3\n tolerance?: number\n holeType?: 'simple' | 'screw'\n screwSystem?: string\n screwSpecIdx?: number\n screwThread?: string\n screwHead?: string\n}\n\n// ── 拉伸参数 ──\n\n/** Parameters for extruding a face bounded by a plane. */\nexport interface ExtrudeParams {\n normal: Vec3\n planeDistance: number\n length: number\n mode?: 'centered' | 'forward' | 'backward'\n}\n\n// ── 雕刻参数 ──\n\n/** Parameters for engraving text or an SVG onto a face. */\nexport interface EngraveParams {\n mode: 'convex' | 'concave'\n depth: number\n face: {\n center: Vec3\n normal: Vec3\n }\n text?: string\n textSize?: number\n svg?: string\n svgNaturalWidth?: number\n svgNaturalHeight?: number\n svgSize?: number\n}\n\n/** Parameters for applying a knurl texture to a face. */\nexport interface KnurlParams {\n face: {\n center: Vec3\n normal: Vec3\n }\n knurlTextureHeight: number\n knurlInvertDisplacement: boolean\n knurlRefineLength: number\n knurlScaleU: number\n knurlScaleV: number\n knurlMappingMode: number\n}\n\n// ── 查询结果 ──\n\n/** Axis-aligned bounding box in world space. */\nexport interface BoundingBox {\n min: Vec3\n max: Vec3\n}\n\n/** Description of a face on a shape: center, normal and area. */\nexport interface FaceDescriptor {\n center: Vec3\n normal: Vec3\n area: number\n}\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/mesh/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAuFH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,CAAU;IACpC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,WAAW,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,CAAA;AAC3E,CAAC;AAED,aAAa;AAEb,8DAA8D;AAC9D,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAA;AAC9B,4CAA4C;AAC5C,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAA;AACzB,4CAA4C;AAC5C,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,CAAA;AAE3B;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,CAAqB;IAC7C,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,YAAY,CAAA;IACxC,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC9D,CAAC","sourcesContent":["/**\n * mesh 类型定义 — 纯数据几何 API 的类型契约\n *\n * 设计原则(§5.1):\n * - 全部纯数据:输入输出是 ManifoldMeshData 或 JSON 值,不碰 THREE 场景、不读 store\n * - 不可变:每个 API 返回新几何,不修改输入\n * - 坐标系:右手系 +Z 向上、毫米、角度用度\n * - 坐标空间:所有 API 输入/输出均为**世界空间** ManifoldMeshData\n * (局部↔世界变换由执行器负责,mesh 不感知 mesh.matrixWorld)\n *\n * P1 阶段 Shape = ManifoldMeshData(无 worker)。\n * P3+ 阶段 Shape 将变为 worker 内 Manifold 对象的句柄。\n */\n\nimport type { PbrAppearance } from '../api/appearance'\nimport type { ShapeMeta } from '../api/meta'\n\n// ── 基础类型 ──\n\n/** 三维坐标 / RGB 颜色元组(分量 sRGB 0–1)。 */\nexport type Vec3 = [number, number, number]\n\n/**\n * A JSON-serializable value: scalar, null, array, or plain object.\n */\nexport type JsonValue =\n | string\n | number\n | boolean\n | null\n | JsonValue[]\n | { [k: string]: JsonValue }\n\n// ── Shape ──\n\n/**\n * A mesh shape — the core data type of the mesh API.\n *\n * Shape is defined directly in mesh/types.ts rather than re-exported from\n * ops/types.ts; ops/types.ts imports it from here, removing the type cycle.\n *\n * 外观(PBR):`appearance` 为可选数据字段(设计文档 2026-10-05 v2 §4.2),\n * 双链路产物自解释、可序列化;外观设置是 Shape **方法**(非 op,见\n * `api/appearance.ts` 的 `ShapeAppearanceMethods` / `attachAppearanceMethods`),\n * 方法只挂载在产物构造点(solid/curve)返回的实例上,基础 Shape 保持纯数据\n * 契约——因此本接口**不** extends 方法接口,`isMeshShape` 鸭子判定不受影响。\n */\nexport interface Shape {\n positions: Float32Array\n indices: Uint32Array\n /** Per-vertex normals (x, y, z interleaved), length = positions.length. Optional; derived via creased-normals when absent. */\n normals?: Float32Array\n /** 可选:形状级外观(mesh/brep 双链路产物自解释;worker 序列化保留字段、不保留方法)。 */\n appearance?: PbrAppearance\n /** Phase 2:面级外观分组 [三角形起始, 数量, 外观];存在时优先于 appearance 作为未分组默认。 */\n materialGroups?: Array<{ start: number; count: number; appearance: PbrAppearance }>\n /** Phase 2:顶点颜色(3MF colorgroup / 面级 mesh 链),sRGB 0–1,长度 = positions 长度。 */\n vertexColors?: Float32Array\n /**\n * 零件级说明性元数据(设计文档 2026-10-05-meta §4.3):名称/描述/料号/自定义\n * 键值,随 Shape 走 mesh/brep 双链路、JSON 可序列化。设置方法是 Shape 实例\n * 方法(非 op,见 `api/meta.ts` 的 `ShapeMetaMethods` / `attachMetaMethods`),\n * 方法只挂载在产物构造点(solid/curve)返回的实例上,基础 Shape 保持纯数据\n * 契约——因此本接口**不** extends 方法接口,`isMeshShape` 鸭子判定不受影响。\n */\n meta?: ShapeMeta\n /**\n * 装配节点位姿(方案 2026-10-08 §2.1「装配模型 = 节点属性,单一真源」):节点\n * **相对其父**的位置/姿态。可选、纯数据、JSON 可序列化——与 `appearance` /\n * `meta` 同为**字段**而非方法,随 Shape 一起过 worker 序列化与 `structuredClone`\n * (`isMeshShape` 鸭子判定不看本字段)。装配层级就是 Shape / CompoundShape\n * 自身的 `children` + 本字段,**没有**平行的装配树。\n *\n * 取值形态(三种等价书写,均为可序列化纯数据):`translate` 平移;`rotate`\n * 单一轴角(`angle` 按本文件约定用**度**,`axis` 为轴向量);`matrix` 3×4\n * 行主序 12 元组——即 3MF `<component transform>` 与 XCAF location 的直接形态。\n * 三者的复合顺序与形态间优先级由读侧实现固定(§5 第 4、5 步),本字段只定\n * 义取值形态。\n *\n * 写入方两个、写回同一字段:导入侧(XCAF location / 3MF component transform)\n * 与求解侧(`AssemblyTransform[]`)。导出侧**只读**它:STL 顶点烘焙、3MF\n * `<component transform>`、STEP XCAF location(§2.1 映射表)。分量刻度与\n * `positions` 同(基准单位),换算到声明单位由写出器成对完成(§2.1)。\n *\n * 阶段说明:本字段随 §5 第 3 步引入;写出器在 §5 第 4(3MF components)、第 5\n * (导入归一 / STL 烘焙)步之前不消费它(`export-model.test.ts` 用「带与不带\n * `transform` 的导出字节相等」钉住这一当前事实,届时翻转)。\n */\n transform?: { translate?: Vec3; rotate?: { angle: number; axis?: Vec3 }; matrix?: number[] }\n /**\n * 面结构元数据:面序号 → 三角形区间 [start, count)(start/count 为三角形索引,\n * 对应 positions/indices 焊接后的三角形序列)。仅参数化 primitives 构造时记录\n * (面结构构造时已知、三角形顺序固定);manifold 布尔/组合/导入后无 CAD 面\n * 概念,本字段不存在。`setFaceColor`/`setFaceMaterial` 依赖本字段把面序号映射\n * 到三角形区间并写入 materialGroups。\n */\n faceRanges?: Array<{ start: number; count: number }>\n}\n\n/**\n * Structural guard: returns true when the value looks like a mesh Shape\n * (duck-typed via positions/indices, with no requirements on third-party\n * types).\n *\n * Per the keep-syntax design, hosts use this guard to distinguish mesh Shapes\n * from compounds when consuming ExecutionResult.outputs, in the same style as\n * the runtime-internal isShapeLike.\n * @param v - the value to test.\n * @returns true when the value is a mesh Shape.\n */\nexport function isMeshShape(v: unknown): v is Shape {\n return !!v && typeof v === 'object' && 'positions' in v && 'indices' in v\n}\n\n// ── 创建参数 ──\n\n/** Default radial segment count used for rounded geometry. */\nexport const NRAD_DEFAULT = 64\n/** Minimum allowed radial segment count. */\nexport const NRAD_MIN = 3\n/** Maximum allowed radial segment count. */\nexport const NRAD_MAX = 128\n\n/**\n * Clamp an nRad value into the legal range [NRAD_MIN, NRAD_MAX], rounding to\n * the nearest integer; undefined falls back to NRAD_DEFAULT.\n * @param n - the requested radial segment count, or undefined.\n * @returns the clamped radial segment count.\n */\nexport function clampNRad(n: number | undefined): number {\n if (n === undefined) return NRAD_DEFAULT\n return Math.max(NRAD_MIN, Math.min(NRAD_MAX, Math.round(n)))\n}\n\n/**\n * Parameters for creating a box (原 brepjs `box(width, depth, height, {at?, centered?, segments?})`\n * contract, §4.1 A 决策). Default: min-corner at the origin. `centered: true` shifts so the\n * box is centered at the origin; `at` is CENTER semantics and takes precedence over `centered`.\n */\nexport interface BoxParams {\n /** Side length along X (mm). */\n width: number\n /** Side length along Y (mm). */\n depth: number\n /** Side length along Z (mm). */\n height: number\n /** Center position (原 brepjs `at`, CENTER semantics); takes precedence over `centered`. */\n at?: Vec3\n /** Center the box at the origin when `at` is absent. Default: false (min-corner at origin). */\n centered?: boolean\n /** Tessellation segment count (box: affects only brep/mesh tessellation, not topology). */\n segments?: number\n /** Internal historical alias for `segments` (accepted by clampNRad, §5.1). */\n nRad?: number\n}\n\n/** Parameters for creating a sphere. */\nexport interface SphereParams {\n radius: number\n segments?: number\n center?: Vec3\n nRad?: number\n}\n\n/** Parameters for creating a cylinder (原 brepjs contract, §4.3 A). */\nexport interface CylinderParams {\n /** Radius (mm). */\n radius: number\n /** Height along +Z (mm). */\n height: number\n /** Base circle center (原 brepjs `at`, BASE semantics; default [0, 0, 0]). */\n at?: Vec3\n /** Center the cylinder (base at −h/2 / center at `at`) instead of base at `at`/origin. */\n centered?: boolean\n /** Tessellation segment count (cylinder: affects only tessellation, not topology). */\n segments?: number\n /** Internal historical alias for `segments` (accepted by clampNRad, §5.1). */\n nRad?: number\n}\n\n/** Parameters for creating a cone (or a truncated cone). */\nexport interface ConeParams {\n /** Radius at the base (mm). */\n radiusBottom: number\n /** Radius at the top (mm); 0 for a pointed cone, === radiusBottom for a cylinder. */\n radiusTop: number\n /** Height along +Z (mm). */\n height: number\n /** Base circle center (原 brepjs `at`, BASE semantics; default [0, 0, 0]). */\n at?: Vec3\n /** Center the cone (base at −h/2 / center at `at`) instead of base at `at`/origin. */\n centered?: boolean\n /** Tessellation segment count (cone: affects only mere tessellation, not topology). */\n segments?: number\n /** Internal historical alias for `segments` (accepted by clampNRad, §5.1). */\n nRad?: number\n}\n\n/**\n * Parameters for creating a wedge (trapezoidal prism).\n */\nexport interface WedgeParams {\n /** Width of the base edge (mm), along the Y axis. */\n width: number\n /** Height of the trapezoid (mm), along the Z axis. */\n height: number\n /** Angle between the base edge and the slope (degrees). */\n angle: number\n /** Total extrusion length (mm), along the X axis. */\n length: number\n center?: Vec3\n nRad?: number\n}\n\n/** Parameters for creating 3D text. */\nexport interface TextParams {\n text: string\n size: number\n depth: number\n}\n\n/** Parameters for extruding an SVG into a solid. */\nexport interface SvgExtrudeParams {\n svg: string\n depth: number\n targetLongSide: number\n naturalWidth?: number\n naturalHeight?: number\n}\n\n/** Parameters for building a solid from an SDF (signed distance function). */\nexport interface SdfParams {\n code: string\n box?: [Vec3, Vec3]\n resolution?: number\n params?: Record<string, number>\n}\n\n// ── 变换参数 ──\n\n/** Parameters for translating a shape. */\nexport interface TranslateParams {\n offset: Vec3\n}\n\n/** Parameters for rotating a shape. */\nexport interface RotateParams {\n angles: Vec3\n pivot?: Vec3\n}\n\n/** Parameters for scaling a shape. */\nexport interface ScaleParams {\n factor: number | Vec3\n}\n\n// ── 布尔参数 ──\n\n/** Kinds of binary boolean operations. */\nexport type BooleanOperation = 'union' | 'subtract' | 'intersect'\n\n// ── 分割参数 ──\n\n/** A cutting plane defined by a unit normal and a signed offset. */\nexport interface SplitPlane {\n normal: Vec3\n offset: number\n}\n\n/** Parameters for a dovetail split, including the cutting plane setup. */\nexport interface DovetailSplitParams {\n plane: SplitPlane\n planeCenter: Vec3\n widthDir: Vec3\n bboxWidthOnWidthDir: number\n groove: {\n depth: number\n depthTolerance: number\n width: number\n widthTolerance: number\n flapsAngle: number\n }\n}\n\n/** Parameters for a dowel-pin split, including the cutting plane setup. */\nexport interface DowelSplitParams {\n plane: SplitPlane\n planeCenter: Vec3\n widthDir: Vec3\n dowel: {\n diameter: number\n diameterTolerance: number\n height: number\n heightTolerance: number\n }\n selectedSections?: number[] | null\n}\n\n/** Parameters for a straight-tenon split, including the cutting plane setup. */\nexport interface TenonSplitParams {\n plane: SplitPlane\n planeCenter: Vec3\n widthDir: Vec3\n tenon: {\n sideLength: number\n sideLengthTolerance: number\n height: number\n heightTolerance: number\n }\n selectedSections?: number[] | null\n}\n\n/** Result of a joinery split: the two halves plus the cut-out wedge. */\nexport interface SplitResult {\n front: Shape\n back: Shape\n wedge: Shape | null\n}\n\n// ── 钻孔参数 ──\n\n/** Parameters for drilling a hole. */\nexport interface DrillParams {\n diameter: number\n depth?: number\n type: 'through' | 'blind'\n position: Vec3\n direction: Vec3\n faceNormal: Vec3\n tolerance?: number\n holeType?: 'simple' | 'screw'\n screwSystem?: string\n screwSpecIdx?: number\n screwThread?: string\n screwHead?: string\n}\n\n// ── 拉伸参数 ──\n\n/** Parameters for extruding a face bounded by a plane. */\nexport interface ExtrudeParams {\n normal: Vec3\n planeDistance: number\n length: number\n mode?: 'centered' | 'forward' | 'backward'\n}\n\n// ── 雕刻参数 ──\n\n/** Parameters for engraving text or an SVG onto a face. */\nexport interface EngraveParams {\n mode: 'convex' | 'concave'\n depth: number\n face: {\n center: Vec3\n normal: Vec3\n }\n text?: string\n textSize?: number\n svg?: string\n svgNaturalWidth?: number\n svgNaturalHeight?: number\n svgSize?: number\n}\n\n/** Parameters for applying a knurl texture to a face. */\nexport interface KnurlParams {\n face: {\n center: Vec3\n normal: Vec3\n }\n knurlTextureHeight: number\n knurlInvertDisplacement: boolean\n knurlRefineLength: number\n knurlScaleU: number\n knurlScaleV: number\n knurlMappingMode: number\n}\n\n// ── 查询结果 ──\n\n/** Axis-aligned bounding box in world space. */\nexport interface BoundingBox {\n min: Vec3\n max: Vec3\n}\n\n/** Description of a face on a shape: center, normal and area. */\nexport interface FaceDescriptor {\n center: Vec3\n normal: Vec3\n area: number\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"occt-primitives.d.ts","sourceRoot":"","sources":["../../src/occt-kernel/occt-primitives.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,4BAA4B,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAqE5F;;;;;;GAMG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,aAAa,CAAC,CA4XnE;AAED,+DAA+D;AAC/D,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAA;AAI7E,0EAA0E;AAC1E,MAAM,MAAM,cAAc,GAAG,4BAA4B,CAAC,cAAc,CAAC,CAAA"}
1
+ {"version":3,"file":"occt-primitives.d.ts","sourceRoot":"","sources":["../../src/occt-kernel/occt-primitives.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,4BAA4B,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAqE5F;;;;;;GAMG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,aAAa,CAAC,CA8YnE;AAED,+DAA+D;AAC/D,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAA;AAI7E,0EAA0E;AAC1E,MAAM,MAAM,cAAc,GAAG,4BAA4B,CAAC,cAAc,CAAC,CAAA"}
@@ -99,6 +99,26 @@ export async function createOcctPrimitives() {
99
99
  // ── shaping ──
100
100
  extrude: (shape, dx, dy, dz) => asHandle(k.extrude(asShape(shape), dx, dy, dz)),
101
101
  revolveVec: (shape, center, direction, angleDeg) => asHandle(k.revolve(asShape(shape), { point: center, direction }, rad(angleDeg))),
102
+ // L1 中立 sweep:occt 侧 native sweepPipeShell 的 (profile, spine) 与 L1 同形,
103
+ // 只补齐两个默认开关(freenet=false / smooth=false,与旧 sweepFns 的默认路径
104
+ // 逐字节一致);brepkit 侧的 face/NURBS 适配在 brepkitKernel 内。
105
+ // ⚠️ 不用 native `simplePipe`:实测它对本用例的 8×8 方截面沿 +Z 扫 50 产出
106
+ // 体积 2133.33,而 sweepPipeShell 产出解析值 3200(`test/api/sweep-loft.test.ts`
107
+ // 的「两个 2D 面截面」用例即为该真值)——基础 sweep 必须与既有行为一致。
108
+ sweep: (profile, spine) => asHandle(k.sweepPipeShell(asShape(profile), asShape(spine), false, false)),
109
+ // L1 中立 loft:occt 原生 loft 吃 wire,只作 endPoint → loftWithVertices 的退化解。
110
+ loft: (sections, ruled, endPoint) => {
111
+ const wires = shapes(sections);
112
+ if (endPoint === undefined)
113
+ return asHandle(k.loft(wires, true, ruled));
114
+ const end = k.makeVertex(endPoint.x, endPoint.y, endPoint.z);
115
+ try {
116
+ return asHandle(k.loftWithVertices(wires, true, ruled, undefined, end));
117
+ }
118
+ finally {
119
+ k.release(end);
120
+ }
121
+ },
102
122
  sew: (list, tolerance) => asHandle(k.sew(shapes(list), tolerance)),
103
123
  sewAndSolidify: (faces, tolerance) => asHandle(k.sewAndSolidify(shapes(faces), tolerance)),
104
124
  shell: (solid, facesToRemove, thickness, tolerance) => asHandle(k.shell(asShape(solid), shapes(facesToRemove), thickness, tolerance)),