@faicad/faijs 0.16.1 → 0.18.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 (498) hide show
  1. package/LICENSE +4 -5
  2. package/NOTICE +5 -6
  3. package/dist/api/api-namespace.d.ts.map +1 -1
  4. package/dist/api/api-namespace.js +20 -2
  5. package/dist/api/api-namespace.js.map +1 -1
  6. package/dist/api/assembly/entities.d.ts +1 -1
  7. package/dist/api/assembly/entities.d.ts.map +1 -1
  8. package/dist/api/assembly/entities.js.map +1 -1
  9. package/dist/api/assembly/joints.d.ts +2 -2
  10. package/dist/api/assembly/joints.d.ts.map +1 -1
  11. package/dist/api/assembly/joints.js +2 -2
  12. package/dist/api/assembly/joints.js.map +1 -1
  13. package/dist/api/assembly/lower.d.ts +1 -1
  14. package/dist/api/assembly/lower.d.ts.map +1 -1
  15. package/dist/api/assembly/lower.js.map +1 -1
  16. package/dist/api/assembly/pose.d.ts +3 -3
  17. package/dist/api/assembly/pose.d.ts.map +1 -1
  18. package/dist/api/assembly/pose.js +1 -1
  19. package/dist/api/assembly/pose.js.map +1 -1
  20. package/dist/api/assembly/preview.d.ts +1 -1
  21. package/dist/api/assembly/preview.d.ts.map +1 -1
  22. package/dist/api/assembly/preview.js +1 -1
  23. package/dist/api/assembly/preview.js.map +1 -1
  24. package/dist/api/assembly/solve.d.ts.map +1 -1
  25. package/dist/api/assembly/solve.js +3 -3
  26. package/dist/api/assembly/solve.js.map +1 -1
  27. package/dist/api/assembly/solvers/assembly-tree.d.ts +98 -0
  28. package/dist/api/assembly/solvers/assembly-tree.d.ts.map +1 -0
  29. package/dist/api/assembly/solvers/assembly-tree.js +130 -0
  30. package/dist/api/assembly/solvers/assembly-tree.js.map +1 -0
  31. package/dist/api/assembly/solvers/chain-solver.d.ts +27 -0
  32. package/dist/api/assembly/solvers/chain-solver.d.ts.map +1 -0
  33. package/dist/api/assembly/solvers/chain-solver.js +330 -0
  34. package/dist/api/assembly/solvers/chain-solver.js.map +1 -0
  35. package/dist/api/assembly/solvers/global-solver.js +2 -2
  36. package/dist/api/assembly/solvers/global-solver.js.map +1 -1
  37. package/dist/api/assembly/solvers/joints-kinematics.d.ts +308 -0
  38. package/dist/api/assembly/solvers/joints-kinematics.d.ts.map +1 -0
  39. package/dist/api/assembly/solvers/joints-kinematics.js +643 -0
  40. package/dist/api/assembly/solvers/joints-kinematics.js.map +1 -0
  41. package/dist/api/assembly/solvers/quat.d.ts +35 -0
  42. package/dist/api/assembly/solvers/quat.d.ts.map +1 -0
  43. package/dist/api/assembly/solvers/quat.js +84 -0
  44. package/dist/api/assembly/solvers/quat.js.map +1 -0
  45. package/dist/api/assembly/solvers/types.d.ts +33 -0
  46. package/dist/api/assembly/solvers/types.d.ts.map +1 -1
  47. package/dist/api/assembly/solvers/types.js.map +1 -1
  48. package/dist/api/boolean.d.ts.map +1 -1
  49. package/dist/api/boolean.js +66 -29
  50. package/dist/api/boolean.js.map +1 -1
  51. package/dist/api/brep-mirror/booleanFns.d.ts +40 -0
  52. package/dist/api/brep-mirror/booleanFns.d.ts.map +1 -0
  53. package/dist/api/brep-mirror/booleanFns.js +104 -0
  54. package/dist/api/brep-mirror/booleanFns.js.map +1 -0
  55. package/dist/api/brep-mirror/brepHelpers.d.ts +55 -0
  56. package/dist/api/brep-mirror/brepHelpers.d.ts.map +1 -0
  57. package/dist/api/brep-mirror/brepHelpers.js +131 -0
  58. package/dist/api/brep-mirror/brepHelpers.js.map +1 -0
  59. package/dist/api/brep-mirror/compoundFns.d.ts +47 -0
  60. package/dist/api/brep-mirror/compoundFns.d.ts.map +1 -0
  61. package/dist/api/brep-mirror/compoundFns.js +300 -0
  62. package/dist/api/brep-mirror/compoundFns.js.map +1 -0
  63. package/dist/api/brep-mirror/healingFns.d.ts +78 -0
  64. package/dist/api/brep-mirror/healingFns.d.ts.map +1 -0
  65. package/dist/api/brep-mirror/healingFns.js +294 -0
  66. package/dist/api/brep-mirror/healingFns.js.map +1 -0
  67. package/dist/api/brep-mirror/hullFns.d.ts +20 -0
  68. package/dist/api/brep-mirror/hullFns.d.ts.map +1 -0
  69. package/dist/api/brep-mirror/hullFns.js +46 -0
  70. package/dist/api/brep-mirror/hullFns.js.map +1 -0
  71. package/dist/api/brep-mirror/patternFns.d.ts +43 -0
  72. package/dist/api/brep-mirror/patternFns.d.ts.map +1 -0
  73. package/dist/api/brep-mirror/patternFns.js +178 -0
  74. package/dist/api/brep-mirror/patternFns.js.map +1 -0
  75. package/dist/api/brep-mirror/primitiveFns.d.ts +42 -0
  76. package/dist/api/brep-mirror/primitiveFns.d.ts.map +1 -0
  77. package/dist/api/brep-mirror/primitiveFns.js +104 -0
  78. package/dist/api/brep-mirror/primitiveFns.js.map +1 -0
  79. package/dist/api/brep-mirror/roofFns.d.ts +24 -0
  80. package/dist/api/brep-mirror/roofFns.d.ts.map +1 -0
  81. package/dist/api/brep-mirror/roofFns.js +229 -0
  82. package/dist/api/brep-mirror/roofFns.js.map +1 -0
  83. package/dist/api/brep-mirror/straightSkeleton.d.ts +36 -0
  84. package/dist/api/brep-mirror/straightSkeleton.d.ts.map +1 -0
  85. package/dist/api/brep-mirror/straightSkeleton.js +443 -0
  86. package/dist/api/brep-mirror/straightSkeleton.js.map +1 -0
  87. package/dist/api/brep-mirror/sweepFns.d.ts +55 -0
  88. package/dist/api/brep-mirror/sweepFns.d.ts.map +1 -0
  89. package/dist/api/brep-mirror/sweepFns.js +200 -0
  90. package/dist/api/brep-mirror/sweepFns.js.map +1 -0
  91. package/dist/api/brep-mirror/threadFns.d.ts +15 -0
  92. package/dist/api/brep-mirror/threadFns.d.ts.map +1 -1
  93. package/dist/api/brep-mirror/threadFns.js +37 -2
  94. package/dist/api/brep-mirror/threadFns.js.map +1 -1
  95. package/dist/api/brep-mirror/topologyFns.d.ts +74 -0
  96. package/dist/api/brep-mirror/topologyFns.d.ts.map +1 -0
  97. package/dist/api/brep-mirror/topologyFns.js +276 -0
  98. package/dist/api/brep-mirror/topologyFns.js.map +1 -0
  99. package/dist/api/brep-topology.d.ts +190 -0
  100. package/dist/api/brep-topology.d.ts.map +1 -0
  101. package/dist/api/brep-topology.js +337 -0
  102. package/dist/api/brep-topology.js.map +1 -0
  103. package/dist/api/brepjs-compat/constants.d.ts +11 -0
  104. package/dist/api/brepjs-compat/constants.d.ts.map +1 -0
  105. package/dist/api/brepjs-compat/constants.js +11 -0
  106. package/dist/api/brepjs-compat/constants.js.map +1 -0
  107. package/dist/api/brepjs-compat/index.d.ts +19 -232
  108. package/dist/api/brepjs-compat/index.d.ts.map +1 -1
  109. package/dist/api/brepjs-compat/index.js +19 -286
  110. package/dist/api/brepjs-compat/index.js.map +1 -1
  111. package/dist/api/brepjs-compat/planeOps.d.ts +98 -0
  112. package/dist/api/brepjs-compat/planeOps.d.ts.map +1 -0
  113. package/dist/api/brepjs-compat/planeOps.js +170 -0
  114. package/dist/api/brepjs-compat/planeOps.js.map +1 -0
  115. package/dist/api/brepjs-compat/planeTypes.d.ts +24 -0
  116. package/dist/api/brepjs-compat/planeTypes.d.ts.map +1 -0
  117. package/dist/api/brepjs-compat/planeTypes.js +8 -0
  118. package/dist/api/brepjs-compat/planeTypes.js.map +1 -0
  119. package/dist/api/brepjs-compat/types.d.ts +64 -0
  120. package/dist/api/brepjs-compat/types.d.ts.map +1 -0
  121. package/dist/api/brepjs-compat/types.js +48 -0
  122. package/dist/api/brepjs-compat/types.js.map +1 -0
  123. package/dist/api/brepjs-compat/vecOps.d.ts +124 -0
  124. package/dist/api/brepjs-compat/vecOps.d.ts.map +1 -0
  125. package/dist/api/brepjs-compat/vecOps.js +202 -0
  126. package/dist/api/brepjs-compat/vecOps.js.map +1 -0
  127. package/dist/api/chamfer.d.ts +12 -3
  128. package/dist/api/chamfer.d.ts.map +1 -1
  129. package/dist/api/chamfer.js +54 -20
  130. package/dist/api/chamfer.js.map +1 -1
  131. package/dist/api/compound-geom.d.ts.map +1 -1
  132. package/dist/api/compound-geom.js +8 -2
  133. package/dist/api/compound-geom.js.map +1 -1
  134. package/dist/api/draft.d.ts +69 -0
  135. package/dist/api/draft.d.ts.map +1 -0
  136. package/dist/api/draft.js +109 -0
  137. package/dist/api/draft.js.map +1 -0
  138. package/dist/api/edge-ref.d.ts.map +1 -1
  139. package/dist/api/edge-ref.js +2 -2
  140. package/dist/api/edge-ref.js.map +1 -1
  141. package/dist/api/engrave.d.ts.map +1 -1
  142. package/dist/api/engrave.js +2 -3
  143. package/dist/api/engrave.js.map +1 -1
  144. package/dist/api/extrude.d.ts.map +1 -1
  145. package/dist/api/extrude.js +44 -14
  146. package/dist/api/extrude.js.map +1 -1
  147. package/dist/api/face-ref.d.ts.map +1 -1
  148. package/dist/api/face-ref.js +2 -2
  149. package/dist/api/face-ref.js.map +1 -1
  150. package/dist/api/feature-repair.d.ts +137 -0
  151. package/dist/api/feature-repair.d.ts.map +1 -0
  152. package/dist/api/feature-repair.js +221 -0
  153. package/dist/api/feature-repair.js.map +1 -0
  154. package/dist/api/fillet-variable.d.ts +35 -0
  155. package/dist/api/fillet-variable.d.ts.map +1 -0
  156. package/dist/api/fillet-variable.js +71 -0
  157. package/dist/api/fillet-variable.js.map +1 -0
  158. package/dist/api/fillet.d.ts +3 -0
  159. package/dist/api/fillet.d.ts.map +1 -1
  160. package/dist/api/fillet.js +7 -4
  161. package/dist/api/fillet.js.map +1 -1
  162. package/dist/api/generated/2d.d.ts +1 -13
  163. package/dist/api/generated/2d.d.ts.map +1 -1
  164. package/dist/api/generated/2d.js +6 -1
  165. package/dist/api/generated/2d.js.map +1 -1
  166. package/dist/api/generated/brepjs/index.d.ts +298 -298
  167. package/dist/api/generated/brepjs/index.d.ts.map +1 -1
  168. package/dist/api/generated/brepjs/index.js +183 -183
  169. package/dist/api/generated/brepjs/index.js.map +1 -1
  170. package/dist/api/generated/core.d.ts +3 -123
  171. package/dist/api/generated/core.d.ts.map +1 -1
  172. package/dist/api/generated/core.js +2 -81
  173. package/dist/api/generated/core.js.map +1 -1
  174. package/dist/api/generated/gear.d.ts +1 -15
  175. package/dist/api/generated/gear.d.ts.map +1 -1
  176. package/dist/api/generated/gear.js +6 -3
  177. package/dist/api/generated/gear.js.map +1 -1
  178. package/dist/api/generated/io.d.ts +1 -13
  179. package/dist/api/generated/io.d.ts.map +1 -1
  180. package/dist/api/generated/io.js +6 -1
  181. package/dist/api/generated/io.js.map +1 -1
  182. package/dist/api/generated/kernel.d.ts +1 -39
  183. package/dist/api/generated/kernel.d.ts.map +1 -1
  184. package/dist/api/generated/kernel.js +6 -4
  185. package/dist/api/generated/kernel.js.map +1 -1
  186. package/dist/api/generated/measurement.d.ts +53 -97
  187. package/dist/api/generated/measurement.d.ts.map +1 -1
  188. package/dist/api/generated/measurement.js +48 -143
  189. package/dist/api/generated/measurement.js.map +1 -1
  190. package/dist/api/generated/ns.d.ts +1 -10
  191. package/dist/api/generated/ns.d.ts.map +1 -1
  192. package/dist/api/generated/ns.js +2 -10
  193. package/dist/api/generated/ns.js.map +1 -1
  194. package/dist/api/generated/operations.d.ts +65 -110
  195. package/dist/api/generated/operations.d.ts.map +1 -1
  196. package/dist/api/generated/operations.js +132 -80
  197. package/dist/api/generated/operations.js.map +1 -1
  198. package/dist/api/generated/projection.d.ts +1 -8
  199. package/dist/api/generated/projection.d.ts.map +1 -1
  200. package/dist/api/generated/projection.js +6 -4
  201. package/dist/api/generated/projection.js.map +1 -1
  202. package/dist/api/generated/query.d.ts +1 -9
  203. package/dist/api/generated/query.d.ts.map +1 -1
  204. package/dist/api/generated/query.js +6 -1
  205. package/dist/api/generated/query.js.map +1 -1
  206. package/dist/api/generated/script-face-manifest.d.ts +2 -0
  207. package/dist/api/generated/script-face-manifest.d.ts.map +1 -1
  208. package/dist/api/generated/script-face-manifest.js +22 -10
  209. package/dist/api/generated/script-face-manifest.js.map +1 -1
  210. package/dist/api/generated/script-face.d.ts +52 -27
  211. package/dist/api/generated/script-face.d.ts.map +1 -1
  212. package/dist/api/generated/script-face.js +18 -4
  213. package/dist/api/generated/script-face.js.map +1 -1
  214. package/dist/api/generated/sketching.d.ts +4 -7
  215. package/dist/api/generated/sketching.d.ts.map +1 -1
  216. package/dist/api/generated/sketching.js +10 -8
  217. package/dist/api/generated/sketching.js.map +1 -1
  218. package/dist/api/generated/text.d.ts +1 -6
  219. package/dist/api/generated/text.d.ts.map +1 -1
  220. package/dist/api/generated/text.js +6 -3
  221. package/dist/api/generated/text.js.map +1 -1
  222. package/dist/api/generated/topology.d.ts +77 -175
  223. package/dist/api/generated/topology.d.ts.map +1 -1
  224. package/dist/api/generated/topology.js +172 -131
  225. package/dist/api/generated/topology.js.map +1 -1
  226. package/dist/api/geom.d.ts.map +1 -1
  227. package/dist/api/geom.js +2 -2
  228. package/dist/api/geom.js.map +1 -1
  229. package/dist/api/helix.d.ts +51 -0
  230. package/dist/api/helix.d.ts.map +1 -0
  231. package/dist/api/helix.js +63 -0
  232. package/dist/api/helix.js.map +1 -0
  233. package/dist/api/import-step.d.ts.map +1 -1
  234. package/dist/api/import-step.js +6 -2
  235. package/dist/api/import-step.js.map +1 -1
  236. package/dist/api/index.d.ts +20 -6
  237. package/dist/api/index.d.ts.map +1 -1
  238. package/dist/api/index.js +30 -13
  239. package/dist/api/index.js.map +1 -1
  240. package/dist/api/internal/compat-op.d.ts +10 -0
  241. package/dist/api/internal/compat-op.d.ts.map +1 -1
  242. package/dist/api/internal/compat-op.js +9 -3
  243. package/dist/api/internal/compat-op.js.map +1 -1
  244. package/dist/api/internal/compat-projection.d.ts +4 -4
  245. package/dist/api/internal/compat-projection.js +7 -7
  246. package/dist/api/internal/compat-projection.js.map +1 -1
  247. package/dist/api/internal/l3-bridge.d.ts +75 -42
  248. package/dist/api/internal/l3-bridge.d.ts.map +1 -1
  249. package/dist/api/internal/l3-bridge.js +105 -50
  250. package/dist/api/internal/l3-bridge.js.map +1 -1
  251. package/dist/api/internal/profile-wire.d.ts +31 -0
  252. package/dist/api/internal/profile-wire.d.ts.map +1 -0
  253. package/dist/api/internal/profile-wire.js +37 -0
  254. package/dist/api/internal/profile-wire.js.map +1 -0
  255. package/dist/api/internal/replica-role-table.js +2 -2
  256. package/dist/api/internal/replica-role-table.js.map +1 -1
  257. package/dist/api/loft.d.ts +66 -0
  258. package/dist/api/loft.d.ts.map +1 -0
  259. package/dist/api/loft.js +111 -0
  260. package/dist/api/loft.js.map +1 -0
  261. package/dist/api/measurement/index.d.ts +51 -0
  262. package/dist/api/measurement/index.d.ts.map +1 -0
  263. package/dist/api/measurement/index.js +71 -0
  264. package/dist/api/measurement/index.js.map +1 -0
  265. package/dist/api/occt-kernel-bridge.d.ts +5 -8
  266. package/dist/api/occt-kernel-bridge.d.ts.map +1 -1
  267. package/dist/api/occt-kernel-bridge.js +18 -14
  268. package/dist/api/occt-kernel-bridge.js.map +1 -1
  269. package/dist/api/pattern.d.ts.map +1 -1
  270. package/dist/api/pattern.js +3 -4
  271. package/dist/api/pattern.js.map +1 -1
  272. package/dist/api/place.d.ts.map +1 -1
  273. package/dist/api/place.js +2 -4
  274. package/dist/api/place.js.map +1 -1
  275. package/dist/api/primitives.d.ts.map +1 -1
  276. package/dist/api/primitives.js +3 -4
  277. package/dist/api/primitives.js.map +1 -1
  278. package/dist/api/profile.d.ts +89 -0
  279. package/dist/api/profile.d.ts.map +1 -0
  280. package/dist/api/profile.js +194 -0
  281. package/dist/api/profile.js.map +1 -0
  282. package/dist/api/replicate.d.ts +28 -1
  283. package/dist/api/replicate.d.ts.map +1 -1
  284. package/dist/api/replicate.js +34 -23
  285. package/dist/api/replicate.js.map +1 -1
  286. package/dist/api/result.d.ts +6 -11
  287. package/dist/api/result.d.ts.map +1 -1
  288. package/dist/api/result.js +6 -11
  289. package/dist/api/result.js.map +1 -1
  290. package/dist/api/revolve.d.ts.map +1 -1
  291. package/dist/api/revolve.js +15 -14
  292. package/dist/api/revolve.js.map +1 -1
  293. package/dist/api/screw.d.ts +3 -0
  294. package/dist/api/screw.d.ts.map +1 -1
  295. package/dist/api/screw.js +9 -4
  296. package/dist/api/screw.js.map +1 -1
  297. package/dist/api/sdf.d.ts +1 -1
  298. package/dist/api/section-by-plane.d.ts +42 -0
  299. package/dist/api/section-by-plane.d.ts.map +1 -0
  300. package/dist/api/section-by-plane.js +61 -0
  301. package/dist/api/section-by-plane.js.map +1 -0
  302. package/dist/api/shell.d.ts +45 -0
  303. package/dist/api/shell.d.ts.map +1 -0
  304. package/dist/api/shell.js +73 -0
  305. package/dist/api/shell.js.map +1 -0
  306. package/dist/api/sketch.d.ts +8 -1
  307. package/dist/api/sketch.d.ts.map +1 -1
  308. package/dist/api/sketch.js +12 -7
  309. package/dist/api/sketch.js.map +1 -1
  310. package/dist/api/split-by-plane.d.ts +41 -0
  311. package/dist/api/split-by-plane.d.ts.map +1 -0
  312. package/dist/api/split-by-plane.js +60 -0
  313. package/dist/api/split-by-plane.js.map +1 -0
  314. package/dist/api/split.d.ts +6 -1
  315. package/dist/api/split.d.ts.map +1 -1
  316. package/dist/api/split.js +23 -9
  317. package/dist/api/split.js.map +1 -1
  318. package/dist/api/surface/arg-spec.d.ts +22 -0
  319. package/dist/api/surface/arg-spec.d.ts.map +1 -1
  320. package/dist/api/surface/arg-spec.js +729 -477
  321. package/dist/api/surface/arg-spec.js.map +1 -1
  322. package/dist/api/sweep.d.ts +55 -0
  323. package/dist/api/sweep.d.ts.map +1 -0
  324. package/dist/api/sweep.js +86 -0
  325. package/dist/api/sweep.js.map +1 -0
  326. package/dist/api/thicken.d.ts +36 -0
  327. package/dist/api/thicken.d.ts.map +1 -0
  328. package/dist/api/thicken.js +55 -0
  329. package/dist/api/thicken.js.map +1 -0
  330. package/dist/api/transform.d.ts +8 -0
  331. package/dist/api/transform.d.ts.map +1 -1
  332. package/dist/api/transform.js +15 -4
  333. package/dist/api/transform.js.map +1 -1
  334. package/dist/api/view/cameraFns.d.ts +48 -0
  335. package/dist/api/view/cameraFns.d.ts.map +1 -0
  336. package/dist/api/view/cameraFns.js +75 -0
  337. package/dist/api/view/cameraFns.js.map +1 -0
  338. package/dist/api/view/projectionPlanes.d.ts +25 -0
  339. package/dist/api/view/projectionPlanes.d.ts.map +1 -0
  340. package/dist/api/view/projectionPlanes.js +30 -0
  341. package/dist/api/view/projectionPlanes.js.map +1 -0
  342. package/dist/api/view/view-camera.d.ts +2 -2
  343. package/dist/api/view/view-camera.d.ts.map +1 -1
  344. package/dist/api/view/view-camera.js +3 -3
  345. package/dist/api/view/view-camera.js.map +1 -1
  346. package/dist/api/view/view-projection.d.ts +9 -6
  347. package/dist/api/view/view-projection.d.ts.map +1 -1
  348. package/dist/api/view/view-projection.js +132 -65
  349. package/dist/api/view/view-projection.js.map +1 -1
  350. package/dist/api/wire.d.ts +45 -0
  351. package/dist/api/wire.d.ts.map +1 -0
  352. package/dist/api/wire.js +96 -0
  353. package/dist/api/wire.js.map +1 -0
  354. package/dist/boolean/creased-normals.d.ts +50 -0
  355. package/dist/boolean/creased-normals.d.ts.map +1 -0
  356. package/dist/boolean/creased-normals.js +114 -0
  357. package/dist/boolean/creased-normals.js.map +1 -0
  358. package/dist/boolean/deriveNormals.d.ts +4 -1
  359. package/dist/boolean/deriveNormals.d.ts.map +1 -1
  360. package/dist/boolean/deriveNormals.js +5 -2
  361. package/dist/boolean/deriveNormals.js.map +1 -1
  362. package/dist/brep/brep-ops.d.ts +6 -0
  363. package/dist/brep/brep-ops.d.ts.map +1 -1
  364. package/dist/brep/brep-ops.js +11 -2
  365. package/dist/brep/brep-ops.js.map +1 -1
  366. package/dist/brep/brep-topology.d.ts +4 -0
  367. package/dist/brep/brep-topology.d.ts.map +1 -1
  368. package/dist/brep/brep-topology.js +4 -0
  369. package/dist/brep/brep-topology.js.map +1 -1
  370. package/dist/brep/engine/adapters/brep-mock.d.ts.map +1 -1
  371. package/dist/brep/engine/adapters/brep-mock.js +79 -59
  372. package/dist/brep/engine/adapters/brep-mock.js.map +1 -1
  373. package/dist/brep/engine/adapters/brepkit.d.ts.map +1 -1
  374. package/dist/brep/engine/adapters/brepkit.js +35 -2
  375. package/dist/brep/engine/adapters/brepkit.js.map +1 -1
  376. package/dist/brep/engine/adapters/occt.d.ts +15 -7
  377. package/dist/brep/engine/adapters/occt.d.ts.map +1 -1
  378. package/dist/brep/engine/adapters/occt.js +64 -167
  379. package/dist/brep/engine/adapters/occt.js.map +1 -1
  380. package/dist/brep/engine/primitives.d.ts +93 -130
  381. package/dist/brep/engine/primitives.d.ts.map +1 -1
  382. package/dist/brep/engine/primitives.js +9 -7
  383. package/dist/brep/engine/primitives.js.map +1 -1
  384. package/dist/brep/engine/types.d.ts +14 -1
  385. package/dist/brep/engine/types.d.ts.map +1 -1
  386. package/dist/brep/engine/types.js +11 -1
  387. package/dist/brep/engine/types.js.map +1 -1
  388. package/dist/brep/export/step.d.ts +3 -0
  389. package/dist/brep/export/step.d.ts.map +1 -1
  390. package/dist/brep/export/step.js +7 -1
  391. package/dist/brep/export/step.js.map +1 -1
  392. package/dist/brep/face-evolution.d.ts +8 -0
  393. package/dist/brep/face-evolution.d.ts.map +1 -1
  394. package/dist/brep/face-evolution.js +15 -3
  395. package/dist/brep/face-evolution.js.map +1 -1
  396. package/dist/brep/handle-bridge.d.ts +20 -2
  397. package/dist/brep/handle-bridge.d.ts.map +1 -1
  398. package/dist/brep/handle-bridge.js +25 -2
  399. package/dist/brep/handle-bridge.js.map +1 -1
  400. package/dist/brepkit-kernel/brepkitKernel.d.ts +25 -5
  401. package/dist/brepkit-kernel/brepkitKernel.d.ts.map +1 -1
  402. package/dist/brepkit-kernel/brepkitKernel.js +782 -218
  403. package/dist/brepkit-kernel/brepkitKernel.js.map +1 -1
  404. package/dist/brepkit-kernel/multi-version-test.d.ts +40 -0
  405. package/dist/brepkit-kernel/multi-version-test.d.ts.map +1 -0
  406. package/dist/brepkit-kernel/multi-version-test.js +89 -0
  407. package/dist/brepkit-kernel/multi-version-test.js.map +1 -0
  408. package/dist/cad-runtime/admit-compat-lib.d.ts +6 -1
  409. package/dist/cad-runtime/admit-compat-lib.d.ts.map +1 -1
  410. package/dist/cad-runtime/admit-compat-lib.js +5 -1
  411. package/dist/cad-runtime/admit-compat-lib.js.map +1 -1
  412. package/dist/cad-runtime/backend-dispatch.d.ts +9 -3
  413. package/dist/cad-runtime/backend-dispatch.d.ts.map +1 -1
  414. package/dist/cad-runtime/backend-dispatch.js +32 -2
  415. package/dist/cad-runtime/backend-dispatch.js.map +1 -1
  416. package/dist/cad-runtime/direct-executor.d.ts.map +1 -1
  417. package/dist/cad-runtime/direct-executor.js +8 -2
  418. package/dist/cad-runtime/direct-executor.js.map +1 -1
  419. package/dist/cad-runtime/runtime.d.ts +3 -0
  420. package/dist/cad-runtime/runtime.d.ts.map +1 -1
  421. package/dist/cad-runtime/runtime.js +3 -1
  422. package/dist/cad-runtime/runtime.js.map +1 -1
  423. package/dist/define-op.d.ts +18 -2
  424. package/dist/define-op.d.ts.map +1 -1
  425. package/dist/define-op.js +29 -1
  426. package/dist/define-op.js.map +1 -1
  427. package/dist/env-agnostic.d.ts +3 -0
  428. package/dist/env-agnostic.d.ts.map +1 -1
  429. package/dist/env-agnostic.js +7 -0
  430. package/dist/env-agnostic.js.map +1 -1
  431. package/dist/index.d.ts.map +1 -1
  432. package/dist/index.js +3 -4
  433. package/dist/index.js.map +1 -1
  434. package/dist/lang/symbol-table.generated.d.ts +29 -1
  435. package/dist/lang/symbol-table.generated.d.ts.map +1 -1
  436. package/dist/lang/symbol-table.generated.js +30 -2
  437. package/dist/lang/symbol-table.generated.js.map +1 -1
  438. package/dist/occt-kernel/highLevelApi.d.ts.map +1 -1
  439. package/dist/occt-kernel/highLevelApi.js +6 -3
  440. package/dist/occt-kernel/highLevelApi.js.map +1 -1
  441. package/dist/occt-kernel/hullGeometry.d.ts +31 -0
  442. package/dist/occt-kernel/hullGeometry.d.ts.map +1 -0
  443. package/dist/occt-kernel/hullGeometry.js +319 -0
  444. package/dist/occt-kernel/hullGeometry.js.map +1 -0
  445. package/dist/occt-kernel/hullOps.d.ts +24 -0
  446. package/dist/occt-kernel/hullOps.d.ts.map +1 -0
  447. package/dist/occt-kernel/hullOps.js +52 -0
  448. package/dist/occt-kernel/hullOps.js.map +1 -0
  449. package/dist/occt-kernel/occt-primitives.d.ts +14 -0
  450. package/dist/occt-kernel/occt-primitives.d.ts.map +1 -0
  451. package/dist/occt-kernel/occt-primitives.js +351 -0
  452. package/dist/occt-kernel/occt-primitives.js.map +1 -0
  453. package/dist/occt-kernel/occtKernel.d.ts +14 -6
  454. package/dist/occt-kernel/occtKernel.d.ts.map +1 -1
  455. package/dist/occt-kernel/occtKernel.js +11 -3
  456. package/dist/occt-kernel/occtKernel.js.map +1 -1
  457. package/dist/occt-kernel/topologyExt.js +2 -2
  458. package/dist/occt-kernel/topologyExt.js.map +1 -1
  459. package/dist/primitives/brep-primitives.d.ts +4 -0
  460. package/dist/primitives/brep-primitives.d.ts.map +1 -1
  461. package/dist/primitives/brep-primitives.js +4 -0
  462. package/dist/primitives/brep-primitives.js.map +1 -1
  463. package/dist/result/bug.d.ts +22 -0
  464. package/dist/result/bug.d.ts.map +1 -0
  465. package/dist/result/bug.js +28 -0
  466. package/dist/result/bug.js.map +1 -0
  467. package/dist/result/errors.d.ts +270 -0
  468. package/dist/result/errors.d.ts.map +1 -0
  469. package/dist/result/errors.js +317 -0
  470. package/dist/result/errors.js.map +1 -0
  471. package/dist/result/kernelErrorTranslation.d.ts +21 -0
  472. package/dist/result/kernelErrorTranslation.d.ts.map +1 -0
  473. package/dist/result/kernelErrorTranslation.js +102 -0
  474. package/dist/result/kernelErrorTranslation.js.map +1 -0
  475. package/dist/result/result.d.ts +213 -0
  476. package/dist/result/result.d.ts.map +1 -0
  477. package/dist/result/result.js +336 -0
  478. package/dist/result/result.js.map +1 -0
  479. package/dist/result/vec3.d.ts +12 -0
  480. package/dist/result/vec3.d.ts.map +1 -0
  481. package/dist/result/vec3.js +14 -0
  482. package/dist/result/vec3.js.map +1 -0
  483. package/dist/runtime-state.d.ts +9 -0
  484. package/dist/runtime-state.d.ts.map +1 -1
  485. package/dist/runtime-state.js.map +1 -1
  486. package/dist/sdk.d.ts +3 -1
  487. package/dist/sdk.d.ts.map +1 -1
  488. package/dist/sdk.js +2 -1
  489. package/dist/sdk.js.map +1 -1
  490. package/dist/shape.d.ts +43 -1
  491. package/dist/shape.d.ts.map +1 -1
  492. package/dist/shape.js +57 -1
  493. package/dist/shape.js.map +1 -1
  494. package/dist/topology/naming/geom-hint.js +1 -1
  495. package/dist/topology/naming/geom-hint.js.map +1 -1
  496. package/dist/topology/naming/score.js +1 -1
  497. package/dist/topology/naming/score.js.map +1 -1
  498. package/package.json +6 -16
