@faicad/faijs 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2103) hide show
  1. package/LICENSE +29 -0
  2. package/NOTICE +29 -0
  3. package/dist/api/api-namespace.d.ts +27 -0
  4. package/dist/api/api-namespace.d.ts.map +1 -0
  5. package/dist/api/api-namespace.js +78 -0
  6. package/dist/api/api-namespace.js.map +1 -0
  7. package/dist/api/assembly/entities.d.ts +55 -0
  8. package/dist/api/assembly/entities.d.ts.map +1 -0
  9. package/dist/api/assembly/entities.js +158 -0
  10. package/dist/api/assembly/entities.js.map +1 -0
  11. package/dist/api/assembly/golden-mate.d.ts +49 -0
  12. package/dist/api/assembly/golden-mate.d.ts.map +1 -0
  13. package/dist/api/assembly/golden-mate.js +101 -0
  14. package/dist/api/assembly/golden-mate.js.map +1 -0
  15. package/dist/api/assembly/index.d.ts +16 -0
  16. package/dist/api/assembly/index.d.ts.map +1 -0
  17. package/dist/api/assembly/index.js +16 -0
  18. package/dist/api/assembly/index.js.map +1 -0
  19. package/dist/api/assembly/joints.d.ts +208 -0
  20. package/dist/api/assembly/joints.d.ts.map +1 -0
  21. package/dist/api/assembly/joints.js +240 -0
  22. package/dist/api/assembly/joints.js.map +1 -0
  23. package/dist/api/assembly/lower.d.ts +61 -0
  24. package/dist/api/assembly/lower.d.ts.map +1 -0
  25. package/dist/api/assembly/lower.js +145 -0
  26. package/dist/api/assembly/lower.js.map +1 -0
  27. package/dist/api/assembly/normalize.d.ts +19 -0
  28. package/dist/api/assembly/normalize.d.ts.map +1 -0
  29. package/dist/api/assembly/normalize.js +32 -0
  30. package/dist/api/assembly/normalize.js.map +1 -0
  31. package/dist/api/assembly/pose.d.ts +78 -0
  32. package/dist/api/assembly/pose.d.ts.map +1 -0
  33. package/dist/api/assembly/pose.js +116 -0
  34. package/dist/api/assembly/pose.js.map +1 -0
  35. package/dist/api/assembly/preview.d.ts +55 -0
  36. package/dist/api/assembly/preview.d.ts.map +1 -0
  37. package/dist/api/assembly/preview.js +61 -0
  38. package/dist/api/assembly/preview.js.map +1 -0
  39. package/dist/api/assembly/solve.d.ts +72 -0
  40. package/dist/api/assembly/solve.d.ts.map +1 -0
  41. package/dist/api/assembly/solve.js +139 -0
  42. package/dist/api/assembly/solve.js.map +1 -0
  43. package/dist/api/assembly/solvers/global-solver.d.ts +34 -0
  44. package/dist/api/assembly/solvers/global-solver.d.ts.map +1 -0
  45. package/dist/api/assembly/solvers/global-solver.js +461 -0
  46. package/dist/api/assembly/solvers/global-solver.js.map +1 -0
  47. package/dist/api/assembly/solvers/linalg.d.ts +92 -0
  48. package/dist/api/assembly/solvers/linalg.d.ts.map +1 -0
  49. package/dist/api/assembly/solvers/linalg.js +217 -0
  50. package/dist/api/assembly/solvers/linalg.js.map +1 -0
  51. package/dist/api/assembly/solvers/pose-from-delta.d.ts +43 -0
  52. package/dist/api/assembly/solvers/pose-from-delta.d.ts.map +1 -0
  53. package/dist/api/assembly/solvers/pose-from-delta.js +61 -0
  54. package/dist/api/assembly/solvers/pose-from-delta.js.map +1 -0
  55. package/dist/api/assembly/solvers/types.d.ts +60 -0
  56. package/dist/api/assembly/solvers/types.d.ts.map +1 -0
  57. package/dist/api/assembly/solvers/types.js +11 -0
  58. package/dist/api/assembly/solvers/types.js.map +1 -0
  59. package/dist/api/assembly/types.d.ts +136 -0
  60. package/dist/api/assembly/types.d.ts.map +1 -0
  61. package/dist/api/assembly/types.js +13 -0
  62. package/dist/api/assembly/types.js.map +1 -0
  63. package/dist/api/assembly/validate.d.ts +37 -0
  64. package/dist/api/assembly/validate.d.ts.map +1 -0
  65. package/dist/api/assembly/validate.js +131 -0
  66. package/dist/api/assembly/validate.js.map +1 -0
  67. package/dist/api/assert.d.ts +54 -0
  68. package/dist/api/assert.d.ts.map +1 -0
  69. package/dist/api/assert.js +90 -0
  70. package/dist/api/assert.js.map +1 -0
  71. package/dist/api/asset.d.ts +20 -0
  72. package/dist/api/asset.d.ts.map +1 -0
  73. package/dist/api/asset.js +28 -0
  74. package/dist/api/asset.js.map +1 -0
  75. package/dist/api/boolean.d.ts +56 -0
  76. package/dist/api/boolean.d.ts.map +1 -0
  77. package/dist/api/boolean.js +151 -0
  78. package/dist/api/boolean.js.map +1 -0
  79. package/dist/api/brep-mirror/joinery-brep.d.ts +172 -0
  80. package/dist/api/brep-mirror/joinery-brep.d.ts.map +1 -0
  81. package/dist/api/brep-mirror/joinery-brep.js +461 -0
  82. package/dist/api/brep-mirror/joinery-brep.js.map +1 -0
  83. package/dist/api/brep-mirror/threadFns.d.ts +68 -0
  84. package/dist/api/brep-mirror/threadFns.d.ts.map +1 -0
  85. package/dist/api/brep-mirror/threadFns.js +103 -0
  86. package/dist/api/brep-mirror/threadFns.js.map +1 -0
  87. package/dist/api/brepjs-compat/index.d.ts +234 -0
  88. package/dist/api/brepjs-compat/index.d.ts.map +1 -0
  89. package/dist/api/brepjs-compat/index.js +289 -0
  90. package/dist/api/brepjs-compat/index.js.map +1 -0
  91. package/dist/api/chamfer-math.d.ts +46 -0
  92. package/dist/api/chamfer-math.d.ts.map +1 -0
  93. package/dist/api/chamfer-math.js +60 -0
  94. package/dist/api/chamfer-math.js.map +1 -0
  95. package/dist/api/chamfer.d.ts +63 -0
  96. package/dist/api/chamfer.d.ts.map +1 -0
  97. package/dist/api/chamfer.js +234 -0
  98. package/dist/api/chamfer.js.map +1 -0
  99. package/dist/api/compat/index.d.ts +173 -0
  100. package/dist/api/compat/index.d.ts.map +1 -0
  101. package/dist/api/compat/index.js +222 -0
  102. package/dist/api/compat/index.js.map +1 -0
  103. package/dist/api/compound.d.ts +108 -0
  104. package/dist/api/compound.d.ts.map +1 -0
  105. package/dist/api/compound.js +162 -0
  106. package/dist/api/compound.js.map +1 -0
  107. package/dist/api/copy.d.ts +39 -0
  108. package/dist/api/copy.d.ts.map +1 -0
  109. package/dist/api/copy.js +81 -0
  110. package/dist/api/copy.js.map +1 -0
  111. package/dist/api/edge-ref.d.ts +42 -0
  112. package/dist/api/edge-ref.d.ts.map +1 -0
  113. package/dist/api/edge-ref.js +89 -0
  114. package/dist/api/edge-ref.js.map +1 -0
  115. package/dist/api/engrave.d.ts +39 -0
  116. package/dist/api/engrave.d.ts.map +1 -0
  117. package/dist/api/engrave.js +215 -0
  118. package/dist/api/engrave.js.map +1 -0
  119. package/dist/api/extrude.d.ts +81 -0
  120. package/dist/api/extrude.d.ts.map +1 -0
  121. package/dist/api/extrude.js +299 -0
  122. package/dist/api/extrude.js.map +1 -0
  123. package/dist/api/face-ref.d.ts +37 -0
  124. package/dist/api/face-ref.d.ts.map +1 -0
  125. package/dist/api/face-ref.js +64 -0
  126. package/dist/api/face-ref.js.map +1 -0
  127. package/dist/api/fai_drill.d.ts +46 -0
  128. package/dist/api/fai_drill.d.ts.map +1 -0
  129. package/dist/api/fai_drill.js +230 -0
  130. package/dist/api/fai_drill.js.map +1 -0
  131. package/dist/api/fai_extrude.d.ts +36 -0
  132. package/dist/api/fai_extrude.d.ts.map +1 -0
  133. package/dist/api/fai_extrude.js +78 -0
  134. package/dist/api/fai_extrude.js.map +1 -0
  135. package/dist/api/fai_split.d.ts +46 -0
  136. package/dist/api/fai_split.d.ts.map +1 -0
  137. package/dist/api/fai_split.js +253 -0
  138. package/dist/api/fai_split.js.map +1 -0
  139. package/dist/api/fillet.d.ts +46 -0
  140. package/dist/api/fillet.d.ts.map +1 -0
  141. package/dist/api/fillet.js +127 -0
  142. package/dist/api/fillet.js.map +1 -0
  143. package/dist/api/generated/2d.d.ts +18 -0
  144. package/dist/api/generated/2d.d.ts.map +1 -0
  145. package/dist/api/generated/2d.js +2 -0
  146. package/dist/api/generated/2d.js.map +1 -0
  147. package/dist/api/generated/brepjs/index.d.ts +310 -0
  148. package/dist/api/generated/brepjs/index.d.ts.map +1 -0
  149. package/dist/api/generated/brepjs/index.js +195 -0
  150. package/dist/api/generated/brepjs/index.js.map +1 -0
  151. package/dist/api/generated/cad/script-face.d.ts +12 -0
  152. package/dist/api/generated/cad/script-face.d.ts.map +1 -0
  153. package/dist/api/generated/cad/script-face.js +147 -0
  154. package/dist/api/generated/cad/script-face.js.map +1 -0
  155. package/dist/api/generated/core.d.ts +126 -0
  156. package/dist/api/generated/core.d.ts.map +1 -0
  157. package/dist/api/generated/core.js +86 -0
  158. package/dist/api/generated/core.js.map +1 -0
  159. package/dist/api/generated/gear.d.ts +20 -0
  160. package/dist/api/generated/gear.d.ts.map +1 -0
  161. package/dist/api/generated/gear.js +4 -0
  162. package/dist/api/generated/gear.js.map +1 -0
  163. package/dist/api/generated/io.d.ts +18 -0
  164. package/dist/api/generated/io.d.ts.map +1 -0
  165. package/dist/api/generated/io.js +2 -0
  166. package/dist/api/generated/io.js.map +1 -0
  167. package/dist/api/generated/kernel.d.ts +44 -0
  168. package/dist/api/generated/kernel.d.ts.map +1 -0
  169. package/dist/api/generated/kernel.js +5 -0
  170. package/dist/api/generated/kernel.js.map +1 -0
  171. package/dist/api/generated/measurement.d.ts +132 -0
  172. package/dist/api/generated/measurement.d.ts.map +1 -0
  173. package/dist/api/generated/measurement.js +191 -0
  174. package/dist/api/generated/measurement.js.map +1 -0
  175. package/dist/api/generated/ns.d.ts +15 -0
  176. package/dist/api/generated/ns.d.ts.map +1 -0
  177. package/dist/api/generated/ns.js +15 -0
  178. package/dist/api/generated/ns.js.map +1 -0
  179. package/dist/api/generated/operations.d.ts +190 -0
  180. package/dist/api/generated/operations.d.ts.map +1 -0
  181. package/dist/api/generated/operations.js +131 -0
  182. package/dist/api/generated/operations.js.map +1 -0
  183. package/dist/api/generated/projection.d.ts +13 -0
  184. package/dist/api/generated/projection.d.ts.map +1 -0
  185. package/dist/api/generated/projection.js +5 -0
  186. package/dist/api/generated/projection.js.map +1 -0
  187. package/dist/api/generated/query.d.ts +14 -0
  188. package/dist/api/generated/query.d.ts.map +1 -0
  189. package/dist/api/generated/query.js +2 -0
  190. package/dist/api/generated/query.js.map +1 -0
  191. package/dist/api/generated/script-face-manifest.d.ts +15 -0
  192. package/dist/api/generated/script-face-manifest.d.ts.map +1 -0
  193. package/dist/api/generated/script-face-manifest.js +39 -0
  194. package/dist/api/generated/script-face-manifest.js.map +1 -0
  195. package/dist/api/generated/script-face.d.ts +100 -0
  196. package/dist/api/generated/script-face.d.ts.map +1 -0
  197. package/dist/api/generated/script-face.js +49 -0
  198. package/dist/api/generated/script-face.js.map +1 -0
  199. package/dist/api/generated/sketching.d.ts +13 -0
  200. package/dist/api/generated/sketching.d.ts.map +1 -0
  201. package/dist/api/generated/sketching.js +16 -0
  202. package/dist/api/generated/sketching.js.map +1 -0
  203. package/dist/api/generated/text.d.ts +11 -0
  204. package/dist/api/generated/text.d.ts.map +1 -0
  205. package/dist/api/generated/text.js +4 -0
  206. package/dist/api/generated/text.js.map +1 -0
  207. package/dist/api/generated/topology.d.ts +353 -0
  208. package/dist/api/generated/topology.d.ts.map +1 -0
  209. package/dist/api/generated/topology.js +253 -0
  210. package/dist/api/generated/topology.js.map +1 -0
  211. package/dist/api/generated/view.d.ts +9 -0
  212. package/dist/api/generated/view.d.ts.map +1 -0
  213. package/dist/api/generated/view.js +9 -0
  214. package/dist/api/generated/view.js.map +1 -0
  215. package/dist/api/geom.d.ts +66 -0
  216. package/dist/api/geom.d.ts.map +1 -0
  217. package/dist/api/geom.js +122 -0
  218. package/dist/api/geom.js.map +1 -0
  219. package/dist/api/index.d.ts +47 -0
  220. package/dist/api/index.d.ts.map +1 -0
  221. package/dist/api/index.js +70 -0
  222. package/dist/api/index.js.map +1 -0
  223. package/dist/api/internal/compat-op.d.ts +88 -0
  224. package/dist/api/internal/compat-op.d.ts.map +1 -0
  225. package/dist/api/internal/compat-op.js +176 -0
  226. package/dist/api/internal/compat-op.js.map +1 -0
  227. package/dist/api/internal/compat-projection.d.ts +53 -0
  228. package/dist/api/internal/compat-projection.d.ts.map +1 -0
  229. package/dist/api/internal/compat-projection.js +72 -0
  230. package/dist/api/internal/compat-projection.js.map +1 -0
  231. package/dist/api/internal/dual-form-args.d.ts +143 -0
  232. package/dist/api/internal/dual-form-args.d.ts.map +1 -0
  233. package/dist/api/internal/dual-form-args.js +217 -0
  234. package/dist/api/internal/dual-form-args.js.map +1 -0
  235. package/dist/api/internal/l3-bridge.d.ts +94 -0
  236. package/dist/api/internal/l3-bridge.d.ts.map +1 -0
  237. package/dist/api/internal/l3-bridge.js +143 -0
  238. package/dist/api/internal/l3-bridge.js.map +1 -0
  239. package/dist/api/internal/result-unwrap.d.ts +101 -0
  240. package/dist/api/internal/result-unwrap.d.ts.map +1 -0
  241. package/dist/api/internal/result-unwrap.js +119 -0
  242. package/dist/api/internal/result-unwrap.js.map +1 -0
  243. package/dist/api/internal/svg-asset-resolver.d.ts +22 -0
  244. package/dist/api/internal/svg-asset-resolver.d.ts.map +1 -0
  245. package/dist/api/internal/svg-asset-resolver.js +45 -0
  246. package/dist/api/internal/svg-asset-resolver.js.map +1 -0
  247. package/dist/api/knurl.d.ts +38 -0
  248. package/dist/api/knurl.d.ts.map +1 -0
  249. package/dist/api/knurl.js +62 -0
  250. package/dist/api/knurl.js.map +1 -0
  251. package/dist/api/load.d.ts +39 -0
  252. package/dist/api/load.d.ts.map +1 -0
  253. package/dist/api/load.js +82 -0
  254. package/dist/api/load.js.map +1 -0
  255. package/dist/api/occt-kernel-bridge.d.ts +43 -0
  256. package/dist/api/occt-kernel-bridge.d.ts.map +1 -0
  257. package/dist/api/occt-kernel-bridge.js +59 -0
  258. package/dist/api/occt-kernel-bridge.js.map +1 -0
  259. package/dist/api/primitives.d.ts +161 -0
  260. package/dist/api/primitives.d.ts.map +1 -0
  261. package/dist/api/primitives.js +296 -0
  262. package/dist/api/primitives.js.map +1 -0
  263. package/dist/api/reconcile.d.ts +28 -0
  264. package/dist/api/reconcile.d.ts.map +1 -0
  265. package/dist/api/reconcile.js +45 -0
  266. package/dist/api/reconcile.js.map +1 -0
  267. package/dist/api/result.d.ts +15 -0
  268. package/dist/api/result.d.ts.map +1 -0
  269. package/dist/api/result.js +15 -0
  270. package/dist/api/result.js.map +1 -0
  271. package/dist/api/screw.d.ts +38 -0
  272. package/dist/api/screw.d.ts.map +1 -0
  273. package/dist/api/screw.js +160 -0
  274. package/dist/api/screw.js.map +1 -0
  275. package/dist/api/sdf.d.ts +32 -0
  276. package/dist/api/sdf.d.ts.map +1 -0
  277. package/dist/api/sdf.js +46 -0
  278. package/dist/api/sdf.js.map +1 -0
  279. package/dist/api/sketch.d.ts +73 -0
  280. package/dist/api/sketch.d.ts.map +1 -0
  281. package/dist/api/sketch.js +149 -0
  282. package/dist/api/sketch.js.map +1 -0
  283. package/dist/api/surface/arg-spec.d.ts +111 -0
  284. package/dist/api/surface/arg-spec.d.ts.map +1 -0
  285. package/dist/api/surface/arg-spec.js +3535 -0
  286. package/dist/api/surface/arg-spec.js.map +1 -0
  287. package/dist/api/surface/projection-overrides.d.ts +38 -0
  288. package/dist/api/surface/projection-overrides.d.ts.map +1 -0
  289. package/dist/api/surface/projection-overrides.js +163 -0
  290. package/dist/api/surface/projection-overrides.js.map +1 -0
  291. package/dist/api/svgExtrude.d.ts +32 -0
  292. package/dist/api/svgExtrude.d.ts.map +1 -0
  293. package/dist/api/svgExtrude.js +73 -0
  294. package/dist/api/svgExtrude.js.map +1 -0
  295. package/dist/api/text.d.ts +34 -0
  296. package/dist/api/text.d.ts.map +1 -0
  297. package/dist/api/text.js +100 -0
  298. package/dist/api/text.js.map +1 -0
  299. package/dist/api/topo-resolve.d.ts +89 -0
  300. package/dist/api/topo-resolve.d.ts.map +1 -0
  301. package/dist/api/topo-resolve.js +195 -0
  302. package/dist/api/topo-resolve.js.map +1 -0
  303. package/dist/api/transform.d.ts +108 -0
  304. package/dist/api/transform.d.ts.map +1 -0
  305. package/dist/api/transform.js +229 -0
  306. package/dist/api/transform.js.map +1 -0
  307. package/dist/api/view/index.d.ts +16 -0
  308. package/dist/api/view/index.d.ts.map +1 -0
  309. package/dist/api/view/index.js +16 -0
  310. package/dist/api/view/index.js.map +1 -0
  311. package/dist/api/view/view-camera.d.ts +53 -0
  312. package/dist/api/view/view-camera.d.ts.map +1 -0
  313. package/dist/api/view/view-camera.js +51 -0
  314. package/dist/api/view/view-camera.js.map +1 -0
  315. package/dist/api/view/view-projection.d.ts +80 -0
  316. package/dist/api/view/view-projection.d.ts.map +1 -0
  317. package/dist/api/view/view-projection.js +128 -0
  318. package/dist/api/view/view-projection.js.map +1 -0
  319. package/dist/api/view/view-sheet.d.ts +56 -0
  320. package/dist/api/view/view-sheet.d.ts.map +1 -0
  321. package/dist/api/view/view-sheet.js +91 -0
  322. package/dist/api/view/view-sheet.js.map +1 -0
  323. package/dist/boolean/cross-section.d.ts +64 -0
  324. package/dist/boolean/cross-section.d.ts.map +1 -0
  325. package/dist/boolean/cross-section.js +301 -0
  326. package/dist/boolean/cross-section.js.map +1 -0
  327. package/dist/boolean/csg-backend.d.ts +94 -0
  328. package/dist/boolean/csg-backend.d.ts.map +1 -0
  329. package/dist/boolean/csg-backend.js +137 -0
  330. package/dist/boolean/csg-backend.js.map +1 -0
  331. package/dist/boolean/csg-core.d.ts +207 -0
  332. package/dist/boolean/csg-core.d.ts.map +1 -0
  333. package/dist/boolean/csg-core.js +576 -0
  334. package/dist/boolean/csg-core.js.map +1 -0
  335. package/dist/boolean/deriveNormals.d.ts +21 -0
  336. package/dist/boolean/deriveNormals.d.ts.map +1 -0
  337. package/dist/boolean/deriveNormals.js +24 -0
  338. package/dist/boolean/deriveNormals.js.map +1 -0
  339. package/dist/boolean/dovetail-math.d.ts +56 -0
  340. package/dist/boolean/dovetail-math.d.ts.map +1 -0
  341. package/dist/boolean/dovetail-math.js +85 -0
  342. package/dist/boolean/dovetail-math.js.map +1 -0
  343. package/dist/boolean/extrude-helpers.d.ts +88 -0
  344. package/dist/boolean/extrude-helpers.d.ts.map +1 -0
  345. package/dist/boolean/extrude-helpers.js +134 -0
  346. package/dist/boolean/extrude-helpers.js.map +1 -0
  347. package/dist/boolean/geo-convert.d.ts +52 -0
  348. package/dist/boolean/geo-convert.d.ts.map +1 -0
  349. package/dist/boolean/geo-convert.js +94 -0
  350. package/dist/boolean/geo-convert.js.map +1 -0
  351. package/dist/boolean/joinery-shapes.d.ts +76 -0
  352. package/dist/boolean/joinery-shapes.d.ts.map +1 -0
  353. package/dist/boolean/joinery-shapes.js +205 -0
  354. package/dist/boolean/joinery-shapes.js.map +1 -0
  355. package/dist/boolean/manifold-preview.d.ts +26 -0
  356. package/dist/boolean/manifold-preview.d.ts.map +1 -0
  357. package/dist/boolean/manifold-preview.js +48 -0
  358. package/dist/boolean/manifold-preview.js.map +1 -0
  359. package/dist/brep/brep-chain.d.ts +115 -0
  360. package/dist/brep/brep-chain.d.ts.map +1 -0
  361. package/dist/brep/brep-chain.js +99 -0
  362. package/dist/brep/brep-chain.js.map +1 -0
  363. package/dist/brep/brep-ops.d.ts +251 -0
  364. package/dist/brep/brep-ops.d.ts.map +1 -0
  365. package/dist/brep/brep-ops.js +545 -0
  366. package/dist/brep/brep-ops.js.map +1 -0
  367. package/dist/brep/brep-topology.d.ts +63 -0
  368. package/dist/brep/brep-topology.d.ts.map +1 -0
  369. package/dist/brep/brep-topology.js +86 -0
  370. package/dist/brep/brep-topology.js.map +1 -0
  371. package/dist/brep/brep-utils.d.ts +25 -0
  372. package/dist/brep/brep-utils.d.ts.map +1 -0
  373. package/dist/brep/brep-utils.js +42 -0
  374. package/dist/brep/brep-utils.js.map +1 -0
  375. package/dist/brep/engine/adapters/brep-mock.d.ts +24 -0
  376. package/dist/brep/engine/adapters/brep-mock.d.ts.map +1 -0
  377. package/dist/brep/engine/adapters/brep-mock.js +303 -0
  378. package/dist/brep/engine/adapters/brep-mock.js.map +1 -0
  379. package/dist/brep/engine/adapters/brepkit.d.ts +25 -0
  380. package/dist/brep/engine/adapters/brepkit.d.ts.map +1 -0
  381. package/dist/brep/engine/adapters/brepkit.js +51 -0
  382. package/dist/brep/engine/adapters/brepkit.js.map +1 -0
  383. package/dist/brep/engine/adapters/occt.d.ts +31 -0
  384. package/dist/brep/engine/adapters/occt.d.ts.map +1 -0
  385. package/dist/brep/engine/adapters/occt.js +61 -0
  386. package/dist/brep/engine/adapters/occt.js.map +1 -0
  387. package/dist/brep/engine/primitives.d.ts +136 -0
  388. package/dist/brep/engine/primitives.d.ts.map +1 -0
  389. package/dist/brep/engine/primitives.js +13 -0
  390. package/dist/brep/engine/primitives.js.map +1 -0
  391. package/dist/brep/engine/registry.d.ts +88 -0
  392. package/dist/brep/engine/registry.d.ts.map +1 -0
  393. package/dist/brep/engine/registry.js +139 -0
  394. package/dist/brep/engine/registry.js.map +1 -0
  395. package/dist/brep/engine/types.d.ts +157 -0
  396. package/dist/brep/engine/types.d.ts.map +1 -0
  397. package/dist/brep/engine/types.js +11 -0
  398. package/dist/brep/engine/types.js.map +1 -0
  399. package/dist/brep/export/step.d.ts +48 -0
  400. package/dist/brep/export/step.d.ts.map +1 -0
  401. package/dist/brep/export/step.js +118 -0
  402. package/dist/brep/export/step.js.map +1 -0
  403. package/dist/brep/export/stl.d.ts +27 -0
  404. package/dist/brep/export/stl.d.ts.map +1 -0
  405. package/dist/brep/export/stl.js +93 -0
  406. package/dist/brep/export/stl.js.map +1 -0
  407. package/dist/brep/face-evolution.d.ts +244 -0
  408. package/dist/brep/face-evolution.d.ts.map +1 -0
  409. package/dist/brep/face-evolution.js +408 -0
  410. package/dist/brep/face-evolution.js.map +1 -0
  411. package/dist/brep/handle-bridge.d.ts +59 -0
  412. package/dist/brep/handle-bridge.d.ts.map +1 -0
  413. package/dist/brep/handle-bridge.js +91 -0
  414. package/dist/brep/handle-bridge.js.map +1 -0
  415. package/dist/brep/index.d.ts +15 -0
  416. package/dist/brep/index.d.ts.map +1 -0
  417. package/dist/brep/index.js +20 -0
  418. package/dist/brep/index.js.map +1 -0
  419. package/dist/brep/primitives-brep.d.ts +52 -0
  420. package/dist/brep/primitives-brep.d.ts.map +1 -0
  421. package/dist/brep/primitives-brep.js +108 -0
  422. package/dist/brep/primitives-brep.js.map +1 -0
  423. package/dist/brep/svg/svg-to-solid.d.ts +111 -0
  424. package/dist/brep/svg/svg-to-solid.d.ts.map +1 -0
  425. package/dist/brep/svg/svg-to-solid.js +843 -0
  426. package/dist/brep/svg/svg-to-solid.js.map +1 -0
  427. package/dist/brep/text/fontRegistry.d.ts +71 -0
  428. package/dist/brep/text/fontRegistry.d.ts.map +1 -0
  429. package/dist/brep/text/fontRegistry.js +100 -0
  430. package/dist/brep/text/fontRegistry.js.map +1 -0
  431. package/dist/brep/text/fontTestHelper.d.ts +30 -0
  432. package/dist/brep/text/fontTestHelper.d.ts.map +1 -0
  433. package/dist/brep/text/fontTestHelper.js +57 -0
  434. package/dist/brep/text/fontTestHelper.js.map +1 -0
  435. package/dist/brep/text/text-to-solid.d.ts +48 -0
  436. package/dist/brep/text/text-to-solid.d.ts.map +1 -0
  437. package/dist/brep/text/text-to-solid.js +218 -0
  438. package/dist/brep/text/text-to-solid.js.map +1 -0
  439. package/dist/brepjs-compat.d.ts +20 -0
  440. package/dist/brepjs-compat.d.ts.map +1 -0
  441. package/dist/brepjs-compat.js +20 -0
  442. package/dist/brepjs-compat.js.map +1 -0
  443. package/dist/brepkit-kernel/brepkitKernel.d.ts +29 -0
  444. package/dist/brepkit-kernel/brepkitKernel.d.ts.map +1 -0
  445. package/dist/brepkit-kernel/brepkitKernel.js +571 -0
  446. package/dist/brepkit-kernel/brepkitKernel.js.map +1 -0
  447. package/dist/brepkit-kernel/brepkitWasm.d.ts +25 -0
  448. package/dist/brepkit-kernel/brepkitWasm.d.ts.map +1 -0
  449. package/dist/brepkit-kernel/brepkitWasm.js +51 -0
  450. package/dist/brepkit-kernel/brepkitWasm.js.map +1 -0
  451. package/dist/browser-host/browser-event-sink.d.ts +31 -0
  452. package/dist/browser-host/browser-event-sink.d.ts.map +1 -0
  453. package/dist/browser-host/browser-event-sink.js +35 -0
  454. package/dist/browser-host/browser-event-sink.js.map +1 -0
  455. package/dist/browser-host/browser-font-provider.d.ts +47 -0
  456. package/dist/browser-host/browser-font-provider.d.ts.map +1 -0
  457. package/dist/browser-host/browser-font-provider.js +69 -0
  458. package/dist/browser-host/browser-font-provider.js.map +1 -0
  459. package/dist/browser-host/csg-worker-protocol.d.ts +102 -0
  460. package/dist/browser-host/csg-worker-protocol.d.ts.map +1 -0
  461. package/dist/browser-host/csg-worker-protocol.js +8 -0
  462. package/dist/browser-host/csg-worker-protocol.js.map +1 -0
  463. package/dist/browser-host/csg-worker.d.ts +13 -0
  464. package/dist/browser-host/csg-worker.d.ts.map +1 -0
  465. package/dist/browser-host/csg-worker.js +98 -0
  466. package/dist/browser-host/csg-worker.js.map +1 -0
  467. package/dist/browser-host/fetch-asset-resolver.d.ts +45 -0
  468. package/dist/browser-host/fetch-asset-resolver.d.ts.map +1 -0
  469. package/dist/browser-host/fetch-asset-resolver.js +63 -0
  470. package/dist/browser-host/fetch-asset-resolver.js.map +1 -0
  471. package/dist/browser-host/index.d.ts +76 -0
  472. package/dist/browser-host/index.d.ts.map +1 -0
  473. package/dist/browser-host/index.js +95 -0
  474. package/dist/browser-host/index.js.map +1 -0
  475. package/dist/browser-host/inline-csg-backend.d.ts +56 -0
  476. package/dist/browser-host/inline-csg-backend.d.ts.map +1 -0
  477. package/dist/browser-host/inline-csg-backend.js +110 -0
  478. package/dist/browser-host/inline-csg-backend.js.map +1 -0
  479. package/dist/browser-host/inline-sdf-backend.d.ts +23 -0
  480. package/dist/browser-host/inline-sdf-backend.d.ts.map +1 -0
  481. package/dist/browser-host/inline-sdf-backend.js +28 -0
  482. package/dist/browser-host/inline-sdf-backend.js.map +1 -0
  483. package/dist/browser-host/sdf-worker-protocol.d.ts +41 -0
  484. package/dist/browser-host/sdf-worker-protocol.d.ts.map +1 -0
  485. package/dist/browser-host/sdf-worker-protocol.js +5 -0
  486. package/dist/browser-host/sdf-worker-protocol.js.map +1 -0
  487. package/dist/browser-host/sdf-worker.d.ts +12 -0
  488. package/dist/browser-host/sdf-worker.d.ts.map +1 -0
  489. package/dist/browser-host/sdf-worker.js +39 -0
  490. package/dist/browser-host/sdf-worker.js.map +1 -0
  491. package/dist/browser-host/worker-csg-backend.d.ts +63 -0
  492. package/dist/browser-host/worker-csg-backend.d.ts.map +1 -0
  493. package/dist/browser-host/worker-csg-backend.js +92 -0
  494. package/dist/browser-host/worker-csg-backend.js.map +1 -0
  495. package/dist/browser-host/worker-sdf-backend.d.ts +26 -0
  496. package/dist/browser-host/worker-sdf-backend.d.ts.map +1 -0
  497. package/dist/browser-host/worker-sdf-backend.js +66 -0
  498. package/dist/browser-host/worker-sdf-backend.js.map +1 -0
  499. package/dist/browser.d.ts +136 -0
  500. package/dist/browser.d.ts.map +1 -0
  501. package/dist/browser.js +119 -0
  502. package/dist/browser.js.map +1 -0
  503. package/dist/cad-runtime/admit-compat-lib.d.ts +29 -0
  504. package/dist/cad-runtime/admit-compat-lib.d.ts.map +1 -0
  505. package/dist/cad-runtime/admit-compat-lib.js +49 -0
  506. package/dist/cad-runtime/admit-compat-lib.js.map +1 -0
  507. package/dist/cad-runtime/backend-dispatch.d.ts +58 -0
  508. package/dist/cad-runtime/backend-dispatch.d.ts.map +1 -0
  509. package/dist/cad-runtime/backend-dispatch.js +87 -0
  510. package/dist/cad-runtime/backend-dispatch.js.map +1 -0
  511. package/dist/cad-runtime/browser-lib-loader.d.ts +76 -0
  512. package/dist/cad-runtime/browser-lib-loader.d.ts.map +1 -0
  513. package/dist/cad-runtime/browser-lib-loader.js +113 -0
  514. package/dist/cad-runtime/browser-lib-loader.js.map +1 -0
  515. package/dist/cad-runtime/content-key.d.ts +30 -0
  516. package/dist/cad-runtime/content-key.d.ts.map +1 -0
  517. package/dist/cad-runtime/content-key.js +134 -0
  518. package/dist/cad-runtime/content-key.js.map +1 -0
  519. package/dist/cad-runtime/createRuntimeWithCad.d.ts +22 -0
  520. package/dist/cad-runtime/createRuntimeWithCad.d.ts.map +1 -0
  521. package/dist/cad-runtime/createRuntimeWithCad.js +29 -0
  522. package/dist/cad-runtime/createRuntimeWithCad.js.map +1 -0
  523. package/dist/cad-runtime/direct-executor.d.ts +404 -0
  524. package/dist/cad-runtime/direct-executor.d.ts.map +1 -0
  525. package/dist/cad-runtime/direct-executor.js +1180 -0
  526. package/dist/cad-runtime/direct-executor.js.map +1 -0
  527. package/dist/cad-runtime/exec-backend.d.ts +62 -0
  528. package/dist/cad-runtime/exec-backend.d.ts.map +1 -0
  529. package/dist/cad-runtime/exec-backend.js +18 -0
  530. package/dist/cad-runtime/exec-backend.js.map +1 -0
  531. package/dist/cad-runtime/exec-backends/interp-backend.d.ts +36 -0
  532. package/dist/cad-runtime/exec-backends/interp-backend.d.ts.map +1 -0
  533. package/dist/cad-runtime/exec-backends/interp-backend.js +91 -0
  534. package/dist/cad-runtime/exec-backends/interp-backend.js.map +1 -0
  535. package/dist/cad-runtime/exec-backends/vm-backend.d.ts +19 -0
  536. package/dist/cad-runtime/exec-backends/vm-backend.d.ts.map +1 -0
  537. package/dist/cad-runtime/exec-backends/vm-backend.js +16 -0
  538. package/dist/cad-runtime/exec-backends/vm-backend.js.map +1 -0
  539. package/dist/cad-runtime/execution-limit-error.d.ts +13 -0
  540. package/dist/cad-runtime/execution-limit-error.d.ts.map +1 -0
  541. package/dist/cad-runtime/execution-limit-error.js +16 -0
  542. package/dist/cad-runtime/execution-limit-error.js.map +1 -0
  543. package/dist/cad-runtime/index.d.ts +10 -0
  544. package/dist/cad-runtime/index.d.ts.map +1 -0
  545. package/dist/cad-runtime/index.js +7 -0
  546. package/dist/cad-runtime/index.js.map +1 -0
  547. package/dist/cad-runtime/interp/closure.d.ts +39 -0
  548. package/dist/cad-runtime/interp/closure.d.ts.map +1 -0
  549. package/dist/cad-runtime/interp/closure.js +66 -0
  550. package/dist/cad-runtime/interp/closure.js.map +1 -0
  551. package/dist/cad-runtime/interp/env.d.ts +79 -0
  552. package/dist/cad-runtime/interp/env.d.ts.map +1 -0
  553. package/dist/cad-runtime/interp/env.js +76 -0
  554. package/dist/cad-runtime/interp/env.js.map +1 -0
  555. package/dist/cad-runtime/interp/eval-expr.d.ts +23 -0
  556. package/dist/cad-runtime/interp/eval-expr.d.ts.map +1 -0
  557. package/dist/cad-runtime/interp/eval-expr.js +232 -0
  558. package/dist/cad-runtime/interp/eval-expr.js.map +1 -0
  559. package/dist/cad-runtime/interp/exec-stmt.d.ts +34 -0
  560. package/dist/cad-runtime/interp/exec-stmt.d.ts.map +1 -0
  561. package/dist/cad-runtime/interp/exec-stmt.js +276 -0
  562. package/dist/cad-runtime/interp/exec-stmt.js.map +1 -0
  563. package/dist/cad-runtime/interp/signals.d.ts +31 -0
  564. package/dist/cad-runtime/interp/signals.d.ts.map +1 -0
  565. package/dist/cad-runtime/interp/signals.js +45 -0
  566. package/dist/cad-runtime/interp/signals.js.map +1 -0
  567. package/dist/cad-runtime/lib-id.d.ts +30 -0
  568. package/dist/cad-runtime/lib-id.d.ts.map +1 -0
  569. package/dist/cad-runtime/lib-id.js +94 -0
  570. package/dist/cad-runtime/lib-id.js.map +1 -0
  571. package/dist/cad-runtime/live-shapes.d.ts +94 -0
  572. package/dist/cad-runtime/live-shapes.d.ts.map +1 -0
  573. package/dist/cad-runtime/live-shapes.js +258 -0
  574. package/dist/cad-runtime/live-shapes.js.map +1 -0
  575. package/dist/cad-runtime/module-executor.d.ts +271 -0
  576. package/dist/cad-runtime/module-executor.d.ts.map +1 -0
  577. package/dist/cad-runtime/module-executor.js +630 -0
  578. package/dist/cad-runtime/module-executor.js.map +1 -0
  579. package/dist/cad-runtime/module-registry.d.ts +114 -0
  580. package/dist/cad-runtime/module-registry.d.ts.map +1 -0
  581. package/dist/cad-runtime/module-registry.js +218 -0
  582. package/dist/cad-runtime/module-registry.js.map +1 -0
  583. package/dist/cad-runtime/ports.d.ts +213 -0
  584. package/dist/cad-runtime/ports.d.ts.map +1 -0
  585. package/dist/cad-runtime/ports.js +13 -0
  586. package/dist/cad-runtime/ports.js.map +1 -0
  587. package/dist/cad-runtime/preview-exec.d.ts +50 -0
  588. package/dist/cad-runtime/preview-exec.d.ts.map +1 -0
  589. package/dist/cad-runtime/preview-exec.js +61 -0
  590. package/dist/cad-runtime/preview-exec.js.map +1 -0
  591. package/dist/cad-runtime/runtime.d.ts +575 -0
  592. package/dist/cad-runtime/runtime.d.ts.map +1 -0
  593. package/dist/cad-runtime/runtime.js +1229 -0
  594. package/dist/cad-runtime/runtime.js.map +1 -0
  595. package/dist/cad-runtime/terminal-dag.d.ts +65 -0
  596. package/dist/cad-runtime/terminal-dag.d.ts.map +1 -0
  597. package/dist/cad-runtime/terminal-dag.js +167 -0
  598. package/dist/cad-runtime/terminal-dag.js.map +1 -0
  599. package/dist/csg.d.ts +16 -0
  600. package/dist/csg.d.ts.map +1 -0
  601. package/dist/csg.js +13 -0
  602. package/dist/csg.js.map +1 -0
  603. package/dist/define-op.d.ts +163 -0
  604. package/dist/define-op.d.ts.map +1 -0
  605. package/dist/define-op.js +268 -0
  606. package/dist/define-op.js.map +1 -0
  607. package/dist/faqts/browser.d.ts +16 -0
  608. package/dist/faqts/browser.d.ts.map +1 -0
  609. package/dist/faqts/browser.js +13 -0
  610. package/dist/faqts/browser.js.map +1 -0
  611. package/dist/faqts/exec-blob.d.ts +14 -0
  612. package/dist/faqts/exec-blob.d.ts.map +1 -0
  613. package/dist/faqts/exec-blob.js +22 -0
  614. package/dist/faqts/exec-blob.js.map +1 -0
  615. package/dist/faqts/exec-node.d.ts +15 -0
  616. package/dist/faqts/exec-node.d.ts.map +1 -0
  617. package/dist/faqts/exec-node.js +29 -0
  618. package/dist/faqts/exec-node.js.map +1 -0
  619. package/dist/faqts/imports.d.ts +74 -0
  620. package/dist/faqts/imports.d.ts.map +1 -0
  621. package/dist/faqts/imports.js +95 -0
  622. package/dist/faqts/imports.js.map +1 -0
  623. package/dist/faqts/index.d.ts +22 -0
  624. package/dist/faqts/index.d.ts.map +1 -0
  625. package/dist/faqts/index.js +21 -0
  626. package/dist/faqts/index.js.map +1 -0
  627. package/dist/faqts/node.d.ts +23 -0
  628. package/dist/faqts/node.d.ts.map +1 -0
  629. package/dist/faqts/node.js +23 -0
  630. package/dist/faqts/node.js.map +1 -0
  631. package/dist/faqts/run.d.ts +62 -0
  632. package/dist/faqts/run.d.ts.map +1 -0
  633. package/dist/faqts/run.js +62 -0
  634. package/dist/faqts/run.js.map +1 -0
  635. package/dist/faqts/transform.d.ts +43 -0
  636. package/dist/faqts/transform.d.ts.map +1 -0
  637. package/dist/faqts/transform.js +35 -0
  638. package/dist/faqts/transform.js.map +1 -0
  639. package/dist/fcstd/build-fai-zip.d.ts +29 -0
  640. package/dist/fcstd/build-fai-zip.d.ts.map +1 -0
  641. package/dist/fcstd/build-fai-zip.js +98 -0
  642. package/dist/fcstd/build-fai-zip.js.map +1 -0
  643. package/dist/fcstd/codegen.d.ts +57 -0
  644. package/dist/fcstd/codegen.d.ts.map +1 -0
  645. package/dist/fcstd/codegen.js +487 -0
  646. package/dist/fcstd/codegen.js.map +1 -0
  647. package/dist/fcstd/container.d.ts +60 -0
  648. package/dist/fcstd/container.d.ts.map +1 -0
  649. package/dist/fcstd/container.js +25 -0
  650. package/dist/fcstd/container.js.map +1 -0
  651. package/dist/fcstd/contour.d.ts +35 -0
  652. package/dist/fcstd/contour.d.ts.map +1 -0
  653. package/dist/fcstd/contour.js +86 -0
  654. package/dist/fcstd/contour.js.map +1 -0
  655. package/dist/fcstd/convert.d.ts +34 -0
  656. package/dist/fcstd/convert.d.ts.map +1 -0
  657. package/dist/fcstd/convert.js +223 -0
  658. package/dist/fcstd/convert.js.map +1 -0
  659. package/dist/fcstd/document.d.ts +41 -0
  660. package/dist/fcstd/document.d.ts.map +1 -0
  661. package/dist/fcstd/document.js +137 -0
  662. package/dist/fcstd/document.js.map +1 -0
  663. package/dist/fcstd/expressions.d.ts +37 -0
  664. package/dist/fcstd/expressions.d.ts.map +1 -0
  665. package/dist/fcstd/expressions.js +56 -0
  666. package/dist/fcstd/expressions.js.map +1 -0
  667. package/dist/fcstd/external-geo.d.ts +24 -0
  668. package/dist/fcstd/external-geo.d.ts.map +1 -0
  669. package/dist/fcstd/external-geo.js +119 -0
  670. package/dist/fcstd/external-geo.js.map +1 -0
  671. package/dist/fcstd/feature-translate.d.ts +107 -0
  672. package/dist/fcstd/feature-translate.d.ts.map +1 -0
  673. package/dist/fcstd/feature-translate.js +774 -0
  674. package/dist/fcstd/feature-translate.js.map +1 -0
  675. package/dist/fcstd/placement.d.ts +50 -0
  676. package/dist/fcstd/placement.d.ts.map +1 -0
  677. package/dist/fcstd/placement.js +77 -0
  678. package/dist/fcstd/placement.js.map +1 -0
  679. package/dist/fcstd/planegcs-backend.d.ts +19 -0
  680. package/dist/fcstd/planegcs-backend.d.ts.map +1 -0
  681. package/dist/fcstd/planegcs-backend.js +611 -0
  682. package/dist/fcstd/planegcs-backend.js.map +1 -0
  683. package/dist/fcstd/sketch-parse.d.ts +138 -0
  684. package/dist/fcstd/sketch-parse.d.ts.map +1 -0
  685. package/dist/fcstd/sketch-parse.js +201 -0
  686. package/dist/fcstd/sketch-parse.js.map +1 -0
  687. package/dist/fcstd/sketch-solver.d.ts +45 -0
  688. package/dist/fcstd/sketch-solver.d.ts.map +1 -0
  689. package/dist/fcstd/sketch-solver.js +23 -0
  690. package/dist/fcstd/sketch-solver.js.map +1 -0
  691. package/dist/fcstd/sketch-verify.d.ts +25 -0
  692. package/dist/fcstd/sketch-verify.d.ts.map +1 -0
  693. package/dist/fcstd/sketch-verify.js +49 -0
  694. package/dist/fcstd/sketch-verify.js.map +1 -0
  695. package/dist/fcstd/unpack.d.ts +25 -0
  696. package/dist/fcstd/unpack.d.ts.map +1 -0
  697. package/dist/fcstd/unpack.js +55 -0
  698. package/dist/fcstd/unpack.js.map +1 -0
  699. package/dist/identity.d.ts +229 -0
  700. package/dist/identity.d.ts.map +1 -0
  701. package/dist/identity.js +229 -0
  702. package/dist/identity.js.map +1 -0
  703. package/dist/index.d.ts +125 -0
  704. package/dist/index.d.ts.map +1 -0
  705. package/dist/index.js +121 -0
  706. package/dist/index.js.map +1 -0
  707. package/dist/lang/allocate-id.d.ts +69 -0
  708. package/dist/lang/allocate-id.d.ts.map +1 -0
  709. package/dist/lang/allocate-id.js +82 -0
  710. package/dist/lang/allocate-id.js.map +1 -0
  711. package/dist/lang/code-to-args.d.ts +58 -0
  712. package/dist/lang/code-to-args.d.ts.map +1 -0
  713. package/dist/lang/code-to-args.js +124 -0
  714. package/dist/lang/code-to-args.js.map +1 -0
  715. package/dist/lang/codegen.d.ts +72 -0
  716. package/dist/lang/codegen.d.ts.map +1 -0
  717. package/dist/lang/codegen.js +148 -0
  718. package/dist/lang/codegen.js.map +1 -0
  719. package/dist/lang/compile.d.ts +50 -0
  720. package/dist/lang/compile.d.ts.map +1 -0
  721. package/dist/lang/compile.js +368 -0
  722. package/dist/lang/compile.js.map +1 -0
  723. package/dist/lang/expr-validate.d.ts +41 -0
  724. package/dist/lang/expr-validate.d.ts.map +1 -0
  725. package/dist/lang/expr-validate.js +96 -0
  726. package/dist/lang/expr-validate.js.map +1 -0
  727. package/dist/lang/fnv-hash.d.ts +13 -0
  728. package/dist/lang/fnv-hash.d.ts.map +1 -0
  729. package/dist/lang/fnv-hash.js +20 -0
  730. package/dist/lang/fnv-hash.js.map +1 -0
  731. package/dist/lang/host-arg.d.ts +154 -0
  732. package/dist/lang/host-arg.d.ts.map +1 -0
  733. package/dist/lang/host-arg.js +216 -0
  734. package/dist/lang/host-arg.js.map +1 -0
  735. package/dist/lang/keep.d.ts +109 -0
  736. package/dist/lang/keep.d.ts.map +1 -0
  737. package/dist/lang/keep.js +226 -0
  738. package/dist/lang/keep.js.map +1 -0
  739. package/dist/lang/metadata-extractor.d.ts +203 -0
  740. package/dist/lang/metadata-extractor.d.ts.map +1 -0
  741. package/dist/lang/metadata-extractor.js +1377 -0
  742. package/dist/lang/metadata-extractor.js.map +1 -0
  743. package/dist/lang/parse-error.d.ts +39 -0
  744. package/dist/lang/parse-error.d.ts.map +1 -0
  745. package/dist/lang/parse-error.js +28 -0
  746. package/dist/lang/parse-error.js.map +1 -0
  747. package/dist/lang/parser.d.ts +91 -0
  748. package/dist/lang/parser.d.ts.map +1 -0
  749. package/dist/lang/parser.js +1594 -0
  750. package/dist/lang/parser.js.map +1 -0
  751. package/dist/lang/security-scanner.d.ts +104 -0
  752. package/dist/lang/security-scanner.d.ts.map +1 -0
  753. package/dist/lang/security-scanner.js +773 -0
  754. package/dist/lang/security-scanner.js.map +1 -0
  755. package/dist/lang/source-edit.d.ts +80 -0
  756. package/dist/lang/source-edit.d.ts.map +1 -0
  757. package/dist/lang/source-edit.js +96 -0
  758. package/dist/lang/source-edit.js.map +1 -0
  759. package/dist/lang/statement-summary.d.ts +84 -0
  760. package/dist/lang/statement-summary.d.ts.map +1 -0
  761. package/dist/lang/statement-summary.js +28 -0
  762. package/dist/lang/statement-summary.js.map +1 -0
  763. package/dist/lang/symbol-table.d.ts +28 -0
  764. package/dist/lang/symbol-table.d.ts.map +1 -0
  765. package/dist/lang/symbol-table.generated.d.ts +80 -0
  766. package/dist/lang/symbol-table.generated.d.ts.map +1 -0
  767. package/dist/lang/symbol-table.generated.js +79 -0
  768. package/dist/lang/symbol-table.generated.js.map +1 -0
  769. package/dist/lang/symbol-table.js +27 -0
  770. package/dist/lang/symbol-table.js.map +1 -0
  771. package/dist/lang/types.d.ts +57 -0
  772. package/dist/lang/types.d.ts.map +1 -0
  773. package/dist/lang/types.js +13 -0
  774. package/dist/lang/types.js.map +1 -0
  775. package/dist/mesh/boolean.d.ts +34 -0
  776. package/dist/mesh/boolean.d.ts.map +1 -0
  777. package/dist/mesh/boolean.js +41 -0
  778. package/dist/mesh/boolean.js.map +1 -0
  779. package/dist/mesh/drill-hole/DrillHoleCore.d.ts +90 -0
  780. package/dist/mesh/drill-hole/DrillHoleCore.d.ts.map +1 -0
  781. package/dist/mesh/drill-hole/DrillHoleCore.js +287 -0
  782. package/dist/mesh/drill-hole/DrillHoleCore.js.map +1 -0
  783. package/dist/mesh/drill-hole/drill-types.d.ts +34 -0
  784. package/dist/mesh/drill-hole/drill-types.d.ts.map +1 -0
  785. package/dist/mesh/drill-hole/drill-types.js +7 -0
  786. package/dist/mesh/drill-hole/drill-types.js.map +1 -0
  787. package/dist/mesh/engrave.d.ts +36 -0
  788. package/dist/mesh/engrave.d.ts.map +1 -0
  789. package/dist/mesh/engrave.js +154 -0
  790. package/dist/mesh/engrave.js.map +1 -0
  791. package/dist/mesh/fai_drill.d.ts +21 -0
  792. package/dist/mesh/fai_drill.d.ts.map +1 -0
  793. package/dist/mesh/fai_drill.js +92 -0
  794. package/dist/mesh/fai_drill.js.map +1 -0
  795. package/dist/mesh/fai_extrude.d.ts +24 -0
  796. package/dist/mesh/fai_extrude.d.ts.map +1 -0
  797. package/dist/mesh/fai_extrude.js +42 -0
  798. package/dist/mesh/fai_extrude.js.map +1 -0
  799. package/dist/mesh/fai_split.d.ts +164 -0
  800. package/dist/mesh/fai_split.d.ts.map +1 -0
  801. package/dist/mesh/fai_split.js +269 -0
  802. package/dist/mesh/fai_split.js.map +1 -0
  803. package/dist/mesh/index.d.ts +84 -0
  804. package/dist/mesh/index.d.ts.map +1 -0
  805. package/dist/mesh/index.js +95 -0
  806. package/dist/mesh/index.js.map +1 -0
  807. package/dist/mesh/io.d.ts +17 -0
  808. package/dist/mesh/io.d.ts.map +1 -0
  809. package/dist/mesh/io.js +33 -0
  810. package/dist/mesh/io.js.map +1 -0
  811. package/dist/mesh/knurl/KnurlGenerator.d.ts +77 -0
  812. package/dist/mesh/knurl/KnurlGenerator.d.ts.map +1 -0
  813. package/dist/mesh/knurl/KnurlGenerator.js +116 -0
  814. package/dist/mesh/knurl/KnurlGenerator.js.map +1 -0
  815. package/dist/mesh/knurl/displacement.d.ts +53 -0
  816. package/dist/mesh/knurl/displacement.d.ts.map +1 -0
  817. package/dist/mesh/knurl/displacement.js +274 -0
  818. package/dist/mesh/knurl/displacement.js.map +1 -0
  819. package/dist/mesh/knurl/mapping.d.ts +104 -0
  820. package/dist/mesh/knurl/mapping.d.ts.map +1 -0
  821. package/dist/mesh/knurl/mapping.js +307 -0
  822. package/dist/mesh/knurl/mapping.js.map +1 -0
  823. package/dist/mesh/knurl/meshIndex.d.ts +63 -0
  824. package/dist/mesh/knurl/meshIndex.d.ts.map +1 -0
  825. package/dist/mesh/knurl/meshIndex.js +134 -0
  826. package/dist/mesh/knurl/meshIndex.js.map +1 -0
  827. package/dist/mesh/knurl/subdivision.d.ts +54 -0
  828. package/dist/mesh/knurl/subdivision.d.ts.map +1 -0
  829. package/dist/mesh/knurl/subdivision.js +517 -0
  830. package/dist/mesh/knurl/subdivision.js.map +1 -0
  831. package/dist/mesh/knurl/textureLoader.d.ts +38 -0
  832. package/dist/mesh/knurl/textureLoader.d.ts.map +1 -0
  833. package/dist/mesh/knurl/textureLoader.js +40 -0
  834. package/dist/mesh/knurl/textureLoader.js.map +1 -0
  835. package/dist/mesh/manifold-loader.d.ts +41 -0
  836. package/dist/mesh/manifold-loader.d.ts.map +1 -0
  837. package/dist/mesh/manifold-loader.js +56 -0
  838. package/dist/mesh/manifold-loader.js.map +1 -0
  839. package/dist/mesh/primitives.d.ts +104 -0
  840. package/dist/mesh/primitives.d.ts.map +1 -0
  841. package/dist/mesh/primitives.js +275 -0
  842. package/dist/mesh/primitives.js.map +1 -0
  843. package/dist/mesh/query.d.ts +43 -0
  844. package/dist/mesh/query.d.ts.map +1 -0
  845. package/dist/mesh/query.js +124 -0
  846. package/dist/mesh/query.js.map +1 -0
  847. package/dist/mesh/reconcile.d.ts +84 -0
  848. package/dist/mesh/reconcile.d.ts.map +1 -0
  849. package/dist/mesh/reconcile.js +261 -0
  850. package/dist/mesh/reconcile.js.map +1 -0
  851. package/dist/mesh/rigid-transform.d.ts +28 -0
  852. package/dist/mesh/rigid-transform.d.ts.map +1 -0
  853. package/dist/mesh/rigid-transform.js +51 -0
  854. package/dist/mesh/rigid-transform.js.map +1 -0
  855. package/dist/mesh/transform.d.ts +57 -0
  856. package/dist/mesh/transform.d.ts.map +1 -0
  857. package/dist/mesh/transform.js +102 -0
  858. package/dist/mesh/transform.js.map +1 -0
  859. package/dist/mesh/types.d.ts +279 -0
  860. package/dist/mesh/types.d.ts.map +1 -0
  861. package/dist/mesh/types.js +46 -0
  862. package/dist/mesh/types.js.map +1 -0
  863. package/dist/module-resolver/index.d.ts +8 -0
  864. package/dist/module-resolver/index.d.ts.map +1 -0
  865. package/dist/module-resolver/index.js +8 -0
  866. package/dist/module-resolver/index.js.map +1 -0
  867. package/dist/module-resolver/resolver.d.ts +112 -0
  868. package/dist/module-resolver/resolver.d.ts.map +1 -0
  869. package/dist/module-resolver/resolver.js +226 -0
  870. package/dist/module-resolver/resolver.js.map +1 -0
  871. package/dist/module-resolver/version.d.ts +46 -0
  872. package/dist/module-resolver/version.d.ts.map +1 -0
  873. package/dist/module-resolver/version.js +187 -0
  874. package/dist/module-resolver/version.js.map +1 -0
  875. package/dist/node-host/cli-event-sink.d.ts +25 -0
  876. package/dist/node-host/cli-event-sink.d.ts.map +1 -0
  877. package/dist/node-host/cli-event-sink.js +22 -0
  878. package/dist/node-host/cli-event-sink.js.map +1 -0
  879. package/dist/node-host/cli.d.ts +168 -0
  880. package/dist/node-host/cli.d.ts.map +1 -0
  881. package/dist/node-host/cli.js +646 -0
  882. package/dist/node-host/cli.js.map +1 -0
  883. package/dist/node-host/fs-asset-resolver.d.ts +55 -0
  884. package/dist/node-host/fs-asset-resolver.d.ts.map +1 -0
  885. package/dist/node-host/fs-asset-resolver.js +107 -0
  886. package/dist/node-host/fs-asset-resolver.js.map +1 -0
  887. package/dist/node-host/fs-project-loader.d.ts +40 -0
  888. package/dist/node-host/fs-project-loader.d.ts.map +1 -0
  889. package/dist/node-host/fs-project-loader.js +112 -0
  890. package/dist/node-host/fs-project-loader.js.map +1 -0
  891. package/dist/node-host/index.d.ts +46 -0
  892. package/dist/node-host/index.d.ts.map +1 -0
  893. package/dist/node-host/index.js +56 -0
  894. package/dist/node-host/index.js.map +1 -0
  895. package/dist/node-host/node-font-provider.d.ts +50 -0
  896. package/dist/node-host/node-font-provider.d.ts.map +1 -0
  897. package/dist/node-host/node-font-provider.js +87 -0
  898. package/dist/node-host/node-font-provider.js.map +1 -0
  899. package/dist/node.d.ts +23 -0
  900. package/dist/node.d.ts.map +1 -0
  901. package/dist/node.js +23 -0
  902. package/dist/node.js.map +1 -0
  903. package/dist/occt-kernel/highLevelApi.d.ts +106 -0
  904. package/dist/occt-kernel/highLevelApi.d.ts.map +1 -0
  905. package/dist/occt-kernel/highLevelApi.js +149 -0
  906. package/dist/occt-kernel/highLevelApi.js.map +1 -0
  907. package/dist/occt-kernel/meshReconstruct.d.ts +75 -0
  908. package/dist/occt-kernel/meshReconstruct.d.ts.map +1 -0
  909. package/dist/occt-kernel/meshReconstruct.js +196 -0
  910. package/dist/occt-kernel/meshReconstruct.js.map +1 -0
  911. package/dist/occt-kernel/occtKernel.d.ts +174 -0
  912. package/dist/occt-kernel/occtKernel.d.ts.map +1 -0
  913. package/dist/occt-kernel/occtKernel.js +400 -0
  914. package/dist/occt-kernel/occtKernel.js.map +1 -0
  915. package/dist/occt-kernel/stepColorParser.d.ts +54 -0
  916. package/dist/occt-kernel/stepColorParser.d.ts.map +1 -0
  917. package/dist/occt-kernel/stepColorParser.js +139 -0
  918. package/dist/occt-kernel/stepColorParser.js.map +1 -0
  919. package/dist/occt-kernel/topologyExt.d.ts +80 -0
  920. package/dist/occt-kernel/topologyExt.d.ts.map +1 -0
  921. package/dist/occt-kernel/topologyExt.js +1295 -0
  922. package/dist/occt-kernel/topologyExt.js.map +1 -0
  923. package/dist/primitives/brep-primitives.d.ts +104 -0
  924. package/dist/primitives/brep-primitives.d.ts.map +1 -0
  925. package/dist/primitives/brep-primitives.js +297 -0
  926. package/dist/primitives/brep-primitives.js.map +1 -0
  927. package/dist/primitives/mesh-primitives.d.ts +38 -0
  928. package/dist/primitives/mesh-primitives.d.ts.map +1 -0
  929. package/dist/primitives/mesh-primitives.js +160 -0
  930. package/dist/primitives/mesh-primitives.js.map +1 -0
  931. package/dist/primitives/parse-svg-size.d.ts +18 -0
  932. package/dist/primitives/parse-svg-size.d.ts.map +1 -0
  933. package/dist/primitives/parse-svg-size.js +31 -0
  934. package/dist/primitives/parse-svg-size.js.map +1 -0
  935. package/dist/primitives/screw/screw-db.d.ts +86 -0
  936. package/dist/primitives/screw/screw-db.d.ts.map +1 -0
  937. package/dist/primitives/screw/screw-db.js +95 -0
  938. package/dist/primitives/screw/screw-db.js.map +1 -0
  939. package/dist/primitives/screw/screw.d.ts +13 -0
  940. package/dist/primitives/screw/screw.d.ts.map +1 -0
  941. package/dist/primitives/screw/screw.js +176 -0
  942. package/dist/primitives/screw/screw.js.map +1 -0
  943. package/dist/primitives/svg-extrude.d.ts +43 -0
  944. package/dist/primitives/svg-extrude.d.ts.map +1 -0
  945. package/dist/primitives/svg-extrude.js +78 -0
  946. package/dist/primitives/svg-extrude.js.map +1 -0
  947. package/dist/primitives/text/cjk.d.ts +61 -0
  948. package/dist/primitives/text/cjk.d.ts.map +1 -0
  949. package/dist/primitives/text/cjk.js +215 -0
  950. package/dist/primitives/text/cjk.js.map +1 -0
  951. package/dist/primitives/text-geometry.d.ts +47 -0
  952. package/dist/primitives/text-geometry.d.ts.map +1 -0
  953. package/dist/primitives/text-geometry.js +127 -0
  954. package/dist/primitives/text-geometry.js.map +1 -0
  955. package/dist/primitives/types.d.ts +56 -0
  956. package/dist/primitives/types.d.ts.map +1 -0
  957. package/dist/primitives/types.js +25 -0
  958. package/dist/primitives/types.js.map +1 -0
  959. package/dist/runtime-state.d.ts +303 -0
  960. package/dist/runtime-state.d.ts.map +1 -0
  961. package/dist/runtime-state.js +316 -0
  962. package/dist/runtime-state.js.map +1 -0
  963. package/dist/sdf/sdf-core.d.ts +67 -0
  964. package/dist/sdf/sdf-core.d.ts.map +1 -0
  965. package/dist/sdf/sdf-core.js +118 -0
  966. package/dist/sdf/sdf-core.js.map +1 -0
  967. package/dist/sdf/sdf-runner.d.ts +33 -0
  968. package/dist/sdf/sdf-runner.d.ts.map +1 -0
  969. package/dist/sdf/sdf-runner.js +45 -0
  970. package/dist/sdf/sdf-runner.js.map +1 -0
  971. package/dist/sdf/templates.d.ts +7 -0
  972. package/dist/sdf/templates.d.ts.map +1 -0
  973. package/dist/sdf/templates.js +282 -0
  974. package/dist/sdf/templates.js.map +1 -0
  975. package/dist/sdf/types.d.ts +114 -0
  976. package/dist/sdf/types.d.ts.map +1 -0
  977. package/dist/sdf/types.js +97 -0
  978. package/dist/sdf/types.js.map +1 -0
  979. package/dist/sdf.d.ts +12 -0
  980. package/dist/sdf.d.ts.map +1 -0
  981. package/dist/sdf.js +10 -0
  982. package/dist/sdf.js.map +1 -0
  983. package/dist/sdk.d.ts +30 -0
  984. package/dist/sdk.d.ts.map +1 -0
  985. package/dist/sdk.js +34 -0
  986. package/dist/sdk.js.map +1 -0
  987. package/dist/shape.d.ts +121 -0
  988. package/dist/shape.d.ts.map +1 -0
  989. package/dist/shape.js +145 -0
  990. package/dist/shape.js.map +1 -0
  991. package/dist/test-helpers.d.ts +31 -0
  992. package/dist/test-helpers.d.ts.map +1 -0
  993. package/dist/test-helpers.js +55 -0
  994. package/dist/test-helpers.js.map +1 -0
  995. package/dist/topology/build-face-ids.d.ts +35 -0
  996. package/dist/topology/build-face-ids.d.ts.map +1 -0
  997. package/dist/topology/build-face-ids.js +70 -0
  998. package/dist/topology/build-face-ids.js.map +1 -0
  999. package/dist/topology/build-logical-points.d.ts +68 -0
  1000. package/dist/topology/build-logical-points.d.ts.map +1 -0
  1001. package/dist/topology/build-logical-points.js +169 -0
  1002. package/dist/topology/build-logical-points.js.map +1 -0
  1003. package/dist/topology/build-selector-runtime.d.ts +82 -0
  1004. package/dist/topology/build-selector-runtime.d.ts.map +1 -0
  1005. package/dist/topology/build-selector-runtime.js +601 -0
  1006. package/dist/topology/build-selector-runtime.js.map +1 -0
  1007. package/dist/topology/naming/build-naming.d.ts +89 -0
  1008. package/dist/topology/naming/build-naming.d.ts.map +1 -0
  1009. package/dist/topology/naming/build-naming.js +107 -0
  1010. package/dist/topology/naming/build-naming.js.map +1 -0
  1011. package/dist/topology/naming/capture-topo-ref.d.ts +22 -0
  1012. package/dist/topology/naming/capture-topo-ref.d.ts.map +1 -0
  1013. package/dist/topology/naming/capture-topo-ref.js +34 -0
  1014. package/dist/topology/naming/capture-topo-ref.js.map +1 -0
  1015. package/dist/topology/naming/geom-hint.d.ts +92 -0
  1016. package/dist/topology/naming/geom-hint.d.ts.map +1 -0
  1017. package/dist/topology/naming/geom-hint.js +254 -0
  1018. package/dist/topology/naming/geom-hint.js.map +1 -0
  1019. package/dist/topology/naming/index.d.ts +19 -0
  1020. package/dist/topology/naming/index.d.ts.map +1 -0
  1021. package/dist/topology/naming/index.js +19 -0
  1022. package/dist/topology/naming/index.js.map +1 -0
  1023. package/dist/topology/naming/ref-params.d.ts +49 -0
  1024. package/dist/topology/naming/ref-params.d.ts.map +1 -0
  1025. package/dist/topology/naming/ref-params.js +92 -0
  1026. package/dist/topology/naming/ref-params.js.map +1 -0
  1027. package/dist/topology/naming/resolve-derived.d.ts +23 -0
  1028. package/dist/topology/naming/resolve-derived.d.ts.map +1 -0
  1029. package/dist/topology/naming/resolve-derived.js +128 -0
  1030. package/dist/topology/naming/resolve-derived.js.map +1 -0
  1031. package/dist/topology/naming/resolve-edge.d.ts +36 -0
  1032. package/dist/topology/naming/resolve-edge.d.ts.map +1 -0
  1033. package/dist/topology/naming/resolve-edge.js +138 -0
  1034. package/dist/topology/naming/resolve-edge.js.map +1 -0
  1035. package/dist/topology/naming/resolve-face.d.ts +89 -0
  1036. package/dist/topology/naming/resolve-face.d.ts.map +1 -0
  1037. package/dist/topology/naming/resolve-face.js +107 -0
  1038. package/dist/topology/naming/resolve-face.js.map +1 -0
  1039. package/dist/topology/naming/resolve-vertex.d.ts +27 -0
  1040. package/dist/topology/naming/resolve-vertex.d.ts.map +1 -0
  1041. package/dist/topology/naming/resolve-vertex.js +115 -0
  1042. package/dist/topology/naming/resolve-vertex.js.map +1 -0
  1043. package/dist/topology/naming/resolver.d.ts +40 -0
  1044. package/dist/topology/naming/resolver.d.ts.map +1 -0
  1045. package/dist/topology/naming/resolver.js +71 -0
  1046. package/dist/topology/naming/resolver.js.map +1 -0
  1047. package/dist/topology/naming/roles.d.ts +111 -0
  1048. package/dist/topology/naming/roles.d.ts.map +1 -0
  1049. package/dist/topology/naming/roles.js +271 -0
  1050. package/dist/topology/naming/roles.js.map +1 -0
  1051. package/dist/topology/naming/score.d.ts +60 -0
  1052. package/dist/topology/naming/score.d.ts.map +1 -0
  1053. package/dist/topology/naming/score.js +121 -0
  1054. package/dist/topology/naming/score.js.map +1 -0
  1055. package/dist/topology/naming/types.d.ts +142 -0
  1056. package/dist/topology/naming/types.d.ts.map +1 -0
  1057. package/dist/topology/naming/types.js +27 -0
  1058. package/dist/topology/naming/types.js.map +1 -0
  1059. package/dist/topology/types.d.ts +225 -0
  1060. package/dist/topology/types.d.ts.map +1 -0
  1061. package/dist/topology/types.js +2 -0
  1062. package/dist/topology/types.js.map +1 -0
  1063. package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.d.ts +106 -0
  1064. package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.d.ts.map +1 -0
  1065. package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.js +341 -0
  1066. package/dist/vendored/brepjs/2d/blueprints/baseSketcher2d.js.map +1 -0
  1067. package/dist/vendored/brepjs/2d/blueprints/blueprint.d.ts +185 -0
  1068. package/dist/vendored/brepjs/2d/blueprints/blueprint.d.ts.map +1 -0
  1069. package/dist/vendored/brepjs/2d/blueprints/blueprint.js +361 -0
  1070. package/dist/vendored/brepjs/2d/blueprints/blueprint.js.map +1 -0
  1071. package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.d.ts +15 -0
  1072. package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.d.ts.map +1 -0
  1073. package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.js +28 -0
  1074. package/dist/vendored/brepjs/2d/blueprints/blueprintApproximations.js.map +1 -0
  1075. package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.d.ts +29 -0
  1076. package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.d.ts.map +1 -0
  1077. package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.js +86 -0
  1078. package/dist/vendored/brepjs/2d/blueprints/blueprintCustomCorners.js.map +1 -0
  1079. package/dist/vendored/brepjs/2d/blueprints/blueprintFns.d.ts +57 -0
  1080. package/dist/vendored/brepjs/2d/blueprints/blueprintFns.d.ts.map +1 -0
  1081. package/dist/vendored/brepjs/2d/blueprints/blueprintFns.js +92 -0
  1082. package/dist/vendored/brepjs/2d/blueprints/blueprintFns.js.map +1 -0
  1083. package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.d.ts +58 -0
  1084. package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.d.ts.map +1 -0
  1085. package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.js +346 -0
  1086. package/dist/vendored/brepjs/2d/blueprints/blueprintOffset.js.map +1 -0
  1087. package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.d.ts +30 -0
  1088. package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.d.ts.map +1 -0
  1089. package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.js +45 -0
  1090. package/dist/vendored/brepjs/2d/blueprints/blueprintSketcher.js.map +1 -0
  1091. package/dist/vendored/brepjs/2d/blueprints/blueprints.d.ts +68 -0
  1092. package/dist/vendored/brepjs/2d/blueprints/blueprints.d.ts.map +1 -0
  1093. package/dist/vendored/brepjs/2d/blueprints/blueprints.js +116 -0
  1094. package/dist/vendored/brepjs/2d/blueprints/blueprints.js.map +1 -0
  1095. package/dist/vendored/brepjs/2d/blueprints/boolean2D.d.ts +68 -0
  1096. package/dist/vendored/brepjs/2d/blueprints/boolean2D.d.ts.map +1 -0
  1097. package/dist/vendored/brepjs/2d/blueprints/boolean2D.js +362 -0
  1098. package/dist/vendored/brepjs/2d/blueprints/boolean2D.js.map +1 -0
  1099. package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.d.ts +34 -0
  1100. package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.d.ts.map +1 -0
  1101. package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.js +176 -0
  1102. package/dist/vendored/brepjs/2d/blueprints/booleanHelpers.js.map +1 -0
  1103. package/dist/vendored/brepjs/2d/blueprints/booleanOperations.d.ts +55 -0
  1104. package/dist/vendored/brepjs/2d/blueprints/booleanOperations.d.ts.map +1 -0
  1105. package/dist/vendored/brepjs/2d/blueprints/booleanOperations.js +110 -0
  1106. package/dist/vendored/brepjs/2d/blueprints/booleanOperations.js.map +1 -0
  1107. package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.d.ts +41 -0
  1108. package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.d.ts.map +1 -0
  1109. package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.js +90 -0
  1110. package/dist/vendored/brepjs/2d/blueprints/cannedBlueprints.js.map +1 -0
  1111. package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.d.ts +85 -0
  1112. package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.d.ts.map +1 -0
  1113. package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.js +136 -0
  1114. package/dist/vendored/brepjs/2d/blueprints/compoundBlueprint.js.map +1 -0
  1115. package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.d.ts +48 -0
  1116. package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.d.ts.map +1 -0
  1117. package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.js +154 -0
  1118. package/dist/vendored/brepjs/2d/blueprints/ellipseUtils.js.map +1 -0
  1119. package/dist/vendored/brepjs/2d/blueprints/genericSketcher.d.ts +342 -0
  1120. package/dist/vendored/brepjs/2d/blueprints/genericSketcher.d.ts.map +1 -0
  1121. package/dist/vendored/brepjs/2d/blueprints/genericSketcher.js +32 -0
  1122. package/dist/vendored/brepjs/2d/blueprints/genericSketcher.js.map +1 -0
  1123. package/dist/vendored/brepjs/2d/blueprints/index.d.ts +16 -0
  1124. package/dist/vendored/brepjs/2d/blueprints/index.d.ts.map +1 -0
  1125. package/dist/vendored/brepjs/2d/blueprints/index.js +13 -0
  1126. package/dist/vendored/brepjs/2d/blueprints/index.js.map +1 -0
  1127. package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.d.ts +18 -0
  1128. package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.d.ts.map +1 -0
  1129. package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.js +230 -0
  1130. package/dist/vendored/brepjs/2d/blueprints/intersectionSegments.js.map +1 -0
  1131. package/dist/vendored/brepjs/2d/blueprints/lib.d.ts +73 -0
  1132. package/dist/vendored/brepjs/2d/blueprints/lib.d.ts.map +1 -0
  1133. package/dist/vendored/brepjs/2d/blueprints/lib.js +103 -0
  1134. package/dist/vendored/brepjs/2d/blueprints/lib.js.map +1 -0
  1135. package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.d.ts +31 -0
  1136. package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.d.ts.map +1 -0
  1137. package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.js +226 -0
  1138. package/dist/vendored/brepjs/2d/blueprints/segmentAssembly.js.map +1 -0
  1139. package/dist/vendored/brepjs/2d/blueprints/svg.d.ts +22 -0
  1140. package/dist/vendored/brepjs/2d/blueprints/svg.d.ts.map +1 -0
  1141. package/dist/vendored/brepjs/2d/blueprints/svg.js +30 -0
  1142. package/dist/vendored/brepjs/2d/blueprints/svg.js.map +1 -0
  1143. package/dist/vendored/brepjs/2d/curve2dGeometryFns.d.ts +124 -0
  1144. package/dist/vendored/brepjs/2d/curve2dGeometryFns.d.ts.map +1 -0
  1145. package/dist/vendored/brepjs/2d/curve2dGeometryFns.js +235 -0
  1146. package/dist/vendored/brepjs/2d/curve2dGeometryFns.js.map +1 -0
  1147. package/dist/vendored/brepjs/2d/curves.d.ts +45 -0
  1148. package/dist/vendored/brepjs/2d/curves.d.ts.map +1 -0
  1149. package/dist/vendored/brepjs/2d/curves.js +139 -0
  1150. package/dist/vendored/brepjs/2d/curves.js.map +1 -0
  1151. package/dist/vendored/brepjs/2d/lib/approximations.d.ts +47 -0
  1152. package/dist/vendored/brepjs/2d/lib/approximations.d.ts.map +1 -0
  1153. package/dist/vendored/brepjs/2d/lib/approximations.js +82 -0
  1154. package/dist/vendored/brepjs/2d/lib/approximations.js.map +1 -0
  1155. package/dist/vendored/brepjs/2d/lib/boundingBox2d.d.ts +39 -0
  1156. package/dist/vendored/brepjs/2d/lib/boundingBox2d.d.ts.map +1 -0
  1157. package/dist/vendored/brepjs/2d/lib/boundingBox2d.js +88 -0
  1158. package/dist/vendored/brepjs/2d/lib/boundingBox2d.js.map +1 -0
  1159. package/dist/vendored/brepjs/2d/lib/curve2D.d.ts +82 -0
  1160. package/dist/vendored/brepjs/2d/lib/curve2D.d.ts.map +1 -0
  1161. package/dist/vendored/brepjs/2d/lib/curve2D.js +258 -0
  1162. package/dist/vendored/brepjs/2d/lib/curve2D.js.map +1 -0
  1163. package/dist/vendored/brepjs/2d/lib/curve2dFns.d.ts +53 -0
  1164. package/dist/vendored/brepjs/2d/lib/curve2dFns.d.ts.map +1 -0
  1165. package/dist/vendored/brepjs/2d/lib/curve2dFns.js +69 -0
  1166. package/dist/vendored/brepjs/2d/lib/curve2dFns.js.map +1 -0
  1167. package/dist/vendored/brepjs/2d/lib/customCorners.d.ts +29 -0
  1168. package/dist/vendored/brepjs/2d/lib/customCorners.d.ts.map +1 -0
  1169. package/dist/vendored/brepjs/2d/lib/customCorners.js +237 -0
  1170. package/dist/vendored/brepjs/2d/lib/customCorners.js.map +1 -0
  1171. package/dist/vendored/brepjs/2d/lib/definitions.d.ts +12 -0
  1172. package/dist/vendored/brepjs/2d/lib/definitions.d.ts.map +1 -0
  1173. package/dist/vendored/brepjs/2d/lib/definitions.js +19 -0
  1174. package/dist/vendored/brepjs/2d/lib/definitions.js.map +1 -0
  1175. package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.d.ts +21 -0
  1176. package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.d.ts.map +1 -0
  1177. package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.js +71 -0
  1178. package/dist/vendored/brepjs/2d/lib/ellipseArcFlags.js.map +1 -0
  1179. package/dist/vendored/brepjs/2d/lib/index.d.ts +14 -0
  1180. package/dist/vendored/brepjs/2d/lib/index.d.ts.map +1 -0
  1181. package/dist/vendored/brepjs/2d/lib/index.js +14 -0
  1182. package/dist/vendored/brepjs/2d/lib/index.js.map +1 -0
  1183. package/dist/vendored/brepjs/2d/lib/intersections.d.ts +34 -0
  1184. package/dist/vendored/brepjs/2d/lib/intersections.d.ts.map +1 -0
  1185. package/dist/vendored/brepjs/2d/lib/intersections.js +77 -0
  1186. package/dist/vendored/brepjs/2d/lib/intersections.js.map +1 -0
  1187. package/dist/vendored/brepjs/2d/lib/makeCurves.d.ts +63 -0
  1188. package/dist/vendored/brepjs/2d/lib/makeCurves.d.ts.map +1 -0
  1189. package/dist/vendored/brepjs/2d/lib/makeCurves.js +117 -0
  1190. package/dist/vendored/brepjs/2d/lib/makeCurves.js.map +1 -0
  1191. package/dist/vendored/brepjs/2d/lib/offset.d.ts +30 -0
  1192. package/dist/vendored/brepjs/2d/lib/offset.d.ts.map +1 -0
  1193. package/dist/vendored/brepjs/2d/lib/offset.js +109 -0
  1194. package/dist/vendored/brepjs/2d/lib/offset.js.map +1 -0
  1195. package/dist/vendored/brepjs/2d/lib/precision.d.ts +12 -0
  1196. package/dist/vendored/brepjs/2d/lib/precision.d.ts.map +1 -0
  1197. package/dist/vendored/brepjs/2d/lib/precision.js +12 -0
  1198. package/dist/vendored/brepjs/2d/lib/precision.js.map +1 -0
  1199. package/dist/vendored/brepjs/2d/lib/stitching.d.ts +15 -0
  1200. package/dist/vendored/brepjs/2d/lib/stitching.d.ts.map +1 -0
  1201. package/dist/vendored/brepjs/2d/lib/stitching.js +67 -0
  1202. package/dist/vendored/brepjs/2d/lib/stitching.js.map +1 -0
  1203. package/dist/vendored/brepjs/2d/lib/svgPath.d.ts +4 -0
  1204. package/dist/vendored/brepjs/2d/lib/svgPath.d.ts.map +1 -0
  1205. package/dist/vendored/brepjs/2d/lib/svgPath.js +114 -0
  1206. package/dist/vendored/brepjs/2d/lib/svgPath.js.map +1 -0
  1207. package/dist/vendored/brepjs/2d/lib/utils.d.ts +11 -0
  1208. package/dist/vendored/brepjs/2d/lib/utils.d.ts.map +1 -0
  1209. package/dist/vendored/brepjs/2d/lib/utils.js +24 -0
  1210. package/dist/vendored/brepjs/2d/lib/utils.js.map +1 -0
  1211. package/dist/vendored/brepjs/2d/lib/vectorOperations.d.ts +19 -0
  1212. package/dist/vendored/brepjs/2d/lib/vectorOperations.d.ts.map +1 -0
  1213. package/dist/vendored/brepjs/2d/lib/vectorOperations.js +26 -0
  1214. package/dist/vendored/brepjs/2d/lib/vectorOperations.js.map +1 -0
  1215. package/dist/vendored/brepjs/2d.d.ts +26 -0
  1216. package/dist/vendored/brepjs/2d.d.ts.map +1 -0
  1217. package/dist/vendored/brepjs/2d.js +33 -0
  1218. package/dist/vendored/brepjs/2d.js.map +1 -0
  1219. package/dist/vendored/brepjs/core/constants.d.ts +7 -0
  1220. package/dist/vendored/brepjs/core/constants.d.ts.map +1 -0
  1221. package/dist/vendored/brepjs/core/constants.js +7 -0
  1222. package/dist/vendored/brepjs/core/constants.js.map +1 -0
  1223. package/dist/vendored/brepjs/core/curve2dHandle.d.ts +35 -0
  1224. package/dist/vendored/brepjs/core/curve2dHandle.d.ts.map +1 -0
  1225. package/dist/vendored/brepjs/core/curve2dHandle.js +48 -0
  1226. package/dist/vendored/brepjs/core/curve2dHandle.js.map +1 -0
  1227. package/dist/vendored/brepjs/core/dimensionTypes.d.ts +61 -0
  1228. package/dist/vendored/brepjs/core/dimensionTypes.d.ts.map +1 -0
  1229. package/dist/vendored/brepjs/core/dimensionTypes.js +54 -0
  1230. package/dist/vendored/brepjs/core/dimensionTypes.js.map +1 -0
  1231. package/dist/vendored/brepjs/core/disposal.d.ts +136 -0
  1232. package/dist/vendored/brepjs/core/disposal.d.ts.map +1 -0
  1233. package/dist/vendored/brepjs/core/disposal.js +441 -0
  1234. package/dist/vendored/brepjs/core/disposal.js.map +1 -0
  1235. package/dist/vendored/brepjs/core/errors.d.ts +191 -0
  1236. package/dist/vendored/brepjs/core/errors.d.ts.map +1 -0
  1237. package/dist/vendored/brepjs/core/errors.js +238 -0
  1238. package/dist/vendored/brepjs/core/errors.js.map +1 -0
  1239. package/dist/vendored/brepjs/core/kernelBoundary.d.ts +40 -0
  1240. package/dist/vendored/brepjs/core/kernelBoundary.d.ts.map +1 -0
  1241. package/dist/vendored/brepjs/core/kernelBoundary.js +99 -0
  1242. package/dist/vendored/brepjs/core/kernelBoundary.js.map +1 -0
  1243. package/dist/vendored/brepjs/core/kernelCall.d.ts +48 -0
  1244. package/dist/vendored/brepjs/core/kernelCall.d.ts.map +1 -0
  1245. package/dist/vendored/brepjs/core/kernelCall.js +154 -0
  1246. package/dist/vendored/brepjs/core/kernelCall.js.map +1 -0
  1247. package/dist/vendored/brepjs/core/kernelErrorTranslation.d.ts +17 -0
  1248. package/dist/vendored/brepjs/core/kernelErrorTranslation.d.ts.map +1 -0
  1249. package/dist/vendored/brepjs/core/kernelErrorTranslation.js +98 -0
  1250. package/dist/vendored/brepjs/core/kernelErrorTranslation.js.map +1 -0
  1251. package/dist/vendored/brepjs/core/kernelReentrancy.d.ts +41 -0
  1252. package/dist/vendored/brepjs/core/kernelReentrancy.d.ts.map +1 -0
  1253. package/dist/vendored/brepjs/core/kernelReentrancy.js +68 -0
  1254. package/dist/vendored/brepjs/core/kernelReentrancy.js.map +1 -0
  1255. package/dist/vendored/brepjs/core/planeOps.d.ts +62 -0
  1256. package/dist/vendored/brepjs/core/planeOps.d.ts.map +1 -0
  1257. package/dist/vendored/brepjs/core/planeOps.js +148 -0
  1258. package/dist/vendored/brepjs/core/planeOps.js.map +1 -0
  1259. package/dist/vendored/brepjs/core/planeTypes.d.ts +22 -0
  1260. package/dist/vendored/brepjs/core/planeTypes.d.ts.map +1 -0
  1261. package/dist/vendored/brepjs/core/planeTypes.js +6 -0
  1262. package/dist/vendored/brepjs/core/planeTypes.js.map +1 -0
  1263. package/dist/vendored/brepjs/core/result.d.ts +85 -0
  1264. package/dist/vendored/brepjs/core/result.d.ts.map +1 -0
  1265. package/dist/vendored/brepjs/core/result.js +212 -0
  1266. package/dist/vendored/brepjs/core/result.js.map +1 -0
  1267. package/dist/vendored/brepjs/core/shapeTypeCache.d.ts +27 -0
  1268. package/dist/vendored/brepjs/core/shapeTypeCache.d.ts.map +1 -0
  1269. package/dist/vendored/brepjs/core/shapeTypeCache.js +40 -0
  1270. package/dist/vendored/brepjs/core/shapeTypeCache.js.map +1 -0
  1271. package/dist/vendored/brepjs/core/shapeTypes.d.ts +199 -0
  1272. package/dist/vendored/brepjs/core/shapeTypes.d.ts.map +1 -0
  1273. package/dist/vendored/brepjs/core/shapeTypes.js +267 -0
  1274. package/dist/vendored/brepjs/core/shapeTypes.js.map +1 -0
  1275. package/dist/vendored/brepjs/core/typeDiscriminants.d.ts +25 -0
  1276. package/dist/vendored/brepjs/core/typeDiscriminants.d.ts.map +1 -0
  1277. package/dist/vendored/brepjs/core/typeDiscriminants.js +50 -0
  1278. package/dist/vendored/brepjs/core/typeDiscriminants.js.map +1 -0
  1279. package/dist/vendored/brepjs/core/types.d.ts +51 -0
  1280. package/dist/vendored/brepjs/core/types.d.ts.map +1 -0
  1281. package/dist/vendored/brepjs/core/types.js +35 -0
  1282. package/dist/vendored/brepjs/core/types.js.map +1 -0
  1283. package/dist/vendored/brepjs/core/validityTypes.d.ts +143 -0
  1284. package/dist/vendored/brepjs/core/validityTypes.d.ts.map +1 -0
  1285. package/dist/vendored/brepjs/core/validityTypes.js +174 -0
  1286. package/dist/vendored/brepjs/core/validityTypes.js.map +1 -0
  1287. package/dist/vendored/brepjs/core/vecOps.d.ts +53 -0
  1288. package/dist/vendored/brepjs/core/vecOps.d.ts.map +1 -0
  1289. package/dist/vendored/brepjs/core/vecOps.js +131 -0
  1290. package/dist/vendored/brepjs/core/vecOps.js.map +1 -0
  1291. package/dist/vendored/brepjs/core.d.ts +17 -0
  1292. package/dist/vendored/brepjs/core.d.ts.map +1 -0
  1293. package/dist/vendored/brepjs/core.js +13 -0
  1294. package/dist/vendored/brepjs/core.js.map +1 -0
  1295. package/dist/vendored/brepjs/gear/gearFns.d.ts +148 -0
  1296. package/dist/vendored/brepjs/gear/gearFns.d.ts.map +1 -0
  1297. package/dist/vendored/brepjs/gear/gearFns.js +479 -0
  1298. package/dist/vendored/brepjs/gear/gearFns.js.map +1 -0
  1299. package/dist/vendored/brepjs/gear/gearMath.d.ts +89 -0
  1300. package/dist/vendored/brepjs/gear/gearMath.d.ts.map +1 -0
  1301. package/dist/vendored/brepjs/gear/gearMath.js +195 -0
  1302. package/dist/vendored/brepjs/gear/gearMath.js.map +1 -0
  1303. package/dist/vendored/brepjs/gear/gearProfile.d.ts +17 -0
  1304. package/dist/vendored/brepjs/gear/gearProfile.d.ts.map +1 -0
  1305. package/dist/vendored/brepjs/gear/gearProfile.js +159 -0
  1306. package/dist/vendored/brepjs/gear/gearProfile.js.map +1 -0
  1307. package/dist/vendored/brepjs/gear/index.d.ts +4 -0
  1308. package/dist/vendored/brepjs/gear/index.d.ts.map +1 -0
  1309. package/dist/vendored/brepjs/gear/index.js +4 -0
  1310. package/dist/vendored/brepjs/gear/index.js.map +1 -0
  1311. package/dist/vendored/brepjs/index.d.ts +152 -0
  1312. package/dist/vendored/brepjs/index.d.ts.map +1 -0
  1313. package/dist/vendored/brepjs/index.js +195 -0
  1314. package/dist/vendored/brepjs/index.js.map +1 -0
  1315. package/dist/vendored/brepjs/io/dxfExportFns.d.ts +74 -0
  1316. package/dist/vendored/brepjs/io/dxfExportFns.d.ts.map +1 -0
  1317. package/dist/vendored/brepjs/io/dxfExportFns.js +134 -0
  1318. package/dist/vendored/brepjs/io/dxfExportFns.js.map +1 -0
  1319. package/dist/vendored/brepjs/io/dxfImportFns.d.ts +20 -0
  1320. package/dist/vendored/brepjs/io/dxfImportFns.d.ts.map +1 -0
  1321. package/dist/vendored/brepjs/io/dxfImportFns.js +132 -0
  1322. package/dist/vendored/brepjs/io/dxfImportFns.js.map +1 -0
  1323. package/dist/vendored/brepjs/io/gltfExportFns.d.ts +97 -0
  1324. package/dist/vendored/brepjs/io/gltfExportFns.d.ts.map +1 -0
  1325. package/dist/vendored/brepjs/io/gltfExportFns.js +460 -0
  1326. package/dist/vendored/brepjs/io/gltfExportFns.js.map +1 -0
  1327. package/dist/vendored/brepjs/io/gltfImportFns.d.ts +21 -0
  1328. package/dist/vendored/brepjs/io/gltfImportFns.d.ts.map +1 -0
  1329. package/dist/vendored/brepjs/io/gltfImportFns.js +33 -0
  1330. package/dist/vendored/brepjs/io/gltfImportFns.js.map +1 -0
  1331. package/dist/vendored/brepjs/io/importFns.d.ts +56 -0
  1332. package/dist/vendored/brepjs/io/importFns.d.ts.map +1 -0
  1333. package/dist/vendored/brepjs/io/importFns.js +108 -0
  1334. package/dist/vendored/brepjs/io/importFns.js.map +1 -0
  1335. package/dist/vendored/brepjs/io/ioUtils.d.ts +22 -0
  1336. package/dist/vendored/brepjs/io/ioUtils.d.ts.map +1 -0
  1337. package/dist/vendored/brepjs/io/ioUtils.js +56 -0
  1338. package/dist/vendored/brepjs/io/ioUtils.js.map +1 -0
  1339. package/dist/vendored/brepjs/io/objExportFns.d.ts +23 -0
  1340. package/dist/vendored/brepjs/io/objExportFns.d.ts.map +1 -0
  1341. package/dist/vendored/brepjs/io/objExportFns.js +67 -0
  1342. package/dist/vendored/brepjs/io/objExportFns.js.map +1 -0
  1343. package/dist/vendored/brepjs/io/objImportFns.d.ts +26 -0
  1344. package/dist/vendored/brepjs/io/objImportFns.d.ts.map +1 -0
  1345. package/dist/vendored/brepjs/io/objImportFns.js +96 -0
  1346. package/dist/vendored/brepjs/io/objImportFns.js.map +1 -0
  1347. package/dist/vendored/brepjs/io/stepConfigFns.d.ts +30 -0
  1348. package/dist/vendored/brepjs/io/stepConfigFns.d.ts.map +1 -0
  1349. package/dist/vendored/brepjs/io/stepConfigFns.js +30 -0
  1350. package/dist/vendored/brepjs/io/stepConfigFns.js.map +1 -0
  1351. package/dist/vendored/brepjs/io/svgImportFns.d.ts +58 -0
  1352. package/dist/vendored/brepjs/io/svgImportFns.d.ts.map +1 -0
  1353. package/dist/vendored/brepjs/io/svgImportFns.js +394 -0
  1354. package/dist/vendored/brepjs/io/svgImportFns.js.map +1 -0
  1355. package/dist/vendored/brepjs/io/threemfExportFns.d.ts +48 -0
  1356. package/dist/vendored/brepjs/io/threemfExportFns.d.ts.map +1 -0
  1357. package/dist/vendored/brepjs/io/threemfExportFns.js +345 -0
  1358. package/dist/vendored/brepjs/io/threemfExportFns.js.map +1 -0
  1359. package/dist/vendored/brepjs/io/threemfImportFns.d.ts +22 -0
  1360. package/dist/vendored/brepjs/io/threemfImportFns.d.ts.map +1 -0
  1361. package/dist/vendored/brepjs/io/threemfImportFns.js +350 -0
  1362. package/dist/vendored/brepjs/io/threemfImportFns.js.map +1 -0
  1363. package/dist/vendored/brepjs/io.d.ts +17 -0
  1364. package/dist/vendored/brepjs/io.d.ts.map +1 -0
  1365. package/dist/vendored/brepjs/io.js +20 -0
  1366. package/dist/vendored/brepjs/io.js.map +1 -0
  1367. package/dist/vendored/brepjs/kernel/capabilities.d.ts +36 -0
  1368. package/dist/vendored/brepjs/kernel/capabilities.d.ts.map +1 -0
  1369. package/dist/vendored/brepjs/kernel/capabilities.js +35 -0
  1370. package/dist/vendored/brepjs/kernel/capabilities.js.map +1 -0
  1371. package/dist/vendored/brepjs/kernel/geometry2d.d.ts +96 -0
  1372. package/dist/vendored/brepjs/kernel/geometry2d.d.ts.map +1 -0
  1373. package/dist/vendored/brepjs/kernel/geometry2d.js +885 -0
  1374. package/dist/vendored/brepjs/kernel/geometry2d.js.map +1 -0
  1375. package/dist/vendored/brepjs/kernel/hullGeometry.d.ts +23 -0
  1376. package/dist/vendored/brepjs/kernel/hullGeometry.d.ts.map +1 -0
  1377. package/dist/vendored/brepjs/kernel/hullGeometry.js +312 -0
  1378. package/dist/vendored/brepjs/kernel/hullGeometry.js.map +1 -0
  1379. package/dist/vendored/brepjs/kernel/index.d.ts +61 -0
  1380. package/dist/vendored/brepjs/kernel/index.d.ts.map +1 -0
  1381. package/dist/vendored/brepjs/kernel/index.js +93 -0
  1382. package/dist/vendored/brepjs/kernel/index.js.map +1 -0
  1383. package/dist/vendored/brepjs/kernel/interfaces/booleanOps.d.ts +44 -0
  1384. package/dist/vendored/brepjs/kernel/interfaces/booleanOps.d.ts.map +1 -0
  1385. package/dist/vendored/brepjs/kernel/interfaces/booleanOps.js +11 -0
  1386. package/dist/vendored/brepjs/kernel/interfaces/booleanOps.js.map +1 -0
  1387. package/dist/vendored/brepjs/kernel/interfaces/builderOps.d.ts +67 -0
  1388. package/dist/vendored/brepjs/kernel/interfaces/builderOps.d.ts.map +1 -0
  1389. package/dist/vendored/brepjs/kernel/interfaces/builderOps.js +12 -0
  1390. package/dist/vendored/brepjs/kernel/interfaces/builderOps.js.map +1 -0
  1391. package/dist/vendored/brepjs/kernel/interfaces/core.d.ts +46 -0
  1392. package/dist/vendored/brepjs/kernel/interfaces/core.d.ts.map +1 -0
  1393. package/dist/vendored/brepjs/kernel/interfaces/core.js +11 -0
  1394. package/dist/vendored/brepjs/kernel/interfaces/core.js.map +1 -0
  1395. package/dist/vendored/brepjs/kernel/interfaces/curveOps.d.ts +53 -0
  1396. package/dist/vendored/brepjs/kernel/interfaces/curveOps.d.ts.map +1 -0
  1397. package/dist/vendored/brepjs/kernel/interfaces/curveOps.js +12 -0
  1398. package/dist/vendored/brepjs/kernel/interfaces/curveOps.js.map +1 -0
  1399. package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.d.ts +32 -0
  1400. package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.d.ts.map +1 -0
  1401. package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.js +14 -0
  1402. package/dist/vendored/brepjs/kernel/interfaces/evolutionOps.js.map +1 -0
  1403. package/dist/vendored/brepjs/kernel/interfaces/index.d.ts +43 -0
  1404. package/dist/vendored/brepjs/kernel/interfaces/index.d.ts.map +1 -0
  1405. package/dist/vendored/brepjs/kernel/interfaces/index.js +12 -0
  1406. package/dist/vendored/brepjs/kernel/interfaces/index.js.map +1 -0
  1407. package/dist/vendored/brepjs/kernel/interfaces/ioOps.d.ts +65 -0
  1408. package/dist/vendored/brepjs/kernel/interfaces/ioOps.d.ts.map +1 -0
  1409. package/dist/vendored/brepjs/kernel/interfaces/ioOps.js +9 -0
  1410. package/dist/vendored/brepjs/kernel/interfaces/ioOps.js.map +1 -0
  1411. package/dist/vendored/brepjs/kernel/interfaces/measureOps.d.ts +55 -0
  1412. package/dist/vendored/brepjs/kernel/interfaces/measureOps.d.ts.map +1 -0
  1413. package/dist/vendored/brepjs/kernel/interfaces/measureOps.js +9 -0
  1414. package/dist/vendored/brepjs/kernel/interfaces/measureOps.js.map +1 -0
  1415. package/dist/vendored/brepjs/kernel/interfaces/meshOps.d.ts +25 -0
  1416. package/dist/vendored/brepjs/kernel/interfaces/meshOps.d.ts.map +1 -0
  1417. package/dist/vendored/brepjs/kernel/interfaces/meshOps.js +8 -0
  1418. package/dist/vendored/brepjs/kernel/interfaces/meshOps.js.map +1 -0
  1419. package/dist/vendored/brepjs/kernel/interfaces/modifierOps.d.ts +53 -0
  1420. package/dist/vendored/brepjs/kernel/interfaces/modifierOps.d.ts.map +1 -0
  1421. package/dist/vendored/brepjs/kernel/interfaces/modifierOps.js +10 -0
  1422. package/dist/vendored/brepjs/kernel/interfaces/modifierOps.js.map +1 -0
  1423. package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.d.ts +22 -0
  1424. package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.d.ts.map +1 -0
  1425. package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.js +11 -0
  1426. package/dist/vendored/brepjs/kernel/interfaces/primitiveOps.js.map +1 -0
  1427. package/dist/vendored/brepjs/kernel/interfaces/repairOps.d.ts +43 -0
  1428. package/dist/vendored/brepjs/kernel/interfaces/repairOps.d.ts.map +1 -0
  1429. package/dist/vendored/brepjs/kernel/interfaces/repairOps.js +9 -0
  1430. package/dist/vendored/brepjs/kernel/interfaces/repairOps.js.map +1 -0
  1431. package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.d.ts +72 -0
  1432. package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.d.ts.map +1 -0
  1433. package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.js +13 -0
  1434. package/dist/vendored/brepjs/kernel/interfaces/surfaceOps.js.map +1 -0
  1435. package/dist/vendored/brepjs/kernel/interfaces/sweepOps.d.ts +73 -0
  1436. package/dist/vendored/brepjs/kernel/interfaces/sweepOps.d.ts.map +1 -0
  1437. package/dist/vendored/brepjs/kernel/interfaces/sweepOps.js +11 -0
  1438. package/dist/vendored/brepjs/kernel/interfaces/sweepOps.js.map +1 -0
  1439. package/dist/vendored/brepjs/kernel/interfaces/topologyOps.d.ts +62 -0
  1440. package/dist/vendored/brepjs/kernel/interfaces/topologyOps.d.ts.map +1 -0
  1441. package/dist/vendored/brepjs/kernel/interfaces/topologyOps.js +9 -0
  1442. package/dist/vendored/brepjs/kernel/interfaces/topologyOps.js.map +1 -0
  1443. package/dist/vendored/brepjs/kernel/interfaces/transformOps.d.ts +80 -0
  1444. package/dist/vendored/brepjs/kernel/interfaces/transformOps.d.ts.map +1 -0
  1445. package/dist/vendored/brepjs/kernel/interfaces/transformOps.js +11 -0
  1446. package/dist/vendored/brepjs/kernel/interfaces/transformOps.js.map +1 -0
  1447. package/dist/vendored/brepjs/kernel/kernel2dTypes.d.ts +145 -0
  1448. package/dist/vendored/brepjs/kernel/kernel2dTypes.d.ts.map +1 -0
  1449. package/dist/vendored/brepjs/kernel/kernel2dTypes.js +18 -0
  1450. package/dist/vendored/brepjs/kernel/kernel2dTypes.js.map +1 -0
  1451. package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.d.ts +41 -0
  1452. package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.d.ts.map +1 -0
  1453. package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.js +2 -0
  1454. package/dist/vendored/brepjs/kernel/occt/wasmTypes/externals.js.map +1 -0
  1455. package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.d.ts +17 -0
  1456. package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.d.ts.map +1 -0
  1457. package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.js +75 -0
  1458. package/dist/vendored/brepjs/kernel/occtWasm/adapterShims.js.map +1 -0
  1459. package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.d.ts +36 -0
  1460. package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.d.ts.map +1 -0
  1461. package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.js +116 -0
  1462. package/dist/vendored/brepjs/kernel/occtWasm/booleanOps.js.map +1 -0
  1463. package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.d.ts +43 -0
  1464. package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.d.ts.map +1 -0
  1465. package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.js +292 -0
  1466. package/dist/vendored/brepjs/kernel/occtWasm/constructionOps.js.map +1 -0
  1467. package/dist/vendored/brepjs/kernel/occtWasm/curveOps.d.ts +34 -0
  1468. package/dist/vendored/brepjs/kernel/occtWasm/curveOps.d.ts.map +1 -0
  1469. package/dist/vendored/brepjs/kernel/occtWasm/curveOps.js +164 -0
  1470. package/dist/vendored/brepjs/kernel/occtWasm/curveOps.js.map +1 -0
  1471. package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.d.ts +26 -0
  1472. package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.d.ts.map +1 -0
  1473. package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.js +256 -0
  1474. package/dist/vendored/brepjs/kernel/occtWasm/evolutionOps.js.map +1 -0
  1475. package/dist/vendored/brepjs/kernel/occtWasm/helpers.d.ts +42 -0
  1476. package/dist/vendored/brepjs/kernel/occtWasm/helpers.d.ts.map +1 -0
  1477. package/dist/vendored/brepjs/kernel/occtWasm/helpers.js +146 -0
  1478. package/dist/vendored/brepjs/kernel/occtWasm/helpers.js.map +1 -0
  1479. package/dist/vendored/brepjs/kernel/occtWasm/hullOps.d.ts +17 -0
  1480. package/dist/vendored/brepjs/kernel/occtWasm/hullOps.d.ts.map +1 -0
  1481. package/dist/vendored/brepjs/kernel/occtWasm/hullOps.js +55 -0
  1482. package/dist/vendored/brepjs/kernel/occtWasm/hullOps.js.map +1 -0
  1483. package/dist/vendored/brepjs/kernel/occtWasm/ioOps.d.ts +58 -0
  1484. package/dist/vendored/brepjs/kernel/occtWasm/ioOps.d.ts.map +1 -0
  1485. package/dist/vendored/brepjs/kernel/occtWasm/ioOps.js +303 -0
  1486. package/dist/vendored/brepjs/kernel/occtWasm/ioOps.js.map +1 -0
  1487. package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.d.ts +113 -0
  1488. package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.d.ts.map +1 -0
  1489. package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.js +731 -0
  1490. package/dist/vendored/brepjs/kernel/occtWasm/kernel2dOps.js.map +1 -0
  1491. package/dist/vendored/brepjs/kernel/occtWasm/measureOps.d.ts +62 -0
  1492. package/dist/vendored/brepjs/kernel/occtWasm/measureOps.d.ts.map +1 -0
  1493. package/dist/vendored/brepjs/kernel/occtWasm/measureOps.js +338 -0
  1494. package/dist/vendored/brepjs/kernel/occtWasm/measureOps.js.map +1 -0
  1495. package/dist/vendored/brepjs/kernel/occtWasm/meshOps.d.ts +12 -0
  1496. package/dist/vendored/brepjs/kernel/occtWasm/meshOps.d.ts.map +1 -0
  1497. package/dist/vendored/brepjs/kernel/occtWasm/meshOps.js +120 -0
  1498. package/dist/vendored/brepjs/kernel/occtWasm/meshOps.js.map +1 -0
  1499. package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.d.ts +20 -0
  1500. package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.d.ts.map +1 -0
  1501. package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.js +187 -0
  1502. package/dist/vendored/brepjs/kernel/occtWasm/modifierOps.js.map +1 -0
  1503. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.d.ts +513 -0
  1504. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.d.ts.map +1 -0
  1505. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.js +1016 -0
  1506. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmAdapter.js.map +1 -0
  1507. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.d.ts +332 -0
  1508. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.d.ts.map +1 -0
  1509. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.js +10 -0
  1510. package/dist/vendored/brepjs/kernel/occtWasm/occtWasmTypes.js.map +1 -0
  1511. package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.d.ts +16 -0
  1512. package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.d.ts.map +1 -0
  1513. package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.js +64 -0
  1514. package/dist/vendored/brepjs/kernel/occtWasm/primitiveOps.js.map +1 -0
  1515. package/dist/vendored/brepjs/kernel/occtWasm/repairOps.d.ts +16 -0
  1516. package/dist/vendored/brepjs/kernel/occtWasm/repairOps.d.ts.map +1 -0
  1517. package/dist/vendored/brepjs/kernel/occtWasm/repairOps.js +38 -0
  1518. package/dist/vendored/brepjs/kernel/occtWasm/repairOps.js.map +1 -0
  1519. package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.d.ts +56 -0
  1520. package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.d.ts.map +1 -0
  1521. package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.js +247 -0
  1522. package/dist/vendored/brepjs/kernel/occtWasm/surfaceOps.js.map +1 -0
  1523. package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.d.ts +56 -0
  1524. package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.d.ts.map +1 -0
  1525. package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.js +235 -0
  1526. package/dist/vendored/brepjs/kernel/occtWasm/sweepOps.js.map +1 -0
  1527. package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.d.ts +25 -0
  1528. package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.d.ts.map +1 -0
  1529. package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.js +127 -0
  1530. package/dist/vendored/brepjs/kernel/occtWasm/topologyOps.js.map +1 -0
  1531. package/dist/vendored/brepjs/kernel/occtWasm/transformOps.d.ts +40 -0
  1532. package/dist/vendored/brepjs/kernel/occtWasm/transformOps.d.ts.map +1 -0
  1533. package/dist/vendored/brepjs/kernel/occtWasm/transformOps.js +275 -0
  1534. package/dist/vendored/brepjs/kernel/occtWasm/transformOps.js.map +1 -0
  1535. package/dist/vendored/brepjs/kernel/quality.d.ts +28 -0
  1536. package/dist/vendored/brepjs/kernel/quality.d.ts.map +1 -0
  1537. package/dist/vendored/brepjs/kernel/quality.js +40 -0
  1538. package/dist/vendored/brepjs/kernel/quality.js.map +1 -0
  1539. package/dist/vendored/brepjs/kernel/solverAdapter.d.ts +50 -0
  1540. package/dist/vendored/brepjs/kernel/solverAdapter.d.ts.map +1 -0
  1541. package/dist/vendored/brepjs/kernel/solverAdapter.js +330 -0
  1542. package/dist/vendored/brepjs/kernel/solverAdapter.js.map +1 -0
  1543. package/dist/vendored/brepjs/kernel/stlBuilder.d.ts +21 -0
  1544. package/dist/vendored/brepjs/kernel/stlBuilder.d.ts.map +1 -0
  1545. package/dist/vendored/brepjs/kernel/stlBuilder.js +106 -0
  1546. package/dist/vendored/brepjs/kernel/stlBuilder.js.map +1 -0
  1547. package/dist/vendored/brepjs/kernel/types.d.ts +214 -0
  1548. package/dist/vendored/brepjs/kernel/types.d.ts.map +1 -0
  1549. package/dist/vendored/brepjs/kernel/types.js +22 -0
  1550. package/dist/vendored/brepjs/kernel/types.js.map +1 -0
  1551. package/dist/vendored/brepjs/kernel/unsupported.d.ts +15 -0
  1552. package/dist/vendored/brepjs/kernel/unsupported.d.ts.map +1 -0
  1553. package/dist/vendored/brepjs/kernel/unsupported.js +25 -0
  1554. package/dist/vendored/brepjs/kernel/unsupported.js.map +1 -0
  1555. package/dist/vendored/brepjs/measurement/interferenceFns.d.ts +68 -0
  1556. package/dist/vendored/brepjs/measurement/interferenceFns.d.ts.map +1 -0
  1557. package/dist/vendored/brepjs/measurement/interferenceFns.js +102 -0
  1558. package/dist/vendored/brepjs/measurement/interferenceFns.js.map +1 -0
  1559. package/dist/vendored/brepjs/measurement/measureCache.d.ts +20 -0
  1560. package/dist/vendored/brepjs/measurement/measureCache.d.ts.map +1 -0
  1561. package/dist/vendored/brepjs/measurement/measureCache.js +28 -0
  1562. package/dist/vendored/brepjs/measurement/measureCache.js.map +1 -0
  1563. package/dist/vendored/brepjs/measurement/measureFns.d.ts +92 -0
  1564. package/dist/vendored/brepjs/measurement/measureFns.d.ts.map +1 -0
  1565. package/dist/vendored/brepjs/measurement/measureFns.js +239 -0
  1566. package/dist/vendored/brepjs/measurement/measureFns.js.map +1 -0
  1567. package/dist/vendored/brepjs/measurement/measureTypes.d.ts +35 -0
  1568. package/dist/vendored/brepjs/measurement/measureTypes.d.ts.map +1 -0
  1569. package/dist/vendored/brepjs/measurement/measureTypes.js +7 -0
  1570. package/dist/vendored/brepjs/measurement/measureTypes.js.map +1 -0
  1571. package/dist/vendored/brepjs/measurement.d.ts +5 -0
  1572. package/dist/vendored/brepjs/measurement.d.ts.map +1 -0
  1573. package/dist/vendored/brepjs/measurement.js +5 -0
  1574. package/dist/vendored/brepjs/measurement.js.map +1 -0
  1575. package/dist/vendored/brepjs/ns/booleans.d.ts +11 -0
  1576. package/dist/vendored/brepjs/ns/booleans.d.ts.map +1 -0
  1577. package/dist/vendored/brepjs/ns/booleans.js +11 -0
  1578. package/dist/vendored/brepjs/ns/booleans.js.map +1 -0
  1579. package/dist/vendored/brepjs/ns/construction.d.ts +10 -0
  1580. package/dist/vendored/brepjs/ns/construction.d.ts.map +1 -0
  1581. package/dist/vendored/brepjs/ns/construction.js +10 -0
  1582. package/dist/vendored/brepjs/ns/construction.js.map +1 -0
  1583. package/dist/vendored/brepjs/ns/ioNs.d.ts +18 -0
  1584. package/dist/vendored/brepjs/ns/ioNs.d.ts.map +1 -0
  1585. package/dist/vendored/brepjs/ns/ioNs.js +20 -0
  1586. package/dist/vendored/brepjs/ns/ioNs.js.map +1 -0
  1587. package/dist/vendored/brepjs/ns/measurement.d.ts +6 -0
  1588. package/dist/vendored/brepjs/ns/measurement.d.ts.map +1 -0
  1589. package/dist/vendored/brepjs/ns/measurement.js +6 -0
  1590. package/dist/vendored/brepjs/ns/measurement.js.map +1 -0
  1591. package/dist/vendored/brepjs/ns/modifiers.d.ts +6 -0
  1592. package/dist/vendored/brepjs/ns/modifiers.d.ts.map +1 -0
  1593. package/dist/vendored/brepjs/ns/modifiers.js +6 -0
  1594. package/dist/vendored/brepjs/ns/modifiers.js.map +1 -0
  1595. package/dist/vendored/brepjs/ns/patterns.d.ts +5 -0
  1596. package/dist/vendored/brepjs/ns/patterns.d.ts.map +1 -0
  1597. package/dist/vendored/brepjs/ns/patterns.js +5 -0
  1598. package/dist/vendored/brepjs/ns/patterns.js.map +1 -0
  1599. package/dist/vendored/brepjs/ns/primitives.d.ts +7 -0
  1600. package/dist/vendored/brepjs/ns/primitives.d.ts.map +1 -0
  1601. package/dist/vendored/brepjs/ns/primitives.js +7 -0
  1602. package/dist/vendored/brepjs/ns/primitives.js.map +1 -0
  1603. package/dist/vendored/brepjs/ns/query.d.ts +6 -0
  1604. package/dist/vendored/brepjs/ns/query.d.ts.map +1 -0
  1605. package/dist/vendored/brepjs/ns/query.js +6 -0
  1606. package/dist/vendored/brepjs/ns/query.js.map +1 -0
  1607. package/dist/vendored/brepjs/ns/transforms.d.ts +5 -0
  1608. package/dist/vendored/brepjs/ns/transforms.d.ts.map +1 -0
  1609. package/dist/vendored/brepjs/ns/transforms.js +5 -0
  1610. package/dist/vendored/brepjs/ns/transforms.js.map +1 -0
  1611. package/dist/vendored/brepjs/operations/api.d.ts +39 -0
  1612. package/dist/vendored/brepjs/operations/api.d.ts.map +1 -0
  1613. package/dist/vendored/brepjs/operations/api.js +41 -0
  1614. package/dist/vendored/brepjs/operations/api.js.map +1 -0
  1615. package/dist/vendored/brepjs/operations/assemblyFns.d.ts +54 -0
  1616. package/dist/vendored/brepjs/operations/assemblyFns.d.ts.map +1 -0
  1617. package/dist/vendored/brepjs/operations/assemblyFns.js +91 -0
  1618. package/dist/vendored/brepjs/operations/assemblyFns.js.map +1 -0
  1619. package/dist/vendored/brepjs/operations/compoundOpsFns.d.ts +43 -0
  1620. package/dist/vendored/brepjs/operations/compoundOpsFns.d.ts.map +1 -0
  1621. package/dist/vendored/brepjs/operations/compoundOpsFns.js +368 -0
  1622. package/dist/vendored/brepjs/operations/compoundOpsFns.js.map +1 -0
  1623. package/dist/vendored/brepjs/operations/convexHullFns.d.ts +27 -0
  1624. package/dist/vendored/brepjs/operations/convexHullFns.d.ts.map +1 -0
  1625. package/dist/vendored/brepjs/operations/convexHullFns.js +50 -0
  1626. package/dist/vendored/brepjs/operations/convexHullFns.js.map +1 -0
  1627. package/dist/vendored/brepjs/operations/dhFns.d.ts +47 -0
  1628. package/dist/vendored/brepjs/operations/dhFns.d.ts.map +1 -0
  1629. package/dist/vendored/brepjs/operations/dhFns.js +53 -0
  1630. package/dist/vendored/brepjs/operations/dhFns.js.map +1 -0
  1631. package/dist/vendored/brepjs/operations/exporterFns.d.ts +47 -0
  1632. package/dist/vendored/brepjs/operations/exporterFns.d.ts.map +1 -0
  1633. package/dist/vendored/brepjs/operations/exporterFns.js +66 -0
  1634. package/dist/vendored/brepjs/operations/exporterFns.js.map +1 -0
  1635. package/dist/vendored/brepjs/operations/exporterUtils.d.ts +6 -0
  1636. package/dist/vendored/brepjs/operations/exporterUtils.d.ts.map +1 -0
  1637. package/dist/vendored/brepjs/operations/exporterUtils.js +5 -0
  1638. package/dist/vendored/brepjs/operations/exporterUtils.js.map +1 -0
  1639. package/dist/vendored/brepjs/operations/exporters.d.ts +59 -0
  1640. package/dist/vendored/brepjs/operations/exporters.d.ts.map +1 -0
  1641. package/dist/vendored/brepjs/operations/exporters.js +74 -0
  1642. package/dist/vendored/brepjs/operations/exporters.js.map +1 -0
  1643. package/dist/vendored/brepjs/operations/extrudeFns.d.ts +47 -0
  1644. package/dist/vendored/brepjs/operations/extrudeFns.d.ts.map +1 -0
  1645. package/dist/vendored/brepjs/operations/extrudeFns.js +119 -0
  1646. package/dist/vendored/brepjs/operations/extrudeFns.js.map +1 -0
  1647. package/dist/vendored/brepjs/operations/extrudeUtils.d.ts +63 -0
  1648. package/dist/vendored/brepjs/operations/extrudeUtils.d.ts.map +1 -0
  1649. package/dist/vendored/brepjs/operations/extrudeUtils.js +33 -0
  1650. package/dist/vendored/brepjs/operations/extrudeUtils.js.map +1 -0
  1651. package/dist/vendored/brepjs/operations/guidedSweepFns.d.ts +6 -0
  1652. package/dist/vendored/brepjs/operations/guidedSweepFns.d.ts.map +1 -0
  1653. package/dist/vendored/brepjs/operations/guidedSweepFns.js +6 -0
  1654. package/dist/vendored/brepjs/operations/guidedSweepFns.js.map +1 -0
  1655. package/dist/vendored/brepjs/operations/historyFns.d.ts +83 -0
  1656. package/dist/vendored/brepjs/operations/historyFns.d.ts.map +1 -0
  1657. package/dist/vendored/brepjs/operations/historyFns.js +256 -0
  1658. package/dist/vendored/brepjs/operations/historyFns.js.map +1 -0
  1659. package/dist/vendored/brepjs/operations/ikFns.d.ts +74 -0
  1660. package/dist/vendored/brepjs/operations/ikFns.d.ts.map +1 -0
  1661. package/dist/vendored/brepjs/operations/ikFns.js +320 -0
  1662. package/dist/vendored/brepjs/operations/ikFns.js.map +1 -0
  1663. package/dist/vendored/brepjs/operations/instanceFns.d.ts +76 -0
  1664. package/dist/vendored/brepjs/operations/instanceFns.d.ts.map +1 -0
  1665. package/dist/vendored/brepjs/operations/instanceFns.js +128 -0
  1666. package/dist/vendored/brepjs/operations/instanceFns.js.map +1 -0
  1667. package/dist/vendored/brepjs/operations/jointFns.d.ts +176 -0
  1668. package/dist/vendored/brepjs/operations/jointFns.d.ts.map +1 -0
  1669. package/dist/vendored/brepjs/operations/jointFns.js +298 -0
  1670. package/dist/vendored/brepjs/operations/jointFns.js.map +1 -0
  1671. package/dist/vendored/brepjs/operations/loftFns.d.ts +60 -0
  1672. package/dist/vendored/brepjs/operations/loftFns.d.ts.map +1 -0
  1673. package/dist/vendored/brepjs/operations/loftFns.js +112 -0
  1674. package/dist/vendored/brepjs/operations/loftFns.js.map +1 -0
  1675. package/dist/vendored/brepjs/operations/mateFns.d.ts +53 -0
  1676. package/dist/vendored/brepjs/operations/mateFns.d.ts.map +1 -0
  1677. package/dist/vendored/brepjs/operations/mateFns.js +142 -0
  1678. package/dist/vendored/brepjs/operations/mateFns.js.map +1 -0
  1679. package/dist/vendored/brepjs/operations/multiSweepFns.d.ts +6 -0
  1680. package/dist/vendored/brepjs/operations/multiSweepFns.d.ts.map +1 -0
  1681. package/dist/vendored/brepjs/operations/multiSweepFns.js +6 -0
  1682. package/dist/vendored/brepjs/operations/multiSweepFns.js.map +1 -0
  1683. package/dist/vendored/brepjs/operations/patternFns.d.ts +46 -0
  1684. package/dist/vendored/brepjs/operations/patternFns.d.ts.map +1 -0
  1685. package/dist/vendored/brepjs/operations/patternFns.js +126 -0
  1686. package/dist/vendored/brepjs/operations/patternFns.js.map +1 -0
  1687. package/dist/vendored/brepjs/operations/roofFns.d.ts +25 -0
  1688. package/dist/vendored/brepjs/operations/roofFns.d.ts.map +1 -0
  1689. package/dist/vendored/brepjs/operations/roofFns.js +250 -0
  1690. package/dist/vendored/brepjs/operations/roofFns.js.map +1 -0
  1691. package/dist/vendored/brepjs/operations/straightSkeleton.d.ts +29 -0
  1692. package/dist/vendored/brepjs/operations/straightSkeleton.d.ts.map +1 -0
  1693. package/dist/vendored/brepjs/operations/straightSkeleton.js +440 -0
  1694. package/dist/vendored/brepjs/operations/straightSkeleton.js.map +1 -0
  1695. package/dist/vendored/brepjs/operations/sweepFns.d.ts +121 -0
  1696. package/dist/vendored/brepjs/operations/sweepFns.d.ts.map +1 -0
  1697. package/dist/vendored/brepjs/operations/sweepFns.js +438 -0
  1698. package/dist/vendored/brepjs/operations/sweepFns.js.map +1 -0
  1699. package/dist/vendored/brepjs/operations/threadFns.d.ts +57 -0
  1700. package/dist/vendored/brepjs/operations/threadFns.d.ts.map +1 -0
  1701. package/dist/vendored/brepjs/operations/threadFns.js +145 -0
  1702. package/dist/vendored/brepjs/operations/threadFns.js.map +1 -0
  1703. package/dist/vendored/brepjs/operations/urdfFns.d.ts +48 -0
  1704. package/dist/vendored/brepjs/operations/urdfFns.d.ts.map +1 -0
  1705. package/dist/vendored/brepjs/operations/urdfFns.js +171 -0
  1706. package/dist/vendored/brepjs/operations/urdfFns.js.map +1 -0
  1707. package/dist/vendored/brepjs/operations.d.ts +20 -0
  1708. package/dist/vendored/brepjs/operations.d.ts.map +1 -0
  1709. package/dist/vendored/brepjs/operations.js +26 -0
  1710. package/dist/vendored/brepjs/operations.js.map +1 -0
  1711. package/dist/vendored/brepjs/projection/cameraFns.d.ts +63 -0
  1712. package/dist/vendored/brepjs/projection/cameraFns.d.ts.map +1 -0
  1713. package/dist/vendored/brepjs/projection/cameraFns.js +89 -0
  1714. package/dist/vendored/brepjs/projection/cameraFns.js.map +1 -0
  1715. package/dist/vendored/brepjs/projection/makeProjectedEdges.d.ts +14 -0
  1716. package/dist/vendored/brepjs/projection/makeProjectedEdges.d.ts.map +1 -0
  1717. package/dist/vendored/brepjs/projection/makeProjectedEdges.js +111 -0
  1718. package/dist/vendored/brepjs/projection/makeProjectedEdges.js.map +1 -0
  1719. package/dist/vendored/brepjs/projection/projectionPlanes.d.ts +18 -0
  1720. package/dist/vendored/brepjs/projection/projectionPlanes.d.ts.map +1 -0
  1721. package/dist/vendored/brepjs/projection/projectionPlanes.js +23 -0
  1722. package/dist/vendored/brepjs/projection/projectionPlanes.js.map +1 -0
  1723. package/dist/vendored/brepjs/projection.d.ts +12 -0
  1724. package/dist/vendored/brepjs/projection.d.ts.map +1 -0
  1725. package/dist/vendored/brepjs/projection.js +12 -0
  1726. package/dist/vendored/brepjs/projection.js.map +1 -0
  1727. package/dist/vendored/brepjs/query/cornerFinder.d.ts +54 -0
  1728. package/dist/vendored/brepjs/query/cornerFinder.d.ts.map +1 -0
  1729. package/dist/vendored/brepjs/query/cornerFinder.js +73 -0
  1730. package/dist/vendored/brepjs/query/cornerFinder.js.map +1 -0
  1731. package/dist/vendored/brepjs/query/directionUtils.d.ts +9 -0
  1732. package/dist/vendored/brepjs/query/directionUtils.d.ts.map +1 -0
  1733. package/dist/vendored/brepjs/query/directionUtils.js +18 -0
  1734. package/dist/vendored/brepjs/query/directionUtils.js.map +1 -0
  1735. package/dist/vendored/brepjs/query/edgeFinder.d.ts +5 -0
  1736. package/dist/vendored/brepjs/query/edgeFinder.d.ts.map +1 -0
  1737. package/dist/vendored/brepjs/query/edgeFinder.js +5 -0
  1738. package/dist/vendored/brepjs/query/edgeFinder.js.map +1 -0
  1739. package/dist/vendored/brepjs/query/faceFinder.d.ts +5 -0
  1740. package/dist/vendored/brepjs/query/faceFinder.d.ts.map +1 -0
  1741. package/dist/vendored/brepjs/query/faceFinder.js +5 -0
  1742. package/dist/vendored/brepjs/query/faceFinder.js.map +1 -0
  1743. package/dist/vendored/brepjs/query/finderCore.d.ts +49 -0
  1744. package/dist/vendored/brepjs/query/finderCore.d.ts.map +1 -0
  1745. package/dist/vendored/brepjs/query/finderCore.js +120 -0
  1746. package/dist/vendored/brepjs/query/finderCore.js.map +1 -0
  1747. package/dist/vendored/brepjs/query/finderFns.d.ts +25 -0
  1748. package/dist/vendored/brepjs/query/finderFns.d.ts.map +1 -0
  1749. package/dist/vendored/brepjs/query/finderFns.js +25 -0
  1750. package/dist/vendored/brepjs/query/finderFns.js.map +1 -0
  1751. package/dist/vendored/brepjs/query/helpers.d.ts +11 -0
  1752. package/dist/vendored/brepjs/query/helpers.d.ts.map +1 -0
  1753. package/dist/vendored/brepjs/query/helpers.js +17 -0
  1754. package/dist/vendored/brepjs/query/helpers.js.map +1 -0
  1755. package/dist/vendored/brepjs/query/shapeDistanceFilter.d.ts +15 -0
  1756. package/dist/vendored/brepjs/query/shapeDistanceFilter.d.ts.map +1 -0
  1757. package/dist/vendored/brepjs/query/shapeDistanceFilter.js +21 -0
  1758. package/dist/vendored/brepjs/query/shapeDistanceFilter.js.map +1 -0
  1759. package/dist/vendored/brepjs/query/shapeFinders.d.ts +39 -0
  1760. package/dist/vendored/brepjs/query/shapeFinders.d.ts.map +1 -0
  1761. package/dist/vendored/brepjs/query/shapeFinders.js +82 -0
  1762. package/dist/vendored/brepjs/query/shapeFinders.js.map +1 -0
  1763. package/dist/vendored/brepjs/query/vertexFinder.d.ts +19 -0
  1764. package/dist/vendored/brepjs/query/vertexFinder.d.ts.map +1 -0
  1765. package/dist/vendored/brepjs/query/vertexFinder.js +73 -0
  1766. package/dist/vendored/brepjs/query/vertexFinder.js.map +1 -0
  1767. package/dist/vendored/brepjs/query/wireFinder.d.ts +5 -0
  1768. package/dist/vendored/brepjs/query/wireFinder.d.ts.map +1 -0
  1769. package/dist/vendored/brepjs/query/wireFinder.js +5 -0
  1770. package/dist/vendored/brepjs/query/wireFinder.js.map +1 -0
  1771. package/dist/vendored/brepjs/query.d.ts +6 -0
  1772. package/dist/vendored/brepjs/query.d.ts.map +1 -0
  1773. package/dist/vendored/brepjs/query.js +6 -0
  1774. package/dist/vendored/brepjs/query.js.map +1 -0
  1775. package/dist/vendored/brepjs/result.d.ts +7 -0
  1776. package/dist/vendored/brepjs/result.d.ts.map +1 -0
  1777. package/dist/vendored/brepjs/result.js +7 -0
  1778. package/dist/vendored/brepjs/result.js.map +1 -0
  1779. package/dist/vendored/brepjs/shapeRef.d.ts +13 -0
  1780. package/dist/vendored/brepjs/shapeRef.d.ts.map +1 -0
  1781. package/dist/vendored/brepjs/shapeRef.js +13 -0
  1782. package/dist/vendored/brepjs/shapeRef.js.map +1 -0
  1783. package/dist/vendored/brepjs/sketching/cannedSketches.d.ts +144 -0
  1784. package/dist/vendored/brepjs/sketching/cannedSketches.d.ts.map +1 -0
  1785. package/dist/vendored/brepjs/sketching/cannedSketches.js +327 -0
  1786. package/dist/vendored/brepjs/sketching/cannedSketches.js.map +1 -0
  1787. package/dist/vendored/brepjs/sketching/compoundSketch.d.ts +70 -0
  1788. package/dist/vendored/brepjs/sketching/compoundSketch.d.ts.map +1 -0
  1789. package/dist/vendored/brepjs/sketching/compoundSketch.js +87 -0
  1790. package/dist/vendored/brepjs/sketching/compoundSketch.js.map +1 -0
  1791. package/dist/vendored/brepjs/sketching/draw3d.d.ts +22 -0
  1792. package/dist/vendored/brepjs/sketching/draw3d.d.ts.map +1 -0
  1793. package/dist/vendored/brepjs/sketching/draw3d.js +150 -0
  1794. package/dist/vendored/brepjs/sketching/draw3d.js.map +1 -0
  1795. package/dist/vendored/brepjs/sketching/drawFns.d.ts +122 -0
  1796. package/dist/vendored/brepjs/sketching/drawFns.d.ts.map +1 -0
  1797. package/dist/vendored/brepjs/sketching/drawFns.js +129 -0
  1798. package/dist/vendored/brepjs/sketching/drawFns.js.map +1 -0
  1799. package/dist/vendored/brepjs/sketching/drawing.d.ts +128 -0
  1800. package/dist/vendored/brepjs/sketching/drawing.d.ts.map +1 -0
  1801. package/dist/vendored/brepjs/sketching/drawing.js +275 -0
  1802. package/dist/vendored/brepjs/sketching/drawing.js.map +1 -0
  1803. package/dist/vendored/brepjs/sketching/drawingFactories.d.ts +95 -0
  1804. package/dist/vendored/brepjs/sketching/drawingFactories.d.ts.map +1 -0
  1805. package/dist/vendored/brepjs/sketching/drawingFactories.js +125 -0
  1806. package/dist/vendored/brepjs/sketching/drawingFactories.js.map +1 -0
  1807. package/dist/vendored/brepjs/sketching/drawingPen.d.ts +35 -0
  1808. package/dist/vendored/brepjs/sketching/drawingPen.d.ts.map +1 -0
  1809. package/dist/vendored/brepjs/sketching/drawingPen.js +57 -0
  1810. package/dist/vendored/brepjs/sketching/drawingPen.js.map +1 -0
  1811. package/dist/vendored/brepjs/sketching/faceSketcher.d.ts +53 -0
  1812. package/dist/vendored/brepjs/sketching/faceSketcher.d.ts.map +1 -0
  1813. package/dist/vendored/brepjs/sketching/faceSketcher.js +167 -0
  1814. package/dist/vendored/brepjs/sketching/faceSketcher.js.map +1 -0
  1815. package/dist/vendored/brepjs/sketching/shortcuts.d.ts +16 -0
  1816. package/dist/vendored/brepjs/sketching/shortcuts.d.ts.map +1 -0
  1817. package/dist/vendored/brepjs/sketching/shortcuts.js +24 -0
  1818. package/dist/vendored/brepjs/sketching/shortcuts.js.map +1 -0
  1819. package/dist/vendored/brepjs/sketching/sketch.d.ts +157 -0
  1820. package/dist/vendored/brepjs/sketching/sketch.d.ts.map +1 -0
  1821. package/dist/vendored/brepjs/sketching/sketch.js +151 -0
  1822. package/dist/vendored/brepjs/sketching/sketch.js.map +1 -0
  1823. package/dist/vendored/brepjs/sketching/sketchFns.d.ts +89 -0
  1824. package/dist/vendored/brepjs/sketching/sketchFns.d.ts.map +1 -0
  1825. package/dist/vendored/brepjs/sketching/sketchFns.js +266 -0
  1826. package/dist/vendored/brepjs/sketching/sketchFns.js.map +1 -0
  1827. package/dist/vendored/brepjs/sketching/sketcher.d.ts +70 -0
  1828. package/dist/vendored/brepjs/sketching/sketcher.d.ts.map +1 -0
  1829. package/dist/vendored/brepjs/sketching/sketcher.js +181 -0
  1830. package/dist/vendored/brepjs/sketching/sketcher.js.map +1 -0
  1831. package/dist/vendored/brepjs/sketching/sketches.d.ts +70 -0
  1832. package/dist/vendored/brepjs/sketching/sketches.d.ts.map +1 -0
  1833. package/dist/vendored/brepjs/sketching/sketches.js +91 -0
  1834. package/dist/vendored/brepjs/sketching/sketches.js.map +1 -0
  1835. package/dist/vendored/brepjs/sketching.d.ts +28 -0
  1836. package/dist/vendored/brepjs/sketching.d.ts.map +1 -0
  1837. package/dist/vendored/brepjs/sketching.js +30 -0
  1838. package/dist/vendored/brepjs/sketching.js.map +1 -0
  1839. package/dist/vendored/brepjs/text/fontRegistry.d.ts +23 -0
  1840. package/dist/vendored/brepjs/text/fontRegistry.d.ts.map +1 -0
  1841. package/dist/vendored/brepjs/text/fontRegistry.js +61 -0
  1842. package/dist/vendored/brepjs/text/fontRegistry.js.map +1 -0
  1843. package/dist/vendored/brepjs/text/sketchText.d.ts +31 -0
  1844. package/dist/vendored/brepjs/text/sketchText.d.ts.map +1 -0
  1845. package/dist/vendored/brepjs/text/sketchText.js +30 -0
  1846. package/dist/vendored/brepjs/text/sketchText.js.map +1 -0
  1847. package/dist/vendored/brepjs/text/textBlueprints.d.ts +19 -0
  1848. package/dist/vendored/brepjs/text/textBlueprints.d.ts.map +1 -0
  1849. package/dist/vendored/brepjs/text/textBlueprints.js +61 -0
  1850. package/dist/vendored/brepjs/text/textBlueprints.js.map +1 -0
  1851. package/dist/vendored/brepjs/text/textMetrics.d.ts +40 -0
  1852. package/dist/vendored/brepjs/text/textMetrics.d.ts.map +1 -0
  1853. package/dist/vendored/brepjs/text/textMetrics.js +43 -0
  1854. package/dist/vendored/brepjs/text/textMetrics.js.map +1 -0
  1855. package/dist/vendored/brepjs/text.d.ts +13 -0
  1856. package/dist/vendored/brepjs/text.d.ts.map +1 -0
  1857. package/dist/vendored/brepjs/text.js +13 -0
  1858. package/dist/vendored/brepjs/text.js.map +1 -0
  1859. package/dist/vendored/brepjs/topology/adjacencyFns.d.ts +89 -0
  1860. package/dist/vendored/brepjs/topology/adjacencyFns.d.ts.map +1 -0
  1861. package/dist/vendored/brepjs/topology/adjacencyFns.js +411 -0
  1862. package/dist/vendored/brepjs/topology/adjacencyFns.js.map +1 -0
  1863. package/dist/vendored/brepjs/topology/api.d.ts +145 -0
  1864. package/dist/vendored/brepjs/topology/api.d.ts.map +1 -0
  1865. package/dist/vendored/brepjs/topology/api.js +282 -0
  1866. package/dist/vendored/brepjs/topology/api.js.map +1 -0
  1867. package/dist/vendored/brepjs/topology/apiTypes.d.ts +135 -0
  1868. package/dist/vendored/brepjs/topology/apiTypes.d.ts.map +1 -0
  1869. package/dist/vendored/brepjs/topology/apiTypes.js +24 -0
  1870. package/dist/vendored/brepjs/topology/apiTypes.js.map +1 -0
  1871. package/dist/vendored/brepjs/topology/booleanBatchFns.d.ts +52 -0
  1872. package/dist/vendored/brepjs/topology/booleanBatchFns.d.ts.map +1 -0
  1873. package/dist/vendored/brepjs/topology/booleanBatchFns.js +164 -0
  1874. package/dist/vendored/brepjs/topology/booleanBatchFns.js.map +1 -0
  1875. package/dist/vendored/brepjs/topology/booleanDiagnosticFns.d.ts +21 -0
  1876. package/dist/vendored/brepjs/topology/booleanDiagnosticFns.d.ts.map +1 -0
  1877. package/dist/vendored/brepjs/topology/booleanDiagnosticFns.js +23 -0
  1878. package/dist/vendored/brepjs/topology/booleanDiagnosticFns.js.map +1 -0
  1879. package/dist/vendored/brepjs/topology/booleanFns.d.ts +155 -0
  1880. package/dist/vendored/brepjs/topology/booleanFns.d.ts.map +1 -0
  1881. package/dist/vendored/brepjs/topology/booleanFns.js +600 -0
  1882. package/dist/vendored/brepjs/topology/booleanFns.js.map +1 -0
  1883. package/dist/vendored/brepjs/topology/cast.d.ts +48 -0
  1884. package/dist/vendored/brepjs/topology/cast.d.ts.map +1 -0
  1885. package/dist/vendored/brepjs/topology/cast.js +113 -0
  1886. package/dist/vendored/brepjs/topology/cast.js.map +1 -0
  1887. package/dist/vendored/brepjs/topology/chamferAngleFns.d.ts +24 -0
  1888. package/dist/vendored/brepjs/topology/chamferAngleFns.d.ts.map +1 -0
  1889. package/dist/vendored/brepjs/topology/chamferAngleFns.js +64 -0
  1890. package/dist/vendored/brepjs/topology/chamferAngleFns.js.map +1 -0
  1891. package/dist/vendored/brepjs/topology/compoundOpsFns.d.ts +6 -0
  1892. package/dist/vendored/brepjs/topology/compoundOpsFns.d.ts.map +1 -0
  1893. package/dist/vendored/brepjs/topology/compoundOpsFns.js +6 -0
  1894. package/dist/vendored/brepjs/topology/compoundOpsFns.js.map +1 -0
  1895. package/dist/vendored/brepjs/topology/curveBuilders.d.ts +90 -0
  1896. package/dist/vendored/brepjs/topology/curveBuilders.d.ts.map +1 -0
  1897. package/dist/vendored/brepjs/topology/curveBuilders.js +125 -0
  1898. package/dist/vendored/brepjs/topology/curveBuilders.js.map +1 -0
  1899. package/dist/vendored/brepjs/topology/curveFns.d.ts +96 -0
  1900. package/dist/vendored/brepjs/topology/curveFns.d.ts.map +1 -0
  1901. package/dist/vendored/brepjs/topology/curveFns.js +191 -0
  1902. package/dist/vendored/brepjs/topology/curveFns.js.map +1 -0
  1903. package/dist/vendored/brepjs/topology/evolutionFns.d.ts +78 -0
  1904. package/dist/vendored/brepjs/topology/evolutionFns.d.ts.map +1 -0
  1905. package/dist/vendored/brepjs/topology/evolutionFns.js +271 -0
  1906. package/dist/vendored/brepjs/topology/evolutionFns.js.map +1 -0
  1907. package/dist/vendored/brepjs/topology/faceFns.d.ts +86 -0
  1908. package/dist/vendored/brepjs/topology/faceFns.d.ts.map +1 -0
  1909. package/dist/vendored/brepjs/topology/faceFns.js +169 -0
  1910. package/dist/vendored/brepjs/topology/faceFns.js.map +1 -0
  1911. package/dist/vendored/brepjs/topology/healingFns.d.ts +98 -0
  1912. package/dist/vendored/brepjs/topology/healingFns.d.ts.map +1 -0
  1913. package/dist/vendored/brepjs/topology/healingFns.js +338 -0
  1914. package/dist/vendored/brepjs/topology/healingFns.js.map +1 -0
  1915. package/dist/vendored/brepjs/topology/hullFns.d.ts +21 -0
  1916. package/dist/vendored/brepjs/topology/hullFns.d.ts.map +1 -0
  1917. package/dist/vendored/brepjs/topology/hullFns.js +60 -0
  1918. package/dist/vendored/brepjs/topology/hullFns.js.map +1 -0
  1919. package/dist/vendored/brepjs/topology/index.d.ts +14 -0
  1920. package/dist/vendored/brepjs/topology/index.d.ts.map +1 -0
  1921. package/dist/vendored/brepjs/topology/index.js +17 -0
  1922. package/dist/vendored/brepjs/topology/index.js.map +1 -0
  1923. package/dist/vendored/brepjs/topology/meshCache.d.ts +68 -0
  1924. package/dist/vendored/brepjs/topology/meshCache.d.ts.map +1 -0
  1925. package/dist/vendored/brepjs/topology/meshCache.js +117 -0
  1926. package/dist/vendored/brepjs/topology/meshCache.js.map +1 -0
  1927. package/dist/vendored/brepjs/topology/meshFns.d.ts +179 -0
  1928. package/dist/vendored/brepjs/topology/meshFns.d.ts.map +1 -0
  1929. package/dist/vendored/brepjs/topology/meshFns.js +393 -0
  1930. package/dist/vendored/brepjs/topology/meshFns.js.map +1 -0
  1931. package/dist/vendored/brepjs/topology/metadata/colorFns.d.ts +41 -0
  1932. package/dist/vendored/brepjs/topology/metadata/colorFns.d.ts.map +1 -0
  1933. package/dist/vendored/brepjs/topology/metadata/colorFns.js +128 -0
  1934. package/dist/vendored/brepjs/topology/metadata/colorFns.js.map +1 -0
  1935. package/dist/vendored/brepjs/topology/metadata/faceTagFns.d.ts +44 -0
  1936. package/dist/vendored/brepjs/topology/metadata/faceTagFns.d.ts.map +1 -0
  1937. package/dist/vendored/brepjs/topology/metadata/faceTagFns.js +168 -0
  1938. package/dist/vendored/brepjs/topology/metadata/faceTagFns.js.map +1 -0
  1939. package/dist/vendored/brepjs/topology/metadata/metadataPropagation.d.ts +59 -0
  1940. package/dist/vendored/brepjs/topology/metadata/metadataPropagation.d.ts.map +1 -0
  1941. package/dist/vendored/brepjs/topology/metadata/metadataPropagation.js +109 -0
  1942. package/dist/vendored/brepjs/topology/metadata/metadataPropagation.js.map +1 -0
  1943. package/dist/vendored/brepjs/topology/metadata/originTrackingFns.d.ts +43 -0
  1944. package/dist/vendored/brepjs/topology/metadata/originTrackingFns.d.ts.map +1 -0
  1945. package/dist/vendored/brepjs/topology/metadata/originTrackingFns.js +270 -0
  1946. package/dist/vendored/brepjs/topology/metadata/originTrackingFns.js.map +1 -0
  1947. package/dist/vendored/brepjs/topology/minkowskiFns.d.ts +26 -0
  1948. package/dist/vendored/brepjs/topology/minkowskiFns.d.ts.map +1 -0
  1949. package/dist/vendored/brepjs/topology/minkowskiFns.js +136 -0
  1950. package/dist/vendored/brepjs/topology/minkowskiFns.js.map +1 -0
  1951. package/dist/vendored/brepjs/topology/modifierFns.d.ts +87 -0
  1952. package/dist/vendored/brepjs/topology/modifierFns.d.ts.map +1 -0
  1953. package/dist/vendored/brepjs/topology/modifierFns.js +446 -0
  1954. package/dist/vendored/brepjs/topology/modifierFns.js.map +1 -0
  1955. package/dist/vendored/brepjs/topology/nurbsFns.d.ts +13 -0
  1956. package/dist/vendored/brepjs/topology/nurbsFns.d.ts.map +1 -0
  1957. package/dist/vendored/brepjs/topology/nurbsFns.js +22 -0
  1958. package/dist/vendored/brepjs/topology/nurbsFns.js.map +1 -0
  1959. package/dist/vendored/brepjs/topology/polyhedronFns.d.ts +11 -0
  1960. package/dist/vendored/brepjs/topology/polyhedronFns.d.ts.map +1 -0
  1961. package/dist/vendored/brepjs/topology/polyhedronFns.js +47 -0
  1962. package/dist/vendored/brepjs/topology/polyhedronFns.js.map +1 -0
  1963. package/dist/vendored/brepjs/topology/positionFns.d.ts +18 -0
  1964. package/dist/vendored/brepjs/topology/positionFns.d.ts.map +1 -0
  1965. package/dist/vendored/brepjs/topology/positionFns.js +34 -0
  1966. package/dist/vendored/brepjs/topology/positionFns.js.map +1 -0
  1967. package/dist/vendored/brepjs/topology/primitiveFns.d.ts +244 -0
  1968. package/dist/vendored/brepjs/topology/primitiveFns.d.ts.map +1 -0
  1969. package/dist/vendored/brepjs/topology/primitiveFns.js +361 -0
  1970. package/dist/vendored/brepjs/topology/primitiveFns.js.map +1 -0
  1971. package/dist/vendored/brepjs/topology/shapeBooleans.d.ts +14 -0
  1972. package/dist/vendored/brepjs/topology/shapeBooleans.d.ts.map +1 -0
  1973. package/dist/vendored/brepjs/topology/shapeBooleans.js +24 -0
  1974. package/dist/vendored/brepjs/topology/shapeBooleans.js.map +1 -0
  1975. package/dist/vendored/brepjs/topology/shapeFns.d.ts +30 -0
  1976. package/dist/vendored/brepjs/topology/shapeFns.d.ts.map +1 -0
  1977. package/dist/vendored/brepjs/topology/shapeFns.js +50 -0
  1978. package/dist/vendored/brepjs/topology/shapeFns.js.map +1 -0
  1979. package/dist/vendored/brepjs/topology/shapeHelpers.d.ts +9 -0
  1980. package/dist/vendored/brepjs/topology/shapeHelpers.d.ts.map +1 -0
  1981. package/dist/vendored/brepjs/topology/shapeHelpers.js +14 -0
  1982. package/dist/vendored/brepjs/topology/shapeHelpers.js.map +1 -0
  1983. package/dist/vendored/brepjs/topology/shapeModifiers.d.ts +33 -0
  1984. package/dist/vendored/brepjs/topology/shapeModifiers.d.ts.map +1 -0
  1985. package/dist/vendored/brepjs/topology/shapeModifiers.js +28 -0
  1986. package/dist/vendored/brepjs/topology/shapeModifiers.js.map +1 -0
  1987. package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.d.ts +29 -0
  1988. package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.d.ts.map +1 -0
  1989. package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.js +135 -0
  1990. package/dist/vendored/brepjs/topology/shapeRef/derivedFaceRefFns.js.map +1 -0
  1991. package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.d.ts +25 -0
  1992. package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.d.ts.map +1 -0
  1993. package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.js +123 -0
  1994. package/dist/vendored/brepjs/topology/shapeRef/edgeRefFns.js.map +1 -0
  1995. package/dist/vendored/brepjs/topology/shapeRef/index.d.ts +11 -0
  1996. package/dist/vendored/brepjs/topology/shapeRef/index.d.ts.map +1 -0
  1997. package/dist/vendored/brepjs/topology/shapeRef/index.js +10 -0
  1998. package/dist/vendored/brepjs/topology/shapeRef/index.js.map +1 -0
  1999. package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.d.ts +66 -0
  2000. package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.d.ts.map +1 -0
  2001. package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.js +128 -0
  2002. package/dist/vendored/brepjs/topology/shapeRef/refResolveFns.js.map +1 -0
  2003. package/dist/vendored/brepjs/topology/shapeRef/roleLookup.d.ts +18 -0
  2004. package/dist/vendored/brepjs/topology/shapeRef/roleLookup.d.ts.map +1 -0
  2005. package/dist/vendored/brepjs/topology/shapeRef/roleLookup.js +51 -0
  2006. package/dist/vendored/brepjs/topology/shapeRef/roleLookup.js.map +1 -0
  2007. package/dist/vendored/brepjs/topology/shapeRef/scoring.d.ts +20 -0
  2008. package/dist/vendored/brepjs/topology/shapeRef/scoring.d.ts.map +1 -0
  2009. package/dist/vendored/brepjs/topology/shapeRef/scoring.js +65 -0
  2010. package/dist/vendored/brepjs/topology/shapeRef/scoring.js.map +1 -0
  2011. package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.d.ts +59 -0
  2012. package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.d.ts.map +1 -0
  2013. package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.js +266 -0
  2014. package/dist/vendored/brepjs/topology/shapeRef/shapeRefFns.js.map +1 -0
  2015. package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.d.ts +153 -0
  2016. package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.d.ts.map +1 -0
  2017. package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.js +6 -0
  2018. package/dist/vendored/brepjs/topology/shapeRef/shapeRefTypes.js.map +1 -0
  2019. package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.d.ts +24 -0
  2020. package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.d.ts.map +1 -0
  2021. package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.js +128 -0
  2022. package/dist/vendored/brepjs/topology/shapeRef/vertexRefFns.js.map +1 -0
  2023. package/dist/vendored/brepjs/topology/shapeUtils.d.ts +16 -0
  2024. package/dist/vendored/brepjs/topology/shapeUtils.d.ts.map +1 -0
  2025. package/dist/vendored/brepjs/topology/shapeUtils.js +28 -0
  2026. package/dist/vendored/brepjs/topology/shapeUtils.js.map +1 -0
  2027. package/dist/vendored/brepjs/topology/solidBuilders.d.ts +74 -0
  2028. package/dist/vendored/brepjs/topology/solidBuilders.d.ts.map +1 -0
  2029. package/dist/vendored/brepjs/topology/solidBuilders.js +173 -0
  2030. package/dist/vendored/brepjs/topology/solidBuilders.js.map +1 -0
  2031. package/dist/vendored/brepjs/topology/surfaceBuilders.d.ts +47 -0
  2032. package/dist/vendored/brepjs/topology/surfaceBuilders.d.ts.map +1 -0
  2033. package/dist/vendored/brepjs/topology/surfaceBuilders.js +162 -0
  2034. package/dist/vendored/brepjs/topology/surfaceBuilders.js.map +1 -0
  2035. package/dist/vendored/brepjs/topology/surfaceFns.d.ts +41 -0
  2036. package/dist/vendored/brepjs/topology/surfaceFns.d.ts.map +1 -0
  2037. package/dist/vendored/brepjs/topology/surfaceFns.js +178 -0
  2038. package/dist/vendored/brepjs/topology/surfaceFns.js.map +1 -0
  2039. package/dist/vendored/brepjs/topology/threeHelpers.d.ts +124 -0
  2040. package/dist/vendored/brepjs/topology/threeHelpers.d.ts.map +1 -0
  2041. package/dist/vendored/brepjs/topology/threeHelpers.js +118 -0
  2042. package/dist/vendored/brepjs/topology/threeHelpers.js.map +1 -0
  2043. package/dist/vendored/brepjs/topology/topologyQueryFns.d.ts +100 -0
  2044. package/dist/vendored/brepjs/topology/topologyQueryFns.d.ts.map +1 -0
  2045. package/dist/vendored/brepjs/topology/topologyQueryFns.js +307 -0
  2046. package/dist/vendored/brepjs/topology/topologyQueryFns.js.map +1 -0
  2047. package/dist/vendored/brepjs/topology/transformFns.d.ts +69 -0
  2048. package/dist/vendored/brepjs/topology/transformFns.d.ts.map +1 -0
  2049. package/dist/vendored/brepjs/topology/transformFns.js +235 -0
  2050. package/dist/vendored/brepjs/topology/transformFns.js.map +1 -0
  2051. package/dist/vendored/brepjs/topology/wrapperFns.d.ts +169 -0
  2052. package/dist/vendored/brepjs/topology/wrapperFns.d.ts.map +1 -0
  2053. package/dist/vendored/brepjs/topology/wrapperFns.js +291 -0
  2054. package/dist/vendored/brepjs/topology/wrapperFns.js.map +1 -0
  2055. package/dist/vendored/brepjs/topology.d.ts +28 -0
  2056. package/dist/vendored/brepjs/topology.d.ts.map +1 -0
  2057. package/dist/vendored/brepjs/topology.js +39 -0
  2058. package/dist/vendored/brepjs/topology.js.map +1 -0
  2059. package/dist/vendored/brepjs/utils/arrayAccess.d.ts +12 -0
  2060. package/dist/vendored/brepjs/utils/arrayAccess.d.ts.map +1 -0
  2061. package/dist/vendored/brepjs/utils/arrayAccess.js +25 -0
  2062. package/dist/vendored/brepjs/utils/arrayAccess.js.map +1 -0
  2063. package/dist/vendored/brepjs/utils/bug.d.ts +15 -0
  2064. package/dist/vendored/brepjs/utils/bug.d.ts.map +1 -0
  2065. package/dist/vendored/brepjs/utils/bug.js +21 -0
  2066. package/dist/vendored/brepjs/utils/bug.js.map +1 -0
  2067. package/dist/vendored/brepjs/utils/ioFilename.d.ts +3 -0
  2068. package/dist/vendored/brepjs/utils/ioFilename.d.ts.map +1 -0
  2069. package/dist/vendored/brepjs/utils/ioFilename.js +7 -0
  2070. package/dist/vendored/brepjs/utils/ioFilename.js.map +1 -0
  2071. package/dist/vendored/brepjs/utils/precisionRound.d.ts +11 -0
  2072. package/dist/vendored/brepjs/utils/precisionRound.d.ts.map +1 -0
  2073. package/dist/vendored/brepjs/utils/precisionRound.js +19 -0
  2074. package/dist/vendored/brepjs/utils/precisionRound.js.map +1 -0
  2075. package/dist/vendored/brepjs/utils/quaternion.d.ts +18 -0
  2076. package/dist/vendored/brepjs/utils/quaternion.d.ts.map +1 -0
  2077. package/dist/vendored/brepjs/utils/quaternion.js +68 -0
  2078. package/dist/vendored/brepjs/utils/quaternion.js.map +1 -0
  2079. package/dist/vendored/brepjs/utils/range.d.ts +3 -0
  2080. package/dist/vendored/brepjs/utils/range.d.ts.map +1 -0
  2081. package/dist/vendored/brepjs/utils/range.js +5 -0
  2082. package/dist/vendored/brepjs/utils/range.js.map +1 -0
  2083. package/dist/vendored/brepjs/utils/uuid.d.ts +3 -0
  2084. package/dist/vendored/brepjs/utils/uuid.d.ts.map +1 -0
  2085. package/dist/vendored/brepjs/utils/uuid.js +7 -0
  2086. package/dist/vendored/brepjs/utils/uuid.js.map +1 -0
  2087. package/dist/vendored/brepjs/utils/vec2d.d.ts +62 -0
  2088. package/dist/vendored/brepjs/utils/vec2d.d.ts.map +1 -0
  2089. package/dist/vendored/brepjs/utils/vec2d.js +107 -0
  2090. package/dist/vendored/brepjs/utils/vec2d.js.map +1 -0
  2091. package/dist/vendored/brepjs/utils/vec3.d.ts +32 -0
  2092. package/dist/vendored/brepjs/utils/vec3.d.ts.map +1 -0
  2093. package/dist/vendored/brepjs/utils/vec3.js +35 -0
  2094. package/dist/vendored/brepjs/utils/vec3.js.map +1 -0
  2095. package/dist/vendored/brepjs/utils/zip.d.ts +5 -0
  2096. package/dist/vendored/brepjs/utils/zip.d.ts.map +1 -0
  2097. package/dist/vendored/brepjs/utils/zip.js +8 -0
  2098. package/dist/vendored/brepjs/utils/zip.js.map +1 -0
  2099. package/dist/vendored/brepjs/vectors.d.ts +11 -0
  2100. package/dist/vendored/brepjs/vectors.d.ts.map +1 -0
  2101. package/dist/vendored/brepjs/vectors.js +9 -0
  2102. package/dist/vendored/brepjs/vectors.js.map +1 -0
  2103. package/package.json +154 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"topologyExt.js","sourceRoot":"","sources":["../../src/occt-kernel/topologyExt.ts"],"names":[],"mappings":"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","sourcesContent":["import type { BrepHandle, BrepMeshResult, BrepBoundingBox, BrepVec3 } from '../brep/engine/types'\nimport type { BrepEngineApi } from '../brep/engine/primitives'\nimport { asEdgeId, asFaceId, asOccurrenceId, asShapeId } from '../identity'\n\n/**\n * Safe getBoundingBox wrapper: tries useTriangulation=false first,\n * falls back to true, then finally computes from mesh positions.\n * This handles compound shapes from boolean operations where OCCT's\n * getBoundingBox may fail in the browser WASM environment.\n */\nfunction tryGetBoundingBox(\n kernel: { getBoundingBox(s: BrepHandle, t: boolean): BrepBoundingBox },\n shape: BrepHandle,\n meshPositions?: Float32Array,\n): BrepBoundingBox {\n try {\n return kernel.getBoundingBox(shape, false)\n } catch {\n // try with triangulation\n }\n try {\n return kernel.getBoundingBox(shape, true)\n } catch {\n // fall through to mesh-based computation\n }\n // Final fallback: compute bbox from mesh vertex positions\n if (meshPositions && meshPositions.length >= 3) {\n let xmin = Infinity, ymin = Infinity, zmin = Infinity\n let xmax = -Infinity, ymax = -Infinity, zmax = -Infinity\n for (let i = 0; i < meshPositions.length; i += 3) {\n const x = meshPositions[i], y = meshPositions[i + 1], z = meshPositions[i + 2]\n if (x < xmin) xmin = x\n if (y < ymin) ymin = y\n if (z < zmin) zmin = z\n if (x > xmax) xmax = x\n if (y > ymax) ymax = y\n if (z > zmax) zmax = z\n }\n return { xmin, ymin, zmin, xmax, ymax, zmax }\n }\n // Last resort: return a default bbox\n return { xmin: -100, ymin: -100, zmin: -100, xmax: 100, ymax: 100, zmax: 100 }\n}\n\n// Topology data stays in mm — the viewer's buildSelectorRuntime is called\n// with scale:1 (scene base unit is mm), so no conversion needed.\n\n// OCCT's TopTools_ShapeMapHasher returns a hash that the C++ facade\n// reduces modulo 2147483647 (INT32_MAX). All kernel-generated hashes\n// (faceGroups, edgeGroups, edgeToFaceMap) use this same bound, so we\n// must pass 2147483647 to hashCode() for the hashes to match.\nconst HASH_BOUND = 2147483647\n// Python SelectorOptions(digits=6) — 所有浮点值输出前舍入到 6 位小数\nconst ROUND_DIGITS = 6\n\nconst OCCURRENCE_COLUMNS = [\n 'id', 'path', 'name', 'sourceName', 'parentId', 'transform',\n 'bbox', 'shapeStart', 'shapeCount', 'faceStart', 'faceCount',\n 'edgeStart', 'edgeCount',\n]\n\nconst SHAPE_COLUMNS = [\n 'id', 'occurrenceId', 'ordinal', 'kind', 'bbox', 'center',\n 'area', 'volume', 'faceStart', 'faceCount', 'edgeStart', 'edgeCount',\n]\n\nconst FACE_COLUMNS = [\n 'id', 'occurrenceId', 'shapeId', 'ordinal', 'surfaceType',\n 'area', 'center', 'normal', 'bbox', 'edgeStart', 'edgeCount',\n 'relevance', 'flags', 'params', 'triangleStart', 'triangleCount',\n]\n\nconst EDGE_COLUMNS = [\n 'id', 'occurrenceId', 'shapeId', 'ordinal', 'curveType',\n 'length', 'center', 'bbox', 'faceStart', 'faceCount',\n 'relevance', 'flags', 'params', 'segmentStart', 'segmentCount',\n]\n\nconst IDENTITY_16 = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]\n\ninterface SelectorManifestOptions {\n stepHash?: string\n cadPath?: string\n}\n\ninterface BBox {\n min: number[]\n max: number[]\n}\n\n/** Input for building a per-part selector manifest. */\nexport interface SelectorManifestInput {\n shapeHandle: BrepHandle\n meshWithGroups: BrepMeshResult\n}\n\nfunction bboxFromOcc(bb: BrepBoundingBox): BBox {\n return { min: [bb.xmin, bb.ymin, bb.zmin], max: [bb.xmax, bb.ymax, bb.zmax] }\n}\n\nfunction bboxCenter(bbox: BBox): number[] {\n return [\n (bbox.min[0] + bbox.max[0]) / 2,\n (bbox.min[1] + bbox.max[1]) / 2,\n (bbox.min[2] + bbox.max[2]) / 2,\n ]\n}\n\nfunction bboxArray(bbox: BBox): Record<string, number[]> {\n return { min: roundPoint(bbox.min), max: roundPoint(bbox.max) }\n}\n\nfunction vec3ToArray(v: BrepVec3): number[] {\n return [v.x, v.y, v.z]\n}\n\n// ── Rounding helpers (match Python _round_value / _round_point with digits=6) ──\nfunction roundVal(v: number, digits: number = ROUND_DIGITS): number {\n if (!Number.isFinite(v)) return v\n const p = Math.pow(10, digits)\n return Math.round(v * p) / p\n}\n\nfunction roundPoint(p: number[], digits: number = ROUND_DIGITS): number[] {\n return [roundVal(p[0], digits), roundVal(p[1], digits), roundVal(p[2], digits)]\n}\n\nfunction mergeBboxes(bboxes: BBox[]): BBox {\n const min = [Infinity, Infinity, Infinity]\n const max = [-Infinity, -Infinity, -Infinity]\n for (const b of bboxes) {\n if (b.min[0] < min[0]) min[0] = b.min[0]\n if (b.min[1] < min[1]) min[1] = b.min[1]\n if (b.min[2] < min[2]) min[2] = b.min[2]\n if (b.max[0] > max[0]) max[0] = b.max[0]\n if (b.max[1] > max[1]) max[1] = b.max[1]\n if (b.max[2] > max[2]) max[2] = b.max[2]\n }\n return { min, max }\n}\n\n// ── BBox with center/size/diag (matches Python _bbox_from_points) ──\ninterface FullBBox {\n min: number[]\n max: number[]\n center: number[]\n size: number[]\n diag: number\n}\n\nfunction fullBBoxFromPoints(points: number[][]): FullBBox {\n if (points.length === 0) {\n return { min: [0, 0, 0], max: [0, 0, 0], center: [0, 0, 0], size: [0, 0, 0], diag: 0 }\n }\n let minX = points[0][0], maxX = points[0][0]\n let minY = points[0][1], maxY = points[0][1]\n let minZ = points[0][2], maxZ = points[0][2]\n for (let i = 1; i < points.length; i++) {\n const p = points[i]\n if (p[0] < minX) minX = p[0]\n if (p[0] > maxX) maxX = p[0]\n if (p[1] < minY) minY = p[1]\n if (p[1] > maxY) maxY = p[1]\n if (p[2] < minZ) minZ = p[2]\n if (p[2] > maxZ) maxZ = p[2]\n }\n const sizeX = maxX - minX\n const sizeY = maxY - minY\n const sizeZ = maxZ - minZ\n return {\n min: [minX, minY, minZ],\n max: [maxX, maxY, maxZ],\n center: [minX + sizeX * 0.5, minY + sizeY * 0.5, minZ + sizeZ * 0.5],\n size: [sizeX, sizeY, sizeZ],\n diag: Math.sqrt(sizeX * sizeX + sizeY * sizeY + sizeZ * sizeZ),\n }\n}\n\n// ── Cross product of AB x AC ──\nfunction cross(a: number[], b: number[], c: number[]): [number, number, number] {\n const abx = b[0] - a[0]\n const aby = b[1] - a[1]\n const abz = b[2] - a[2]\n const acx = c[0] - a[0]\n const acy = c[1] - a[1]\n const acz = c[2] - a[2]\n return [\n aby * acz - abz * acy,\n abz * acx - abx * acz,\n abx * acy - aby * acx,\n ]\n}\n\nfunction normalize(v: number[]): number[] | null {\n const len = Math.sqrt(v[0] * v[0] + v[1] * v[1] + v[2] * v[2])\n if (len <= 1e-12) return null\n return [v[0] / len, v[1] / len, v[2] / len]\n}\n\nfunction distance(a: number[], b: number[]): number {\n const dx = a[0] - b[0]\n const dy = a[1] - b[1]\n const dz = a[2] - b[2]\n return Math.sqrt(dx * dx + dy * dy + dz * dz)\n}\n\n// ── Polyline helpers (matches Python _dedupe_consecutive, _decimate_polyline, _polyline_length, _polyline_center) ──\n\nfunction dedupeConsecutive(points: number[][], tolerance: number): number[][] {\n if (points.length === 0) return points\n const deduped = [points[0]]\n for (let i = 1; i < points.length; i++) {\n if (distance(deduped[deduped.length - 1], points[i]) > tolerance) {\n deduped.push(points[i])\n }\n }\n return deduped\n}\n\nfunction decimatePolyline(points: number[][], maxPoints: number): number[][] {\n if (maxPoints <= 1 || points.length <= maxPoints) return points\n const stride = (points.length - 1) / (maxPoints - 1)\n const result: number[][] = []\n let lastIndex = -1\n for (let i = 0; i < maxPoints; i++) {\n let index = Math.round(i * stride)\n if (index >= points.length) index = points.length - 1\n if (index !== lastIndex) {\n result.push(points[index])\n lastIndex = index\n }\n }\n if (result.length > 0 && result[result.length - 1] !== points[points.length - 1]) {\n result[result.length - 1] = points[points.length - 1]\n }\n return result\n}\n\nfunction polylineLength(points: number[][], closed: boolean): number {\n if (points.length < 2) return 0\n let total = 0\n for (let i = 0; i < points.length - 1; i++) {\n total += distance(points[i], points[i + 1])\n }\n if (closed && distance(points[0], points[points.length - 1]) > 1e-9) {\n total += distance(points[points.length - 1], points[0])\n }\n return total\n}\n\nfunction polylineCenter(points: number[][]): number[] {\n if (points.length === 0) return [0, 0, 0]\n let tx = 0, ty = 0, tz = 0\n for (const p of points) {\n tx += p[0]\n ty += p[1]\n tz += p[2]\n }\n const inv = 1 / points.length\n return [tx * inv, ty * inv, tz * inv]\n}\n\n// ── Edge polyline extraction from wireframe with dedup/decimation ──\n// wireframe().edgeGroups format: [pointStart_float, pointCount_float, edgeHash]\n// pointStart is a float offset into edgeData.points; pointCount is the number\n// of floats (not points) for this edge.\nfunction extractEdgePolylineFromWireframe(\n edgePoints: Float32Array,\n pointStart: number,\n pointCount: number,\n maxEdgePoints: number,\n): number[][] {\n if (pointCount < 6) return [] // need at least 2 points (6 floats)\n const numPoints = Math.floor(pointCount / 3)\n const raw: number[][] = []\n for (let p = 0; p < numPoints; p++) {\n const off = pointStart + p * 3\n raw.push([edgePoints[off], edgePoints[off + 1], edgePoints[off + 2]])\n }\n let points = dedupeConsecutive(raw, 1e-9)\n if (points.length > 1 && maxEdgePoints > 1) {\n points = decimatePolyline(points, maxEdgePoints)\n }\n return points\n}\n\n// ── Compute geometric axis from surface tangents (unoriented by face) ──\n// For a parametric surface S(u,v):\n// dS/du ≈ (S(u+du,v) - S(u,v))/du\n// dS/dv ≈ (S(u,v+dv) - S(u,v))/dv\n// axis = normalize(cross(dS/du, dS/dv))\nfunction geometricNormal(\n kernel: BrepEngineApi,\n face: BrepHandle,\n u: number,\n v: number,\n): number[] | null {\n const du = 1e-4\n const dv = 1e-4\n const p00 = vec3ToArray(kernel.pointOnSurface(face, u, v))\n const p10 = vec3ToArray(kernel.pointOnSurface(face, u + du, v))\n const p01 = vec3ToArray(kernel.pointOnSurface(face, u, v + dv))\n const dSu: number[] = [p10[0] - p00[0], p10[1] - p00[1], p10[2] - p00[2]]\n const dSv: number[] = [p01[0] - p00[0], p01[1] - p00[1], p01[2] - p00[2]]\n const crossVec: number[] = [\n dSu[1] * dSv[2] - dSu[2] * dSv[1],\n dSu[2] * dSv[0] - dSu[0] * dSv[2],\n dSu[0] * dSv[1] - dSu[1] * dSv[0],\n ]\n return normalize(crossVec)\n}\n\n// ── Surface params (matches Python _surface_params exactly) ──\nfunction getSurfaceParams(kernel: BrepEngineApi, face: BrepHandle): Record<string, unknown> | null {\n const surfaceType = kernel.surfaceType(face)\n const params: Record<string, unknown> = {}\n const uv = kernel.uvBounds(face)\n const uMin = uv.uMin, vMin = uv.vMin\n\n if (surfaceType === 'plane') {\n // Python: plane.Location() = origin, plane.Axis().Direction() = axis\n // S(u,v) = O + u*XDir + v*YDir, so S(0,0) = O = origin\n params.origin = roundPoint(vec3ToArray(kernel.pointOnSurface(face, 0, 0)))\n const axis = geometricNormal(kernel, face, uMin, vMin)\n if (axis) params.axis = roundPoint(axis)\n } else if (surfaceType === 'cylinder') {\n // Python: cylinder.Location() = point on axis, cylinder.Axis().Direction() = axis direction\n // Key order: origin, axis, radius (matches Python output)\n const cyl = kernel.getFaceCylinderData(face)\n\n // Compute axis direction from V-direction: S(u,v+1) - S(u,v) = Axis direction\n const p0 = vec3ToArray(kernel.pointOnSurface(face, uMin, vMin))\n const p1 = vec3ToArray(kernel.pointOnSurface(face, uMin, vMin + 1))\n const axisDir = normalize([p1[0] - p0[0], p1[1] - p0[1], p1[2] - p0[2]])\n if (axisDir && cyl) {\n // Compute axis origin using surfaceNormal API (exact, no finite-difference error).\n // surfaceNormal includes face orientation, so correct for reversed faces.\n let sn = kernel.surfaceNormal(face, uMin, vMin)\n if (kernel.shapeOrientation(face) === 'reversed') {\n sn = { x: -sn.x, y: -sn.y, z: -sn.z }\n }\n // P - R * outward_geometric_normal = point on cylinder axis\n const origin: number[] = [\n p0[0] - cyl.radius * sn.x,\n p0[1] - cyl.radius * sn.y,\n p0[2] - cyl.radius * sn.z,\n ]\n params.origin = roundPoint(origin)\n params.axis = roundPoint(axisDir)\n params.radius = roundVal(cyl.radius)\n }\n } else if (surfaceType === 'cone') {\n const p0 = vec3ToArray(kernel.pointOnSurface(face, uMin, vMin))\n const p1 = vec3ToArray(kernel.pointOnSurface(face, uMin, vMin + 1))\n const axisDir = normalize([p1[0] - p0[0], p1[1] - p0[1], p1[2] - p0[2]])\n if (axisDir) {\n params.origin = roundPoint(p0)\n params.axis = roundPoint(axisDir)\n }\n } else if (surfaceType === 'sphere') {\n // Python: sphere.Location() = center\n const center = kernel.getSurfaceCenterOfMass(face)\n params.center = roundPoint(vec3ToArray(center))\n } else if (surfaceType === 'torus') {\n // Python: torus.Location() = center on axis\n const center = kernel.getSurfaceCenterOfMass(face)\n params.center = roundPoint(vec3ToArray(center))\n const gn = geometricNormal(kernel, face, uMin, vMin)\n if (gn) params.axis = roundPoint(gn)\n }\n\n return Object.keys(params).length > 0 ? params : null\n}\n\n// ── Curve params (matches Python _curve_params) ──\nfunction getCurveParams(kernel: BrepEngineApi, edge: BrepHandle): Record<string, unknown> | null {\n const curveType = kernel.curveType(edge)\n const params: Record<string, unknown> = {}\n\n if (curveType === 'line') {\n const { first } = kernel.curveParameters(edge)\n params.origin = roundPoint(vec3ToArray(kernel.curvePointAtParam(edge, first)))\n params.direction = roundPoint(vec3ToArray(kernel.curveTangent(edge, first)))\n } else if (curveType === 'circle') {\n const { first, last } = kernel.curveParameters(edge)\n const mid = (first + last) / 2\n const p0 = kernel.curvePointAtParam(edge, first)\n const pm = kernel.curvePointAtParam(edge, mid)\n params.center = roundPoint([(p0.x + pm.x) / 2, (p0.y + pm.y) / 2, (p0.z + pm.z) / 2])\n const quarter = (first * 3 + last) / 4\n const tA = kernel.curveTangent(edge, first)\n const tQ = kernel.curveTangent(edge, quarter)\n const crossVec: number[] = [\n tA.y * tQ.z - tA.z * tQ.y,\n tA.z * tQ.x - tA.x * tQ.z,\n tA.x * tQ.y - tA.y * tQ.x,\n ]\n const norm = normalize(crossVec)\n if (norm) params.axis = roundPoint(norm)\n const c = params.center as number[]\n const dx = p0.x - c[0], dy = p0.y - c[1], dz = p0.z - c[2]\n params.radius = roundVal(Math.sqrt(dx * dx + dy * dy + dz * dz))\n } else if (curveType === 'ellipse') {\n const { first, last } = kernel.curveParameters(edge)\n const mid = (first + last) / 2\n params.center = roundPoint(vec3ToArray(kernel.curvePointAtParam(edge, mid)))\n } else if (curveType === 'hyperbola') {\n const { first, last } = kernel.curveParameters(edge)\n const mid = (first + last) / 2\n params.center = roundPoint(vec3ToArray(kernel.curvePointAtParam(edge, mid)))\n } else if (curveType === 'parabola') {\n const { first, last } = kernel.curveParameters(edge)\n const mid = (first + last) / 2\n params.center = roundPoint(vec3ToArray(kernel.curvePointAtParam(edge, mid)))\n } else if (curveType === 'bezier' || curveType === 'bspline') {\n try {\n const nc = kernel.getNurbsCurveData(edge)\n if (nc) {\n params.degree = nc.degree\n params.periodic = nc.periodic\n params.rational = nc.rational\n }\n } catch {\n // getNurbsCurveData may fail for non-NURBS edges\n }\n }\n\n return Object.keys(params).length > 0 ? params : null\n}\n\n// ── Face flags (matches Python _face_flags) ──\nfunction faceFlags(referenceable: boolean): number {\n return referenceable ? 0 : 1\n}\n\n// ── Edge flags (matches Python _edge_flags) ──\nfunction edgeFlags(closed: boolean, degenerated: boolean, seam: boolean, referenceable: boolean): number {\n let flags = 0\n if (closed) flags |= 1\n if (degenerated) flags |= 2\n if (seam) flags |= 4\n if (!referenceable) flags |= 8\n return flags\n}\n\n// ── Extract face geometry from mesh data (matches Python _extract_face_geometry) ──\ninterface FaceGeometry {\n area: number\n center: number[]\n normal: number[] | null\n bbox: BBox\n triangleCount: number\n}\n\nfunction extractFaceGeometry(\n positions: Float32Array,\n indices: Uint32Array,\n triStart: number,\n triCount: number,\n): FaceGeometry {\n if (triCount === 0) {\n return { area: 0, center: [0, 0, 0], normal: null, bbox: { min: [0, 0, 0], max: [0, 0, 0] }, triangleCount: 0 }\n }\n\n let areaSum = 0\n const centroidSum = [0, 0, 0]\n const normalSum = [0, 0, 0]\n const allNodes: number[][] = []\n const nodeSet = new Set<number>()\n\n for (let t = 0; t < triCount; t++) {\n const i0 = indices[(triStart + t) * 3]\n const i1 = indices[(triStart + t) * 3 + 1]\n const i2 = indices[(triStart + t) * 3 + 2]\n nodeSet.add(i0)\n nodeSet.add(i1)\n nodeSet.add(i2)\n\n const p0: number[] = [positions[i0 * 3], positions[i0 * 3 + 1], positions[i0 * 3 + 2]]\n const p1: number[] = [positions[i1 * 3], positions[i1 * 3 + 1], positions[i1 * 3 + 2]]\n const p2: number[] = [positions[i2 * 3], positions[i2 * 3 + 1], positions[i2 * 3 + 2]]\n\n const [nx, ny, nz] = cross(p0, p1, p2)\n const twiceArea = Math.sqrt(nx * nx + ny * ny + nz * nz)\n // Python uses twiceArea <= 1e-9 to skip degenerate triangles\n if (twiceArea <= 1e-9) continue\n\n const area = twiceArea * 0.5\n centroidSum[0] += (p0[0] + p1[0] + p2[0]) * area / 3\n centroidSum[1] += (p0[1] + p1[1] + p2[1]) * area / 3\n centroidSum[2] += (p0[2] + p1[2] + p2[2]) * area / 3\n areaSum += area\n\n // Area-weighted normal sum (matches Python: raw cross products, not unit vectors).\n // Python sums the raw cross products (proportional to triangle area) and\n // normalizes at the end. This gives the area-weighted face normal.\n normalSum[0] += nx\n normalSum[1] += ny\n normalSum[2] += nz\n }\n\n for (const ni of nodeSet) {\n allNodes.push([positions[ni * 3], positions[ni * 3 + 1], positions[ni * 3 + 2]])\n }\n\n let center: number[]\n if (allNodes.length === 0) {\n center = [0, 0, 0]\n } else if (areaSum > 1e-12) {\n center = [centroidSum[0] / areaSum, centroidSum[1] / areaSum, centroidSum[2] / areaSum]\n } else {\n center = fullBBoxFromPoints(allNodes).center\n }\n\n const normal = normalize([normalSum[0], normalSum[1], normalSum[2]])\n const b = fullBBoxFromPoints(allNodes)\n const bbox: BBox = { min: b.min, max: b.max }\n\n return { area: areaSum, center, normal, bbox, triangleCount: areaSum > 0 ? 1 : 0 }\n}\n\n// ── Build a hash→ordinal lookup for fast edge matching ──\n// Uses the same TopTools_ShapeMapHasher as the C++ facade, so hashes\n// are consistent across getSubShapes, wireframe, meshShape, and hashCode.\n// Collisions (extremely rare with HASH_BOUND=INT32_MAX) are resolved by\n// isSame() — the OCCT identity check.\nfunction buildEdgeOrdLookup(\n kernel: BrepEngineApi,\n edgeHandles: BrepHandle[],\n): Map<number, number[]> {\n const lookup = new Map<number, number[]>()\n for (let ei = 0; ei < edgeHandles.length; ei++) {\n const h = kernel.hashCode(edgeHandles[ei], HASH_BOUND)\n const list = lookup.get(h)\n if (list) list.push(ei + 1)\n else lookup.set(h, [ei + 1])\n }\n return lookup\n}\n\nfunction buildFaceOrdLookup(\n kernel: BrepEngineApi,\n faceHandles: BrepHandle[],\n): Map<number, number[]> {\n const lookup = new Map<number, number[]>()\n for (let fi = 0; fi < faceHandles.length; fi++) {\n const h = kernel.hashCode(faceHandles[fi], HASH_BOUND)\n const list = lookup.get(h)\n if (list) list.push(fi + 1)\n else lookup.set(h, [fi + 1])\n }\n return lookup\n}\n\n// Find the global ordinal of a sub-shape by hash lookup + isSame collision resolution\nfunction findOrdinal(\n kernel: BrepEngineApi,\n subShape: BrepHandle,\n globalHandles: BrepHandle[],\n lookup: Map<number, number[]>,\n): number | undefined {\n const h = kernel.hashCode(subShape, HASH_BOUND)\n const candidates = lookup.get(h)\n if (!candidates) return undefined\n for (const ord of candidates) {\n if (kernel.isSame(subShape, globalHandles[ord - 1])) return ord\n }\n return undefined\n}\n\n/**\n * Build a selector manifest for a single part's topology.\n *\n * Enumerates the shape's faces and edges and their relations, extracts edge\n * polylines from the kernel wireframe and face geometry from the mesh, computes\n * relevance scores, and assembles everything into a columnar selector manifest\n * plus its binary attribute buffers.\n *\n * @param kernel - the OCCT kernel\n * @param input - the shape handle and mesh-with-groups input\n * @param options - optional metadata (step hash and CAD path)\n * @param occurrenceId - the occurrence ID to prefix this part's ids (default 'o1')\n * @returns the assembled manifest and its binary buffers\n */\nexport function buildSelectorManifest(\n kernel: BrepEngineApi,\n input: SelectorManifestInput,\n options: SelectorManifestOptions,\n occurrenceId: string = 'o1',\n): { manifest: Record<string, unknown>; buffers: Record<string, Float32Array | Uint32Array> } {\n // getSubShapes 返回的每个子形都是独立 arena 句柄,manifest 构建只用它们做\n // 查询(输出是纯数据),全部登记到 transient 并在 finally 批量释放——否则\n // 每次构建泄漏 O(faces + edges) 个存活句柄(compat e2e ⑦ 实测 +63/次)。\n const transient: BrepHandle[] = []\n try {\n return buildSelectorManifestCore(kernel, input, options, occurrenceId, transient)\n } finally {\n for (const h of transient) {\n try { kernel.release(h) } catch { /* 已释放 */ }\n }\n }\n}\n\nfunction buildSelectorManifestCore(\n kernel: BrepEngineApi,\n input: SelectorManifestInput,\n options: SelectorManifestOptions,\n occurrenceId: string,\n transient: BrepHandle[],\n): { manifest: Record<string, unknown>; buffers: Record<string, Float32Array | Uint32Array> } {\n const { stepHash, cadPath } = options\n const shape = input.shapeHandle\n const mesh = input.meshWithGroups\n const posArr = mesh.positions\n const normArr = mesh.normals\n const idxArr = mesh.indices\n const faceGroups = mesh.faceGroups ?? new Int32Array(0)\n\n // ── 1. Enumerate faces and edges ──\n // getSubShapes uses TopExp::MapShapes + NCollection_IndexedMap — the same\n // enumeration method as wireframe() and meshShape(), so ordinals are\n // consistent with kernel-generated faceGroups/edgeGroups.\n const faceHandles = kernel.getSubShapes(shape, 'face')\n const edgeHandles = kernel.getSubShapes(shape, 'edge')\n transient.push(...faceHandles, ...edgeHandles)\n const faceCount = faceHandles.length\n const edgeCount = edgeHandles.length\n\n // ── 2. Build hash→data maps from kernel-generated buffers ──\n\n // Face hash → {triStart, triCount} from mesh.faceGroups.\n // faceGroups format: [triStart_idx, triCount_idx, faceHash] — values are in\n // index units (3 per triangle). Faces without triangulation are skipped by\n // the C++ side, so faceGroups may have fewer entries than faceCount.\n const faceGroupByHash = new Map<number, { triStart: number; triCount: number }>()\n for (let gi = 0; gi * 3 + 2 < faceGroups.length; gi++) {\n const triStartIdx = faceGroups[gi * 3] // index offset\n const triCountIdx = faceGroups[gi * 3 + 1] // index count\n const faceHash = faceGroups[gi * 3 + 2]\n // Convert from index units to triangle units\n faceGroupByHash.set(faceHash, { triStart: triStartIdx / 3, triCount: triCountIdx / 3 })\n }\n\n // Edge hash → {pointStart, pointCount} from wireframe().edgeGroups.\n // wireframe() uses TopExp::MapShapes + IndexedMap (same as getSubShapes),\n // so edge ordinals match. edgeGroups format: [pointStart_float,\n // pointCount_float, edgeHash] — values are in float units (3 per point).\n // Each edge gets its own independent polyline (NOT connected chains).\n const shapeBbox = tryGetBoundingBox(kernel, shape, posArr)\n const shapeDiag = Math.sqrt(\n (shapeBbox.xmax - shapeBbox.xmin) ** 2 +\n (shapeBbox.ymax - shapeBbox.ymin) ** 2 +\n (shapeBbox.zmax - shapeBbox.zmin) ** 2,\n )\n // Deflection proportional to shape size: 0.1% of diagonal, min 0.01mm.\n // GCPnts_TangentialDeflection adapts to curvature automatically.\n const wireframeDeflection = Math.max(shapeDiag * 0.001, 0.01)\n const wfData = kernel.wireframe(shape, wireframeDeflection)\n const edgeGroupByHash = new Map<number, { pointStart: number; pointCount: number }>()\n for (let ei = 0; ei * 3 + 2 < wfData.edgeGroups.length; ei++) {\n const pointStart = wfData.edgeGroups[ei * 3] // float offset\n const pointCount = wfData.edgeGroups[ei * 3 + 1] // float count\n const edgeHash = wfData.edgeGroups[ei * 3 + 2]\n edgeGroupByHash.set(edgeHash, { pointStart, pointCount })\n }\n\n // ── 3. Build face→edge and edge→face ordinals via isSame() ──\n // For each face, enumerate its edges (getSubShapes deduplicates via\n // IndexedMap, so seam edges appear once). Match each face edge to its\n // global ordinal by hash lookup + isSame() collision resolution.\n const edgeOrdLookup = buildEdgeOrdLookup(kernel, edgeHandles)\n const faceEdgeOrdinals: number[][] = []\n const edgeFaceOrdinals: number[][] = []\n for (let ei = 0; ei < edgeCount; ei++) edgeFaceOrdinals.push([])\n\n for (let fi = 0; fi < faceCount; fi++) {\n const faceEdges = kernel.getSubShapes(faceHandles[fi], 'edge')\n transient.push(...faceEdges)\n const ords: number[] = []\n const seen = new Set<number>()\n for (const fe of faceEdges) {\n const ord = findOrdinal(kernel, fe, edgeHandles, edgeOrdLookup)\n if (ord !== undefined && !seen.has(ord)) {\n seen.add(ord)\n ords.push(ord)\n edgeFaceOrdinals[ord - 1].push(fi + 1)\n }\n }\n faceEdgeOrdinals.push(ords)\n }\n\n // ── 4. Detect seam edges ──\n // Real gap: no BRep_Tool.IsClosed(edge, face) API. Heuristic: in a closed\n // solid, every edge should be shared by exactly 2 faces. An edge with only 1\n // adjacent face means it appears twice in that face's wire (once for each\n // parametric direction) — IndexedMap deduplicates, so faceCount=1.\n // This applies to ALL edge types (line, circle, etc.), not just closed curves.\n // In an open shell, boundary edges also have faceCount=1, so we check isSolid.\n const topSolids = kernel.getSubShapes(shape, 'solid')\n transient.push(...topSolids)\n const isSolid = topSolids.length > 0\n const seamEdgeSet = new Set<number>()\n for (let ei = 0; ei < edgeCount; ei++) {\n if (isSolid && edgeFaceOrdinals[ei].length === 1) {\n seamEdgeSet.add(ei + 1)\n }\n }\n\n // ── 5. Build shape entries (SOLID/SHELL/compound) ──\n const solidHandles = kernel.getSubShapes(shape, 'solid')\n const shellHandles = kernel.getSubShapes(shape, 'shell')\n transient.push(...solidHandles, ...shellHandles)\n type ShapeEntry = { ordinal: number; shape: BrepHandle; kind: string }\n let shapeEntries: ShapeEntry[]\n if (solidHandles.length > 0) {\n shapeEntries = solidHandles.map((s, i) => ({ ordinal: i + 1, shape: s, kind: 'solid' }))\n } else if (shellHandles.length > 0) {\n shapeEntries = shellHandles.map((s, i) => ({ ordinal: i + 1, shape: s, kind: 'shell' }))\n } else {\n shapeEntries = [{ ordinal: 1, shape, kind: 'compound' }]\n }\n if (shapeEntries.length === 0 && (faceCount > 0 || edgeCount > 0)) {\n shapeEntries = [{ ordinal: 1, shape, kind: 'compound' }]\n }\n\n // Build shape→face and shape→edge ordinals via isSame()\n const faceOrdLookup = buildFaceOrdLookup(kernel, faceHandles)\n const shapeEntriesWithOrdinals = shapeEntries.map(entry => {\n const faceOrds: number[] = []\n const edgeOrds: number[] = []\n const faceSeen = new Set<number>()\n const edgeSeen = new Set<number>()\n const entryFaces = kernel.getSubShapes(entry.shape, 'face')\n transient.push(...entryFaces)\n for (const f of entryFaces) {\n const ord = findOrdinal(kernel, f, faceHandles, faceOrdLookup)\n if (ord !== undefined && !faceSeen.has(ord)) { faceOrds.push(ord); faceSeen.add(ord) }\n }\n const entryEdges = kernel.getSubShapes(entry.shape, 'edge')\n transient.push(...entryEdges)\n for (const e of entryEdges) {\n const ord = findOrdinal(kernel, e, edgeHandles, edgeOrdLookup)\n if (ord !== undefined && !edgeSeen.has(ord)) { edgeOrds.push(ord); edgeSeen.add(ord) }\n }\n return { ...entry, faceOrdinals: faceOrds, edgeOrdinals: edgeOrds }\n })\n\n const occId = asOccurrenceId(occurrenceId)\n const shapeId = asShapeId(`${occId}.s1`)\n\n // ── 6. Build edge rows — wireframe polyline per edge ──\n // Each edge's polyline comes from kernel.wireframe() (GCPnts_TangentialDeflection),\n // looked up by edge hash. Line edges use exactly 2 endpoints for 1 segment.\n const edgeRows: unknown[][] = []\n const edgePositionsData: number[] = []\n const edgeIndicesData: number[] = []\n const edgeIdsData: number[] = []\n let totalEdgeLength = 0\n const edgeBboxes: BBox[] = []\n const maxEdgePoints = 30\n\n for (let ei = 0; ei < edgeCount; ei++) {\n const edge = edgeHandles[ei]\n const ordinal = ei + 1\n const curveType = kernel.curveType(edge)\n const curveLen = kernel.curveLength(edge)\n\n // Look up edge polyline from wireframe data by hash\n const edgeHash = kernel.hashCode(edge, HASH_BOUND)\n const egEntry = edgeGroupByHash.get(edgeHash)\n\n let polyline: number[][]\n if (curveType === 'line') {\n // Line edges: exactly 2 endpoints → 1 segment (wireframe also produces\n // 2 points for lines, but this guarantees it)\n const { first, last } = kernel.curveParameters(edge)\n const pt0 = kernel.curvePointAtParam(edge, first)\n const pt1 = kernel.curvePointAtParam(edge, last)\n polyline = [[pt0.x, pt0.y, pt0.z], [pt1.x, pt1.y, pt1.z]]\n } else if (egEntry) {\n // Curved edges: extract polyline from wireframe data\n polyline = extractEdgePolylineFromWireframe(\n wfData.points, egEntry.pointStart, egEntry.pointCount, maxEdgePoints,\n )\n // Fallback to curve sampling if wireframe gave too few points\n if (polyline.length < 2) {\n const { first, last } = kernel.curveParameters(edge)\n const numPts = Math.min(maxEdgePoints, Math.max(2, Math.ceil(curveLen / 7.5) + 1))\n polyline = []\n for (let p = 0; p < numPts; p++) {\n const t = numPts > 1 ? first + (last - first) * p / (numPts - 1) : first\n const pt = kernel.curvePointAtParam(edge, t)\n polyline.push([pt.x, pt.y, pt.z])\n }\n }\n } else {\n // No wireframe match — fall back to curve sampling\n const { first, last } = kernel.curveParameters(edge)\n const numPts = Math.min(maxEdgePoints, Math.max(2, Math.ceil(curveLen / 7.5) + 1))\n polyline = []\n for (let p = 0; p < numPts; p++) {\n const t = numPts > 1 ? first + (last - first) * p / (numPts - 1) : first\n const pt = kernel.curvePointAtParam(edge, t)\n polyline.push([pt.x, pt.y, pt.z])\n }\n }\n\n // Edge bbox from polyline points (matches Python _bbox_from_points).\n const edgeBBoxPts = polyline.length >= 2 ? polyline : []\n const efbb = fullBBoxFromPoints(edgeBBoxPts)\n const bb: BBox = { min: efbb.min, max: efbb.max }\n edgeBboxes.push(bb)\n\n // Edge properties\n const closed = kernel.curveIsClosed(edge)\n\n // Edge length: polyline chord length (matches Python _polyline_length)\n const edgeLen = polyline.length >= 2 ? polylineLength(polyline, closed) : curveLen\n totalEdgeLength += edgeLen\n\n // Edge center: arithmetic mean of polyline points (matches Python _polyline_center)\n const center = polyline.length >= 2 ? polylineCenter(polyline) : [0, 0, 0]\n\n const segmentStart = edgeIdsData.length\n\n // Build edge proxy data from polyline\n if (polyline.length >= 2) {\n const vertexOffset = edgePositionsData.length / 3\n for (const pt of polyline) {\n edgePositionsData.push(pt[0], pt[1], pt[2])\n }\n for (let s = 0; s < polyline.length - 1; s++) {\n edgeIndicesData.push(vertexOffset + s, vertexOffset + s + 1)\n edgeIdsData.push(ei)\n }\n // Closed edge closing segment (matches Python)\n if (closed && distance(polyline[0], polyline[polyline.length - 1]) > 1e-9) {\n edgeIndicesData.push(vertexOffset + polyline.length - 1, vertexOffset)\n edgeIdsData.push(ei)\n }\n }\n\n const params = getCurveParams(kernel, edge)\n const segmentCountFinal = edgeIdsData.length - segmentStart\n\n edgeRows.push([\n asEdgeId(`${occId}.e${ordinal}`), occId, shapeId, ordinal, curveType, roundVal(edgeLen),\n roundPoint(center), bboxArray(bb),\n 0, 0, // faceStart, faceCount — filled later\n 0, 0, // relevance, flags\n params, segmentStart, segmentCountFinal,\n ])\n }\n\n // ── 7. Build face rows — hash-based triangle lookup ──\n const faceRows: unknown[][] = []\n const faceRunData: number[] = []\n let totalFaceArea = 0\n const faceBboxes: BBox[] = []\n\n for (let fi = 0; fi < faceCount; fi++) {\n const face = faceHandles[fi]\n const ordinal = fi + 1\n\n // Look up triangle data by face hash (pure hash Map, no index fallback).\n // No match (face without triangulation) → triStart/triCount = 0.\n const fh = kernel.hashCode(face, HASH_BOUND)\n const fgEntry = faceGroupByHash.get(fh)\n const triStart = fgEntry ? fgEntry.triStart : 0\n const triCount = fgEntry ? fgEntry.triCount : 0\n\n // Extract face geometry with degenerate triangle filtering\n const geom = extractFaceGeometry(posArr, idxArr, triStart, triCount)\n\n const surfaceType = kernel.surfaceType(face)\n const area = geom.area\n totalFaceArea += area\n const center = geom.center\n const bb = geom.bbox\n faceBboxes.push(bb)\n\n // Face normal: for planar faces, use mesh-based area-weighted cross products.\n // For non-planar faces, use per-vertex normals from mesh.normals (computed\n // by OCCT's own normal estimator) averaged over the face's triangles.\n let normal = geom.normal\n if (surfaceType !== 'plane' && triCount > 0) {\n const ns = [0, 0, 0]\n for (let t = 0; t < triCount; t++) {\n for (let vi = 0; vi < 3; vi++) {\n const idx = idxArr[(triStart + t) * 3 + vi]\n ns[0] += normArr[idx * 3]\n ns[1] += normArr[idx * 3 + 1]\n ns[2] += normArr[idx * 3 + 2]\n }\n }\n const meshNormal = normalize(ns)\n if (meshNormal) normal = meshNormal\n }\n if (!normal) normal = [0, 0, 1]\n\n const params = getSurfaceParams(kernel, face)\n\n faceRows.push([\n asFaceId(`${occId}.f${ordinal}`), occId, shapeId, ordinal, surfaceType, roundVal(area),\n roundPoint(center), normal ? roundPoint(normal) : null, bboxArray(bb),\n 0, 0, // edgeStart, edgeCount — filled later\n 0, 0, // relevance, flags\n params, triStart, triCount,\n ])\n\n if (triCount > 0) {\n faceRunData.push(0, 0, triStart, triCount, fi)\n }\n }\n\n // ── 8. Build face→edge and edge→face relation tables ──\n const faceEdgeRowsData: number[] = []\n const edgeFaceRowsData: number[] = []\n\n for (let fi = 0; fi < faceCount; fi++) {\n const edgeOrds = faceEdgeOrdinals[fi]\n const edgeStart = faceEdgeRowsData.length\n ;(faceRows[fi] as unknown[])[9] = edgeStart\n ;(faceRows[fi] as unknown[])[10] = edgeOrds.length\n for (const eo of edgeOrds) {\n faceEdgeRowsData.push(eo - 1)\n }\n }\n\n for (let ei = 0; ei < edgeCount; ei++) {\n const faceOrds = edgeFaceOrdinals[ei]\n const faceStart = edgeFaceRowsData.length\n ;(edgeRows[ei] as unknown[])[8] = faceStart\n ;(edgeRows[ei] as unknown[])[9] = faceOrds.length\n for (const fo of faceOrds) {\n edgeFaceRowsData.push(fo - 1)\n }\n }\n\n // ── 9. Compute relevance scores (matches Python) ──\n const mergedBbox = faceBboxes.length > 0 ? mergeBboxes(faceBboxes) : { min: [0, 0, 0], max: [0, 0, 0] }\n const mergedDiag = Math.sqrt(\n (mergedBbox.max[0] - mergedBbox.min[0]) ** 2 +\n (mergedBbox.max[1] - mergedBbox.min[1]) ** 2 +\n (mergedBbox.max[2] - mergedBbox.min[2]) ** 2,\n )\n const totalArea = Math.max(totalFaceArea, 1e-12)\n const totalLength = Math.max(totalEdgeLength, 1e-12)\n const sizeFloor = Math.max(mergedDiag * mergedDiag * 1e-6, 1e-12)\n const lengthFloor = Math.max(mergedDiag * 1e-5, 1e-12)\n\n for (let fi = 0; fi < faceRows.length; fi++) {\n const area = faceRows[fi][5] as number\n const surfaceType = faceRows[fi][4] as string\n let score = 100 * Math.sqrt(Math.max(area, 0) / totalArea)\n if (['plane', 'cylinder', 'cone', 'sphere', 'torus'].includes(surfaceType)) score += 8\n if (area < sizeFloor) score -= 45\n const triCount = faceRows[fi][15] as number\n const ref = triCount > 0 && area > 1e-12\n if (!ref) score = 0\n ;(faceRows[fi] as unknown[])[11] = Math.max(0, Math.min(100, Math.round(score)))\n ;(faceRows[fi] as unknown[])[12] = faceFlags(ref)\n }\n\n for (let ei = 0; ei < edgeRows.length; ei++) {\n const length = edgeRows[ei][5] as number\n const curveType = edgeRows[ei][4] as string\n const edge = edgeHandles[ei]\n const closed = kernel.curveIsClosed(edge)\n const degenerated = kernel.curveLength(edge) < 1e-12\n const seam = seamEdgeSet.has(ei + 1)\n const segmentCount = edgeRows[ei][14] as number\n const ref = !degenerated && segmentCount > 0\n\n let score = 100 * Math.sqrt(Math.max(length, 0) / totalLength)\n if (['line', 'circle', 'ellipse'].includes(curveType)) score += 10\n if (seam) score -= 30\n if (degenerated) score -= 80\n if (length < lengthFloor) score -= 35\n if (!ref) score = 0\n ;(edgeRows[ei] as unknown[])[10] = Math.max(0, Math.min(100, Math.round(score)))\n ;(edgeRows[ei] as unknown[])[11] = edgeFlags(closed, degenerated, seam, ref)\n }\n\n // ── 11. Build shape rows (matches Python emit_leaf) ──\n const shapeRows: unknown[][] = []\n for (const entry of shapeEntriesWithOrdinals) {\n const bboxes: BBox[] = entry.faceOrdinals\n .map(fo => faceBboxes[fo - 1])\n .filter((b): b is BBox => !!b)\n const entryBbox = bboxes.length > 0 ? mergeBboxes(bboxes) : bboxFromOcc(tryGetBoundingBox(kernel, entry.shape, posArr))\n const entryArea = entry.faceOrdinals.reduce((sum, fo) => sum + (faceRows[fo - 1][5] as number), 0)\n let entryVolume: number | null = null\n let entryCenter: number[]\n if (entry.kind === 'solid') {\n entryVolume = kernel.getVolume(entry.shape)\n const cm = kernel.getCenterOfMass(entry.shape)\n entryCenter = [cm.x, cm.y, cm.z]\n } else {\n entryCenter = bboxCenter(entryBbox)\n }\n\n const firstFaceGlobal = entry.faceOrdinals.length > 0 ? entry.faceOrdinals[0] - 1 : faceRows.length\n const firstEdgeGlobal = entry.edgeOrdinals.length > 0 ? entry.edgeOrdinals[0] - 1 : edgeRows.length\n\n shapeRows.push([\n asShapeId(`${occId}.s${entry.ordinal}`), occId, entry.ordinal, entry.kind,\n bboxArray(entryBbox), roundPoint(entryCenter), roundVal(entryArea), entryVolume !== null ? roundVal(entryVolume) : null,\n firstFaceGlobal, entry.faceOrdinals.length,\n firstEdgeGlobal, entry.edgeOrdinals.length,\n ])\n }\n\n // ── 12. Build occurrence rows ──\n const meshBbox = faceBboxes.length > 0 ? mergedBbox : { min: [0, 0, 0], max: [0, 0, 0] }\n const occurrenceRows: unknown[][] = [[\n occId, '1', null, null, null, IDENTITY_16, bboxArray(meshBbox),\n 0, shapeRows.length, 0, faceRows.length, 0, edgeRows.length,\n ]]\n\n // ── 13. Build manifest ──\n const manifest: Record<string, unknown> = {\n schemaVersion: 2,\n profile: 'selector',\n cadRef: cadPath,\n stepPath: cadPath ? `${cadPath}.step` : undefined,\n stepHash,\n bbox: bboxArray(meshBbox),\n stats: {\n occurrenceCount: occurrenceRows.length,\n leafOccurrenceCount: occurrenceRows.length,\n shapeCount: shapeRows.length,\n faceCount: faceRows.length,\n edgeCount: edgeRows.length,\n faceProxyRunCount: faceRunData.length / 5,\n edgeProxyPointCount: edgePositionsData.length / 3,\n edgeProxySegmentCount: edgeIdsData.length,\n },\n tables: {\n occurrenceColumns: OCCURRENCE_COLUMNS,\n shapeColumns: SHAPE_COLUMNS,\n faceColumns: FACE_COLUMNS,\n edgeColumns: EDGE_COLUMNS,\n },\n occurrences: occurrenceRows,\n shapes: shapeRows,\n faces: faceRows,\n edges: edgeRows,\n faceProxy: {\n source: cadPath ? `.${cadPath.split(/[/\\\\]/).pop()!}.step.3mf` : undefined,\n runsView: 'faceRuns',\n runColumns: ['occurrenceRow', 'primitiveIndex', 'triangleStart', 'triangleCount', 'faceRow'],\n },\n edgeProxy: {\n positionsView: 'edgePositions',\n indicesView: 'edgeIndices',\n edgeIdsView: 'edgeIds',\n },\n relations: {\n faceEdgeRowsView: 'faceEdgeRows',\n edgeFaceRowsView: 'edgeFaceRows',\n },\n }\n\n const buffers: Record<string, Float32Array | Uint32Array> = {\n faceRuns: new Uint32Array(faceRunData),\n edgePositions: new Float32Array(edgePositionsData),\n edgeIndices: new Uint32Array(edgeIndicesData),\n edgeIds: new Uint32Array(edgeIdsData),\n faceEdgeRows: new Uint32Array(faceEdgeRowsData),\n edgeFaceRows: new Uint32Array(edgeFaceRowsData),\n }\n\n return { manifest, buffers }\n}\n\n// ── Assembly-level topology ──\n\n/** Input for per-part topology identification in an assembly. */\nexport interface PartTopologyInput {\n labelPath: string\n shapeHandle: BrepHandle\n meshWithGroups: BrepMeshResult\n}\n\n/** Result of assembly-level topology identification. */\nexport interface AssemblyTopologyResult {\n manifest: Record<string, unknown>\n buffers: Record<string, Float32Array | Uint32Array>\n}\n\n/**\n * Build a selector manifest for an assembly (multi-part) topology.\n *\n * For each part, runs the per-part topology identification (face/edge enumeration,\n * wireframe, relations) and merges into a single assembly manifest.\n *\n * Occurrence IDs use the part's labelPath (e.g., \"o0\", \"o0.o1\").\n *\n * Face/edge triangle ranges are per-mesh (each part has its own mesh),\n * identified by the occurrenceRow index in faceRuns.\n *\n * @param kernel - the OCCT kernel\n * @param parts - per-part topology inputs for the assembly\n * @param opts - optional step hash and CAD path metadata\n * @returns the merged assembly manifest and its binary buffers\n */\nexport function buildAssemblySelectorManifest(\n kernel: BrepEngineApi,\n parts: PartTopologyInput[],\n opts: SelectorManifestOptions = {},\n): AssemblyTopologyResult {\n const { stepHash, cadPath } = opts\n\n // Accumulated data\n const allOccurrences: unknown[][] = []\n const allShapes: unknown[][] = []\n const allFaces: unknown[][] = []\n const allEdges: unknown[][] = []\n\n // Buffer accumulators\n const faceRunData: number[] = []\n const edgePositionsData: number[] = []\n const edgeIndicesData: number[] = []\n const edgeIdsData: number[] = []\n const faceEdgeRowsData: number[] = []\n const edgeFaceRowsData: number[] = []\n\n let totalFaceArea = 0\n let totalEdgeLength = 0\n const allFaceBboxes: BBox[] = []\n const allEdgeBboxes: BBox[] = []\n\n // Process each part\n for (let partIdx = 0; partIdx < parts.length; partIdx++) {\n const part = parts[partIdx]\n const occId = asOccurrenceId(part.labelPath)\n\n // Run per-part manifest (uses the existing buildSelectorManifest logic)\n const partResult = buildSelectorManifest(\n kernel,\n { shapeHandle: part.shapeHandle, meshWithGroups: part.meshWithGroups },\n { stepHash, cadPath },\n occId,\n )\n const partManifest = partResult.manifest\n const partBuffers = partResult.buffers\n\n // Extract per-part data\n const partOcc = (partManifest.occurrences as unknown[][]) ?? []\n const partShapes = (partManifest.shapes as unknown[][]) ?? []\n const partFaces = (partManifest.faces as unknown[][]) ?? []\n const partEdges = (partManifest.edges as unknown[][]) ?? []\n\n const occRowIdx = allOccurrences.length // 0-based occurrence index for this part\n\n // Occurrence row: use labelPath as id, parentId null (flat for now)\n // CRITICAL: update shapeStart/faceStart/edgeStart to GLOBAL indices.\n // buildSelectorManifest sets them to 0 (local), so without this fix\n // every part's occurrence points to part 0's shapes/faces/edges.\n const globalShapeStart = allShapes.length\n const globalFaceStart = allFaces.length\n const globalEdgeStart = allEdges.length\n for (const occ of partOcc) {\n const row = [...occ] as unknown[]\n row[0] = occId // id\n row[1] = occId // path\n row[2] = '' // name (from XCAF, not available here)\n row[3] = '' // sourceName\n row[4] = null // parentId (flat for now)\n row[7] = globalShapeStart // shapeStart (global)\n // row[8] shapeCount — already correct (local count = global count for this part)\n row[9] = globalFaceStart // faceStart (global)\n // row[10] faceCount — already correct\n row[11] = globalEdgeStart // edgeStart (global)\n // row[12] edgeCount — already correct\n allOccurrences.push(row)\n }\n\n // Shape rows: replace occurrenceId\n for (const shape of partShapes) {\n const row = [...shape] as unknown[]\n row[1] = occId // occurrenceId\n // Update faceStart/faceCount/edgeStart/edgeCount to global indices\n const faceCount = row[9] as number\n const edgeCount = row[11] as number\n row[8] = allFaces.length // global faceStart\n row[9] = faceCount\n row[10] = allEdges.length // global edgeStart\n row[11] = edgeCount\n allShapes.push(row)\n }\n\n // Face rows: replace occurrenceId/shapeId, update triangleStart (per-mesh,\n // keep local), update edgeStart/edgeCount to global indices\n const partFaceEdgeStart = faceEdgeRowsData.length\n for (let fi = 0; fi < partFaces.length; fi++) {\n const face = [...partFaces[fi]] as unknown[]\n face[1] = occId // occurrenceId\n face[2] = asShapeId(`${occId}.s1`) // shapeId\n // Update edgeStart/edgeCount to global indices\n const edgeStart = face[9] as number\n const edgeCount = face[10] as number\n face[9] = partFaceEdgeStart + edgeStart // global faceEdgeRows offset\n face[10] = edgeCount\n // triangleStart/triangleCount stay local (per-mesh)\n allFaces.push(face)\n totalFaceArea += (face[5] as number)\n // Collect bbox for global merge\n const fb = face[8] as Record<string, number[]>\n if (fb?.min && fb?.max) {\n allFaceBboxes.push({ min: fb.min, max: fb.max })\n }\n }\n\n // Edge rows: replace occurrenceId/shapeId, update faceStart/faceCount\n const partEdgeFaceStart = edgeFaceRowsData.length\n for (let ei = 0; ei < partEdges.length; ei++) {\n const edge = [...partEdges[ei]] as unknown[]\n edge[1] = occId // occurrenceId\n edge[2] = asShapeId(`${occId}.s1`) // shapeId\n // Update faceStart/faceCount to global indices\n const faceStart = edge[8] as number\n const edgeCount = edge[9] as number\n edge[8] = partEdgeFaceStart + faceStart // global edgeFaceRows offset\n edge[9] = edgeCount\n // Update segmentStart to global offset\n const segCount = edge[14] as number\n edge[13] = edgeIdsData.length // global segmentStart (will be set below)\n edge[14] = segCount\n allEdges.push(edge)\n totalEdgeLength += (edge[5] as number)\n // Collect bbox\n const eb = edge[7] as Record<string, number[]>\n if (eb?.min && eb?.max) {\n allEdgeBboxes.push({ min: eb.min, max: eb.max })\n }\n }\n\n // Merge faceRuns: update occurrenceRow to global index\n const partFaceRuns = (partBuffers.faceRuns as Uint32Array) ?? new Uint32Array(0)\n for (let ri = 0; ri < partFaceRuns.length; ri += 5) {\n faceRunData.push(\n occRowIdx, // occurrenceRow (global)\n partFaceRuns[ri + 1], // primitiveIndex\n partFaceRuns[ri + 2], // triangleStart (local to mesh)\n partFaceRuns[ri + 3], // triangleCount\n allFaces.length - partFaces.length + partFaceRuns[ri + 4], // faceRow (global)\n )\n }\n\n // Merge edge proxy buffers\n const partEdgePos = (partBuffers.edgePositions as Float32Array) ?? new Float32Array(0)\n const partEdgeIdx = (partBuffers.edgeIndices as Uint32Array) ?? new Uint32Array(0)\n const partEdgeIds = (partBuffers.edgeIds as Uint32Array) ?? new Uint32Array(0)\n\n // Edge positions: concatenate (vertex offset = current length / 3)\n const vertexOffset = edgePositionsData.length / 3\n for (let p = 0; p < partEdgePos.length; p++) {\n edgePositionsData.push(partEdgePos[p])\n }\n // Edge indices: add vertex offset to each index (indices reference edgePositions)\n for (let p = 0; p < partEdgeIdx.length; p++) {\n edgeIndicesData.push(partEdgeIdx[p] + vertexOffset)\n }\n // Edge IDs: offset by global edge index base\n const edgeIdBase = allEdges.length - partEdges.length\n for (let p = 0; p < partEdgeIds.length; p++) {\n edgeIdsData.push(partEdgeIds[p] + edgeIdBase)\n }\n\n // Merge relation buffers\n const partFaceEdgeRows = (partBuffers.faceEdgeRows as Uint32Array) ?? new Uint32Array(0)\n for (let p = 0; p < partFaceEdgeRows.length; p++) {\n faceEdgeRowsData.push(partFaceEdgeRows[p])\n }\n\n const partEdgeFaceRows = (partBuffers.edgeFaceRows as Uint32Array) ?? new Uint32Array(0)\n for (let p = 0; p < partEdgeFaceRows.length; p++) {\n edgeFaceRowsData.push(partEdgeFaceRows[p])\n }\n\n // Fix edge segmentStart (now that we know the global offset)\n const segBase = edgeIdsData.length - partEdgeIds.length\n for (let ei = 0; ei < partEdges.length; ei++) {\n const globalEdgeIdx = allEdges.length - partEdges.length + ei\n const origSegStart = partEdges[ei][13] as number\n ;(allEdges[globalEdgeIdx] as unknown[])[13] = segBase + origSegStart\n }\n }\n\n // Compute merged bbox\n const mergedBbox = allFaceBboxes.length > 0\n ? mergeBboxes(allFaceBboxes)\n : { min: [0, 0, 0], max: [0, 0, 0] }\n\n // Recompute relevance scores for assembly (global scale)\n const mergedDiag = Math.sqrt(\n (mergedBbox.max[0] - mergedBbox.min[0]) ** 2 +\n (mergedBbox.max[1] - mergedBbox.min[1]) ** 2 +\n (mergedBbox.max[2] - mergedBbox.min[2]) ** 2,\n )\n const totalArea = Math.max(totalFaceArea, 1e-12)\n const totalLength = Math.max(totalEdgeLength, 1e-12)\n const sizeFloor = Math.max(mergedDiag * mergedDiag * 1e-6, 1e-12)\n const lengthFloor = Math.max(mergedDiag * 1e-5, 1e-12)\n\n for (let fi = 0; fi < allFaces.length; fi++) {\n const area = allFaces[fi][5] as number\n const surfaceType = allFaces[fi][4] as string\n let score = 100 * Math.sqrt(Math.max(area, 0) / totalArea)\n if (['plane', 'cylinder', 'cone', 'sphere', 'torus'].includes(surfaceType)) score += 8\n if (area < sizeFloor) score -= 45\n const triCount = allFaces[fi][15] as number\n const ref = triCount > 0 && area > 1e-12\n if (!ref) score = 0\n ;(allFaces[fi] as unknown[])[11] = Math.max(0, Math.min(100, Math.round(score)))\n ;(allFaces[fi] as unknown[])[12] = faceFlags(ref)\n }\n\n for (let ei = 0; ei < allEdges.length; ei++) {\n const length = allEdges[ei][5] as number\n const curveType = allEdges[ei][4] as string\n const segCount = allEdges[ei][14] as number\n const ref = segCount > 0 && length > 1e-12\n let score = 100 * Math.sqrt(Math.max(length, 0) / totalLength)\n if (['line', 'circle', 'ellipse'].includes(curveType)) score += 10\n if (length < lengthFloor) score -= 35\n if (!ref) score = 0\n ;(allEdges[ei] as unknown[])[10] = Math.max(0, Math.min(100, Math.round(score)))\n // flags already set per-part\n }\n\n // Build assembly manifest\n const manifest: Record<string, unknown> = {\n schemaVersion: 2,\n profile: 'selector',\n cadRef: cadPath,\n stepPath: cadPath ? `${cadPath}.step` : undefined,\n stepHash,\n bbox: bboxArray(mergedBbox),\n stats: {\n occurrenceCount: allOccurrences.length,\n leafOccurrenceCount: allOccurrences.length,\n shapeCount: allShapes.length,\n faceCount: allFaces.length,\n edgeCount: allEdges.length,\n faceProxyRunCount: faceRunData.length / 5,\n edgeProxyPointCount: edgePositionsData.length / 3,\n edgeProxySegmentCount: edgeIdsData.length,\n },\n tables: {\n occurrenceColumns: OCCURRENCE_COLUMNS,\n shapeColumns: SHAPE_COLUMNS,\n faceColumns: FACE_COLUMNS,\n edgeColumns: EDGE_COLUMNS,\n },\n occurrences: allOccurrences,\n shapes: allShapes,\n faces: allFaces,\n edges: allEdges,\n faceProxy: {\n source: cadPath ? `.${cadPath.split(/[/\\\\]/).pop()!}.step.3mf` : undefined,\n runsView: 'faceRuns',\n runColumns: ['occurrenceRow', 'primitiveIndex', 'triangleStart', 'triangleCount', 'faceRow'],\n },\n edgeProxy: {\n positionsView: 'edgePositions',\n indicesView: 'edgeIndices',\n edgeIdsView: 'edgeIds',\n },\n relations: {\n faceEdgeRowsView: 'faceEdgeRows',\n edgeFaceRowsView: 'edgeFaceRows',\n },\n }\n\n const buffers: Record<string, Float32Array | Uint32Array> = {\n faceRuns: new Uint32Array(faceRunData),\n edgePositions: new Float32Array(edgePositionsData),\n edgeIndices: new Uint32Array(edgeIndicesData),\n edgeIds: new Uint32Array(edgeIdsData),\n faceEdgeRows: new Uint32Array(faceEdgeRowsData),\n edgeFaceRows: new Uint32Array(edgeFaceRowsData),\n }\n\n return { manifest, buffers }\n}\n\n// ═══════════════════════════════════════════════════════════════════════\n//\n// 供 TopoRef 命名层做 edge/vertex lineage 解析。与 buildSelectorManifest\n// 内部的 face→edge 邻接同源(同一次 TopExp::MapShapes 枚举),选择器\n// manifest 输出保持不变——这是命名层的独立查询出口。\n// ═══════════════════════════════════════════════════════════════════════\n\n/** 拓扑邻接表:ordinal(1 起) ↔ 邻接 ordinal 列表。 */\nexport interface TopologyAdjacency {\n /** face ordinal(1 起) → 邻接 edge ordinal 列表。 */\n readonly faceEdgeOrdinals: ReadonlyArray<readonly number[]>\n /** edge ordinal(1 起) → 邻接 face ordinal 列表。 */\n readonly edgeFaceOrdinals: ReadonlyArray<readonly number[]>\n /** face ordinal(1 起) → 邻接 vertex ordinal 列表。 */\n readonly faceVertexOrdinals: ReadonlyArray<readonly number[]>\n}\n\n/**\n * 构建一个 solid 的拓扑邻接表(edge/vertex lineage 解析用,§4.2/§4.4)。\n *\n * 与 buildSelectorManifest 同一枚举序(getSubShapes ↔ subShapeHashes ↔\n * manifest 行序),hash 碰撞按既有办法用 isSame 消解(findOrdinal)。\n * 每次调用重新枚举(解析是低频路径,不建缓存)。\n *\n * @param kernel - the OCCT kernel.\n * @param shape - the solid to query.\n * @returns the adjacency tables (face→edge, edge→face, face→vertex).\n */\nexport function buildTopologyAdjacency(\n kernel: BrepEngineApi,\n shape: BrepHandle,\n): TopologyAdjacency {\n const faceHandles = kernel.getSubShapes(shape, 'face')\n const edgeHandles = kernel.getSubShapes(shape, 'edge')\n const vertexHandles = kernel.getSubShapes(shape, 'vertex')\n const faceCount = faceHandles.length\n const edgeCount = edgeHandles.length\n\n const edgeOrdLookup = buildEdgeOrdLookup(kernel, edgeHandles)\n const vertexOrdLookup = buildFaceOrdLookup(kernel, vertexHandles)\n\n const faceEdgeOrdinals: number[][] = []\n const edgeFaceOrdinals: number[][] = []\n const faceVertexOrdinals: number[][] = []\n for (let ei = 0; ei < edgeCount; ei++) edgeFaceOrdinals.push([])\n\n for (let fi = 0; fi < faceCount; fi++) {\n // face → edge(与 manifest 的 faceEdgeRows 同源)\n const faceEdges = kernel.getSubShapes(faceHandles[fi], 'edge')\n const edgeOrds: number[] = []\n const seen = new Set<number>()\n for (const fe of faceEdges) {\n const ord = findOrdinal(kernel, fe, edgeHandles, edgeOrdLookup)\n if (ord !== undefined && !seen.has(ord)) {\n seen.add(ord)\n edgeOrds.push(ord)\n edgeFaceOrdinals[ord - 1].push(fi + 1)\n }\n }\n faceEdgeOrdinals.push(edgeOrds)\n\n // face → vertex(§4.4:内核 getSubShapes(face,'vertex') 可用)\n const faceVertices = kernel.getSubShapes(faceHandles[fi], 'vertex')\n const vertexOrds: number[] = []\n const seenV = new Set<number>()\n for (const fv of faceVertices) {\n const ord = findOrdinal(kernel, fv, vertexHandles, vertexOrdLookup)\n if (ord !== undefined && !seenV.has(ord)) {\n seenV.add(ord)\n vertexOrds.push(ord)\n }\n }\n faceVertexOrdinals.push(vertexOrds)\n }\n\n return { faceEdgeOrdinals, edgeFaceOrdinals, faceVertexOrdinals }\n}\n"]}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Primitive → CAD 实体转换。