@@ -0,0 +1,308 @@
1
+ import type { AssemblyNode, Vec3 } from './assembly-tree.js';
2
+ /**
3
+ * Drivable kinematic joints — built on the assembly tree. A joint connects a
4
+ * `parent` (reference) body to a `child` (moving) body and carries one or more
5
+ * drivable degrees of freedom (DOF), each clamped to its own range.
6
+ *
7
+ * Single-DOF joints (`revolute`, `prismatic`) are sugar over the Phase-1 mate
8
+ * constraints — a revolute is concentric (axis alignment) plus an angle driver;
9
+ * a prismatic is coincident plus a distance driver. Multi-DOF joints compose
10
+ * several DOFs about a shared anchor: `cylindrical` (rotation + slide on one
11
+ * axis, 2 DOF), `planar` (two in-plane translations + a rotation about the
12
+ * normal, 3 DOF), and `spherical` (three rotations about a pivot, 3 DOF).
13
+ *
14
+ * The `dofs` array is the source of truth; `value`/`min`/`max`/`axis` mirror the
15
+ * primary (first) DOF for single-DOF ergonomics and backward compatibility.
16
+ * `joint.dofs` are the stored degrees of freedom, distinct from
17
+ * `AssemblyNode.rotate` (a static structural transform).
18
+ */
19
+ /** A joint axis: a point on the axis line plus a direction. */
20
+ export interface JointAxis {
21
+ readonly origin: Vec3;
22
+ readonly direction: Vec3;
23
+ }
24
+ /** The kind of kinematic joint: revolute, prismatic, cylindrical, planar, or spherical. */
25
+ export type JointType = 'revolute' | 'prismatic' | 'cylindrical' | 'planar' | 'spherical';
26
+ /**
27
+ * A single drivable degree of freedom. A `rotation` DOF turns about the joint's
28
+ * anchor point along `axis` (degrees); a `translation` DOF slides along `axis`
29
+ * (length units). `value` is always clamped to `[min, max]`.
30
+ */
31
+ export interface JointDOF {
32
+ readonly kind: 'rotation' | 'translation';
33
+ readonly axis: Vec3;
34
+ readonly min: number;
35
+ readonly max: number;
36
+ readonly value: number;
37
+ }
38
+ /**
39
+ * A kinematic joint connecting a parent and child body, with its drivable DOFs.
40
+ */
41
+ export interface Joint {
42
+ readonly type: JointType;
43
+ /** Reference body (stays put); the child moves relative to it. */
44
+ readonly parent: string;
45
+ readonly child: string;
46
+ /** Primary axis; `origin` is the anchor every rotation DOF pivots about. */
47
+ readonly axis: JointAxis;
48
+ /** Primary-DOF range bounds (mirror of `dofs[0]`). */
49
+ readonly min: number;
50
+ readonly max: number;
51
+ /** Primary-DOF value (mirror of `dofs[0]`), always clamped to `[min, max]`. */
52
+ readonly value: number;
53
+ /** All drivable degrees of freedom, in composition order. */
54
+ readonly dofs: readonly JointDOF[];
55
+ /**
56
+ * Optional fixed transform applied to the child frame *after* the joint
57
+ * motion (`childWorld = parentWorld ∘ jointTransform ∘ offset`). Lets a single
58
+ * joint carry a static link offset (e.g. a Denavit-Hartenberg link geometry)
59
+ * without an extra body. Defaults to identity. See `jointsFromDH`.
60
+ */
61
+ readonly offset?: JointPose;
62
+ }
63
+ /** A rigid transform: translation + quaternion rotation `[w, x, y, z]`. */
64
+ export interface JointPose {
65
+ readonly position: Vec3;
66
+ readonly rotation: [number, number, number, number];
67
+ }
68
+ /** Options for single-DOF joints: range bounds and initial value. */
69
+ export interface JointOptions {
70
+ /** Range lower bound. Default: -180 (revolute) / 0 (prismatic). */
71
+ min?: number;
72
+ /** Range upper bound. Default: 180 (revolute) / 100 (prismatic). */
73
+ max?: number;
74
+ /** Initial value, clamped to the range. Default: 0. */
75
+ value?: number;
76
+ }
77
+ /** Per-DOF ranges for a cylindrical joint (rotation about + slide along one axis). */
78
+ export interface CylindricalOptions {
79
+ /** Rotation DOF (degrees). Default range -180..180. */
80
+ rotation?: JointOptions;
81
+ /**
82
+ * Translation DOF (length). Default range 0..100, matching `prismaticJoint`
83
+ * (both model a slide along an axis). This is deliberately asymmetric with
84
+ * `planarJoint`'s in-plane translations, which default to -100..100 because
85
+ * an unanchored in-plane slide is naturally bidirectional.
86
+ */
87
+ translation?: JointOptions;
88
+ }
89
+ /** Per-DOF ranges for a planar joint (two in-plane translations + a rotation). */
90
+ export interface PlanarOptions {
91
+ /** Translation along the in-plane `uDirection`. Default range -100..100. */
92
+ u?: JointOptions;
93
+ /** Translation along `normal × u`. Default range -100..100. */
94
+ v?: JointOptions;
95
+ /** Rotation about the plane normal (degrees). Default range -180..180. */
96
+ rotation?: JointOptions;
97
+ /**
98
+ * In-plane reference direction for the `u` translation. Projected onto the
99
+ * plane and normalized; defaults to an arbitrary perpendicular of the normal.
100
+ */
101
+ uDirection?: Vec3;
102
+ }
103
+ /** Per-DOF ranges for a spherical joint (three rotations about a pivot). */
104
+ export interface SphericalOptions {
105
+ /** Rotation about local X through the pivot (degrees). Default range -180..180. */
106
+ x?: JointOptions;
107
+ /** Rotation about local Y through the pivot (degrees). Default range -180..180. */
108
+ y?: JointOptions;
109
+ /** Rotation about local Z through the pivot (degrees). Default range -180..180. */
110
+ z?: JointOptions;
111
+ }
112
+ /** A revolute (hinge) joint — the child rotates about `axis` by `value` degrees.
113
+ * @param parent - Name of the reference (parent) body.
114
+ * @param child - Name of the body moved by the joint.
115
+ * @param axis - Joint axis: anchor point and direction.
116
+ * @param opts - Optional range bounds and initial value.
117
+ * @returns The newly created revolute joint.
118
+ */
119
+ export declare function revoluteJoint(parent: string, child: string, axis: JointAxis, opts?: JointOptions): Joint;
120
+ /**
121
+ * A prismatic (slider) joint — the child translates along `axis` by `value`
122
+ * units. Only `axis.direction` is used; `axis.origin` is ignored (a pure
123
+ * translation has no anchor point), unlike a revolute joint which rotates about
124
+ * the axis line through `origin`.
125
+ * @param parent - Name of the reference (parent) body.
126
+ * @param child - Name of the body moved by the joint.
127
+ * @param axis - Slide axis; only `direction` is used.
128
+ * @param opts - Optional range bounds and initial value.
129
+ * @returns The newly created prismatic joint.
130
+ */
131
+ export declare function prismaticJoint(parent: string, child: string, axis: JointAxis, opts?: JointOptions): Joint;
132
+ /**
133
+ * A cylindrical joint — the child both rotates about and slides along a single
134
+ * `axis` (2 DOF). DOF order: `[rotation, translation]`. The two motions share
135
+ * the axis, so they commute; rotation pivots about `axis.origin`.
136
+ * @param parent - Name of the reference (parent) body.
137
+ * @param child - Name of the body moved by the joint.
138
+ * @param axis - Joint axis: anchor point and direction.
139
+ * @param opts - Optional per-DOF ranges and initial values.
140
+ * @returns The newly created cylindrical joint.
141
+ */
142
+ export declare function cylindricalJoint(parent: string, child: string, axis: JointAxis, opts?: CylindricalOptions): Joint;
143
+ /**
144
+ * A planar joint — the child translates within a plane and rotates about its
145
+ * normal (3 DOF). `plane.direction` is the normal; `plane.origin` the rotation
146
+ * anchor. DOF order: `[u-translation, v-translation, rotation]`, where the
147
+ * translations are applied in the plane frame (independent of the rotation).
148
+ * @param parent - Name of the reference (parent) body.
149
+ * @param child - Name of the body moved by the joint.
150
+ * @param plane - Plane definition; `direction` is the normal, `origin` the anchor.
151
+ * @param opts - Optional per-DOF ranges, initial values, and in-plane axes.
152
+ * @returns The newly created planar joint.
153
+ */
154
+ export declare function planarJoint(parent: string, child: string, plane: JointAxis, opts?: PlanarOptions): Joint;
155
+ /**
156
+ * A spherical (ball) joint — the child rotates freely about a pivot point
157
+ * (3 DOF). DOF order: `[x, y, z]` rotations about the local axes through
158
+ * `pivot`, composed as `Rx · Ry · Rz`.
159
+ * @param parent - Name of the reference (parent) body.
160
+ * @param child - Name of the body moved by the joint.
161
+ * @param pivot - Pivot point all rotations pass through.
162
+ * @param opts - Optional per-axis ranges and initial values.
163
+ * @returns The newly created spherical joint.
164
+ */
165
+ export declare function sphericalJoint(parent: string, child: string, pivot: Vec3, opts?: SphericalOptions): Joint;
166
+ /**
167
+ * Return a copy of `joint` with per-DOF values set (each clamped to its range).
168
+ * Values are positional, matching `joint.dofs`; omitted entries keep their
169
+ * stored value. The primary mirror (`value`) is kept in sync with `dofs[0]`.
170
+ * @param joint - The joint to update.
171
+ * @param values - Positional per-DOF values; omitted entries keep their value.
172
+ * @returns A new joint with the values set.
173
+ */
174
+ export declare function setJointValues(joint: Joint, values: readonly number[]): Joint;
175
+ /** Return a copy of `joint` with its primary DOF set (clamped to range).
176
+ * @param joint - The joint to update.
177
+ * @param value - New primary-DOF value.
178
+ * @returns A new joint with the primary value set.
179
+ */
180
+ export declare function setJointValue(joint: Joint, value: number): Joint;
181
+ /**
182
+ * The child's local rigid transform (relative to the parent) for given DOF
183
+ * values. Defaults to each DOF's stored value. A single `number` overrides only
184
+ * the primary DOF (single-DOF ergonomics); an array overrides positionally,
185
+ * with omitted entries keeping their stored value. Each value is clamped to its
186
+ * DOF range.
187
+ *
188
+ * DOFs are folded in array order via frame composition. For same-anchor
189
+ * rotations (e.g. spherical) this composes to a single rotation about the pivot;
190
+ * for a cylindrical axis the rotation and slide commute.
191
+ * @param joint - The joint to evaluate.
192
+ * @param value - Primary-DOF override (number) or positional per-DOF overrides.
193
+ * @returns The child's local pose relative to the parent.
194
+ */
195
+ export declare function jointTransform(joint: Joint, value?: number | readonly number[]): JointPose;
196
+ /** Attach a joint to an assembly node. Returns a new node (immutable).
197
+ * @param assembly - The assembly node to attach the joint to.
198
+ * @param joint - The joint to attach.
199
+ * @returns A new node with the joint added.
200
+ */
201
+ export declare function addJoint(assembly: AssemblyNode, joint: Joint): AssemblyNode;
202
+ /**
203
+ * Forward kinematics: set joint values and propagate world poses down the
204
+ * kinematic chain. Each joint's axis is interpreted in its **parent's** frame,
205
+ * so a child's world pose is `parentWorld ∘ jointTransform(joint, value)`.
206
+ *
207
+ * Bodies not driven by a joint (chain roots) start at the origin. `jointValues`
208
+ * overrides a joint's stored value, keyed by the **child** node name; omitted
209
+ * joints use `joint.value`. Resolution is topological (reuses the Phase-0
210
+ * ordering), so chains of any depth compose. Returns a world pose for every node.
211
+ * @param assembly - The assembly to solve.
212
+ * @param jointValues - Optional value overrides keyed by child node name.
213
+ * @returns A world pose for every node in the assembly.
214
+ */
215
+ export declare function forwardKinematics(assembly: AssemblyNode, jointValues?: Readonly<Record<string, number | readonly number[]>>): Map<string, JointPose>;
216
+ /**
217
+ * Open-chain mobility — the number of independent degrees of freedom, summing
218
+ * each joint's DOF count (revolute/prismatic 1, cylindrical 2, planar/spherical
219
+ * 3). For a serial chain this equals the total DOF. (Closed-loop
220
+ * Grübler/Kutzbach analysis is future work.)
221
+ * @param assembly - The assembly to analyze.
222
+ * @returns Total number of independent degrees of freedom.
223
+ */
224
+ export declare function mechanismDOF(assembly: AssemblyNode): number;
225
+ /**
226
+ * Inverse kinematics and motion trajectories for joint chains.
227
+ *
228
+ * `inverseKinematics` solves for the joint values that place an end-effector at
229
+ * a target pose, using a damped-least-squares (Levenberg-Marquardt) update over
230
+ * a numerically-differentiated Jacobian. Differentiating through
231
+ * `forwardKinematics` keeps the solver agnostic to joint type — revolute,
232
+ * prismatic, and the multi-DOF cylindrical/planar/spherical joints all
233
+ * contribute their `dofs` uniformly — and respects each DOF's range by clamping
234
+ * every iterate.
235
+ *
236
+ * `jointTrajectory` samples a straight-line path in joint space between two
237
+ * configurations, returning the posed assembly (via forward kinematics) at each
238
+ * step — the building block for animation and reachable-workspace sweeps.
239
+ */
240
+ type Quat = readonly [number, number, number, number];
241
+ /** A target for the end-effector: a world position, optionally an orientation. */
242
+ export interface IKTarget {
243
+ readonly position: Vec3;
244
+ /** Target orientation `[w, x, y, z]`. Omit for position-only IK. */
245
+ readonly rotation?: Quat;
246
+ }
247
+ /** Options for the inverse-kinematics solver (iterations, tolerance, damping, seed). */
248
+ export interface IKOptions {
249
+ /** Maximum solver iterations. Default 200. */
250
+ maxIterations?: number;
251
+ /** Convergence threshold on the residual norm. Default 1e-5. */
252
+ tolerance?: number;
253
+ /** Damping factor λ for the least-squares step. Default 0.05. */
254
+ damping?: number;
255
+ /** Initial joint values, keyed by child node (number or per-DOF array). */
256
+ seed?: Readonly<Record<string, number | readonly number[]>>;
257
+ /** Local point on the end-effector node to drive to the target. Default origin. */
258
+ tip?: Vec3;
259
+ }
260
+ /** Outcome of an inverse-kinematics solve: values, convergence, and residual. */
261
+ export interface IKResult {
262
+ /** Solved joint values, keyed by child node, one entry per DOF. */
263
+ readonly values: Record<string, number[]>;
264
+ readonly converged: boolean;
265
+ readonly iterations: number;
266
+ /** Final residual norm (position, plus orientation when targeted). */
267
+ readonly error: number;
268
+ }
269
+ /**
270
+ * Solve for the joint values that place `endEffector` (offset by `tip`) at
271
+ * `target`, by damped-least-squares descent on a numerical Jacobian. Joint
272
+ * ranges are honored: every iterate is clamped to each DOF's `[min, max]`.
273
+ *
274
+ * Returns the solved per-DOF values keyed by child node (ready to pass to
275
+ * `forwardKinematics`), whether it converged, the iteration count, and the final
276
+ * residual norm. An end-effector with no driving joints, or an unreachable
277
+ * target, returns `converged: false` with the best configuration found.
278
+ * @param assembly - The assembly containing the kinematic chain.
279
+ * @param endEffector - Name of the end-effector node.
280
+ * @param target - Target world pose for the end-effector.
281
+ * @param options - Optional solver settings (iterations, tolerance, damping, seed, tip).
282
+ * @returns The solved joint values and convergence diagnostics.
283
+ */
284
+ export declare function inverseKinematics(assembly: AssemblyNode, endEffector: string, target: IKTarget, options?: IKOptions): IKResult;
285
+ /** One sample of a joint-space trajectory: parameter, values, and world poses. */
286
+ export interface TrajectorySample {
287
+ /** Normalized path parameter in `[0, 1]`. */
288
+ readonly t: number;
289
+ /** Interpolated joint values at this step, keyed by child node. */
290
+ readonly values: Record<string, number[]>;
291
+ /** Forward-kinematics world poses for every node at this step. */
292
+ readonly poses: Map<string, JointPose>;
293
+ }
294
+ /**
295
+ * Sample a straight-line path in joint space from `from` to `to` over `steps`
296
+ * segments, yielding `steps + 1` samples (inclusive of both endpoints). Each
297
+ * sample carries the interpolated per-DOF values (clamped to range) and the
298
+ * forward-kinematics poses of every node. Joints absent from `from`/`to` hold
299
+ * their stored value at both ends.
300
+ * @param assembly - The assembly to pose at each sample.
301
+ * @param from - Starting joint values keyed by child node name.
302
+ * @param to - Ending joint values keyed by child node name.
303
+ * @param steps - Number of path segments (samples are `steps + 1`).
304
+ * @returns The trajectory samples with interpolated values and poses.
305
+ */
306
+ export declare function jointTrajectory(assembly: AssemblyNode, from: Readonly<Record<string, number | readonly number[]>>, to: Readonly<Record<string, number | readonly number[]>>, steps: number): TrajectorySample[];
307
+ export {};
308
+ //# sourceMappingURL=joints-kinematics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"joints-kinematics.d.ts","sourceRoot":"","sources":["../../../../src/api/assembly/solvers/joints-kinematics.ts"],"names":[],"mappings":"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"}