3
+ *
4
+ * 将本项目的各种 primitive(cube, sphere, cylinder, cone, wedge, screw)
5
+ * 转换为 OCCT CAD 实体(Solid),并支持导出为 BREP 格式的 STEP 文件。
6
+ *
7
+ * 两条路径:
8
+ *
9
+ * 1. **直接构造路径**(primitive path):
10
+ * 对于有 OCCT 直接对应的基本体(cube, sphere, cylinder, cone, wedge),
11
+ * 直接调用 OCCT 构造函数(makeBox, makeSphere, makeCylinder, makeCone)
12
+ * 或用 extrude 从 2D 轮廓构造(wedge)。
13
+ * 产出精确 BREP——平面是 PLANE,圆柱面是 CYLINDRICAL_SURFACE,等。
14
+ *
15
+ * 2. **Mesh 重建路径**(mesh path):
16
+ * 对于无 OCCT 直接对应的复杂形状(screw, text),从 THREE.js BufferGeometry
17
+ * 提取三角网格,经 meshReconstruct.ts 的多阶段愈合管线重建为 Solid。
18
+ * 产出仍为 BREP,但曲面由多个小三角平面近似(faceted)。在本项目里,默认brep模型不包含此类近似的到的模型。
19
+ *
20
+ * 坐标系:本项目 primitive 为 Z-up(经过 ROT_Y_TO_Z 旋转),
21
+ * OCCT 默认也是 Z-up,因此直接对应,无需额外轴转换。
22
+ */
23
+ import type * as THREE from 'three';
24
+ import type { BrepHandle } from '../brep/engine/types.js';
25
+ import type { BrepEngineApi } from '../brep/engine/primitives.js';
26
+ import type { PrimitiveType } from './types.js';
27
+ import type { BoxParams, SphereParams, CylinderParams, ConeParams, WedgeParams } from '../mesh/types.js';
28
+ /**
29
+ * Extract positions + indices from a THREE.BufferGeometry for the mesh reconstruction path.
30
+ *
31
+ * Handles both indexed and non-indexed geometry.
32
+ * Sequential indices are created automatically for non-indexed geometry.
33
+ *
34
+ * @param geo - the source THREE.BufferGeometry.
35
+ * @returns the extracted positions and indices arrays.
36
+ */
37
+ export declare function extractMeshData(geo: THREE.BufferGeometry): {
38
+ positions: Float32Array;
39
+ indices: Uint32Array;
40
+ };
41
+ /**
42
+ * Conversion result: the CAD solid handle and the construction path used.
43
+ */
44
+ export interface PrimitiveToBrepResult {
45
+ /** CAD solid handle (the caller is responsible for releasing it). */
46
+ solid: BrepHandle;
47
+ /** The construction path used. */
48
+ path: 'primitive' | 'mesh';
49
+ /** The primitive type. */
50
+ type: PrimitiveType | 'screw' | 'text';
51
+ }
52
+ /** Union type of the primitive parameter objects. */
53
+ export type PrimitiveParams = BoxParams | SphereParams | CylinderParams | ConeParams | WedgeParams;
54
+ /**
55
+ * Convert a project primitive to an OCCT CAD solid.
56
+ *
57
+ * - cube, sphere, cylinder, cone, wedge: constructed directly with OCCT (exact BREP)
58
+ * - screw, text: use the mesh reconstruction path (faceted BREP)
59
+ *
60
+ * @param kernel - the initialized OCCT kernel.
61
+ * @param type - the primitive type.
62
+ * @param params - a full parameter object (BoxParams etc.), or a size number (backwards-compatible, default 20mm).
63
+ * @returns the CAD solid plus path information.
64
+ */
65
+ export declare function primitiveToBrepSolid(kernel: BrepEngineApi, type: PrimitiveType | 'screw' | 'text', params?: PrimitiveParams | number): PrimitiveToBrepResult;
66
+ /**
67
+ * Create a CAD solid from a THREE.BufferGeometry via the mesh reconstruction path.
68
+ *
69
+ * Suitable for complex shapes that cannot be constructed directly
70
+ * (screw, text, SVG extrusion, etc.).
71
+ *
72
+ * @param kernel - the initialized OCCT kernel.
73
+ * @param geo - the THREE.js BufferGeometry.
74
+ * @returns the CAD solid plus path information.
75
+ */
76
+ export declare function geometryToBrepSolid(kernel: BrepEngineApi, geo: THREE.BufferGeometry): PrimitiveToBrepResult;
77
+ /**
78
+ * Export a CAD solid as a BREP-format STEP string.
79
+ *
80
+ * OCCT's exportStep produces a standard ISO-10303-21 STEP file using
81
+ * ADVANCED_FACE with exact surfaces (PLANE, CYLINDRICAL_SURFACE, etc.)
82
+ * rather than a faceted representation (POLYGONAL_FACE).
83
+ *
84
+ * @param kernel - the initialized OCCT kernel.
85
+ * @param solid - the CAD solid handle.
86
+ * @returns the STEP file content as a string.
87
+ */
88
+ export declare function brepSolidToStep(kernel: BrepEngineApi, solid: BrepHandle): string;
89
+ /**
90
+ * Convenience method: convert a primitive directly to a STEP string.
91
+ *
92
+ * Internally calls primitiveToBrepSolid + brepSolidToStep and manages the
93
+ * handle lifecycle automatically.
94
+ *
95
+ * @param kernel - the initialized OCCT kernel.
96
+ * @param type - the primitive type.
97
+ * @param params - a full parameter object, or a size number (backwards-compatible, default 20mm).
98
+ * @returns the STEP file content string plus the path used.
99
+ */
100
+ export declare function primitiveToBrepStep(kernel: BrepEngineApi, type: PrimitiveType, params?: PrimitiveParams | number): {
101
+ step: string;
102
+ path: 'primitive' | 'mesh';
103
+ };
104
+ //# sourceMappingURL=brep-primitives.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brep-primitives.d.ts","sourceRoot":"","sources":["../../src/primitives/brep-primitives.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAA;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,cAAc,EACd,UAAU,EACV,WAAW,EACZ,MAAM,eAAe,CAAA;AAItB;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,cAAc,GAAG;IAC1D,SAAS,EAAE,YAAY,CAAA;IACvB,OAAO,EAAE,WAAW,CAAA;CACrB,CAiBA;AA6JD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,qEAAqE;IACrE,KAAK,EAAE,UAAU,CAAA;IACjB,kCAAkC;IAClC,IAAI,EAAE,WAAW,GAAG,MAAM,CAAA;IAC1B,0BAA0B;IAC1B,IAAI,EAAE,aAAa,GAAG,OAAO,GAAG,MAAM,CAAA;CACvC;AAED,qDAAqD;AACrD,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,YAAY,GAAG,cAAc,GAAG,UAAU,GAAG,WAAW,CAAA;AA6BlG;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,aAAa,GAAG,OAAO,GAAG,MAAM,EACtC,MAAM,CAAC,EAAE,eAAe,GAAG,MAAM,GAChC,qBAAqB,CAkCvB;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,GAAG,EAAE,KAAK,CAAC,cAAc,GACxB,qBAAqB,CAIvB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,CAEhF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,aAAa,EACnB,MAAM,CAAC,EAAE,eAAe,GAAG,MAAM,GAChC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAAA;CAAE,CAQ9C"}