@metamesh/modeling 0.12.0 → 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 (629) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +60 -72
  3. package/dist/api/engine.d.ts +123 -97
  4. package/dist/api/geometry.d.ts +3896 -3307
  5. package/dist/api/index.d.ts +2489 -2268
  6. package/dist/api/text.d.ts +119 -107
  7. package/dist/docs/guides/concepts.md +197 -0
  8. package/dist/docs/guides/fonts.md +51 -0
  9. package/dist/docs/guides/fundamentals.md +135 -0
  10. package/dist/docs/guides/generation.md +221 -0
  11. package/dist/docs/guides/hosting.md +88 -0
  12. package/dist/docs/guides/recipes.md +668 -0
  13. package/dist/docs/manifest.json +9851 -0
  14. package/dist/docs/reference/engine/Export3mfOptions.md +29 -0
  15. package/dist/docs/reference/engine/ExportMeshPart.md +65 -0
  16. package/dist/docs/reference/engine/GenerationOptions.md +62 -0
  17. package/dist/docs/reference/engine/GeometryResource.md +77 -0
  18. package/dist/docs/reference/engine/ModelDependencies.md +41 -0
  19. package/dist/docs/reference/engine/ModelEngine.md +103 -0
  20. package/dist/docs/reference/engine/ModelEngineOptions.md +33 -0
  21. package/dist/docs/reference/engine/ModelSession.md +96 -0
  22. package/dist/docs/reference/engine/ModelSnapshot.md +173 -0
  23. package/dist/docs/reference/engine/SessionOptions.md +123 -0
  24. package/dist/docs/reference/engine/SnapshotPart.md +130 -0
  25. package/dist/docs/reference/engine/categories/host-lifecycle.md +37 -0
  26. package/dist/docs/reference/engine/createModelEngine.md +56 -0
  27. package/dist/docs/reference/engine/defaultModelingLimits.md +7 -0
  28. package/dist/docs/reference/engine/modelingWasmUrl.md +7 -0
  29. package/dist/docs/reference/engine/validateModel.md +48 -0
  30. package/dist/docs/reference/engine.md +25 -0
  31. package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +75 -0
  32. package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +79 -0
  33. package/dist/docs/reference/geometry/Anchor3.md +49 -0
  34. package/dist/docs/reference/geometry/ArcCurve2.md +70 -0
  35. package/dist/docs/reference/geometry/ArcCurve3.md +94 -0
  36. package/dist/docs/reference/geometry/AttachTransformOptions.md +58 -0
  37. package/dist/docs/reference/geometry/AxisAngleRotation3.md +61 -0
  38. package/dist/docs/reference/geometry/Bounds2.md +39 -0
  39. package/dist/docs/reference/geometry/Bounds3.md +39 -0
  40. package/dist/docs/reference/geometry/BoundsFit2.md +52 -0
  41. package/dist/docs/reference/geometry/BoundsFit3.md +52 -0
  42. package/dist/docs/reference/geometry/BoundsFitOptions.md +23 -0
  43. package/dist/docs/reference/geometry/BoundsFromSizeOptions.md +23 -0
  44. package/dist/docs/reference/geometry/BoxAnchorFace.md +7 -0
  45. package/dist/docs/reference/geometry/BoxAnchorOptions.md +59 -0
  46. package/dist/docs/reference/geometry/BoxEdge.md +7 -0
  47. package/dist/docs/reference/geometry/BoxEdgeSelection.md +14 -0
  48. package/dist/docs/reference/geometry/BoxEdgeTreatments.md +15 -0
  49. package/dist/docs/reference/geometry/BoxOptions.md +87 -0
  50. package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +7 -0
  51. package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +93 -0
  52. package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +29 -0
  53. package/dist/docs/reference/geometry/CircleContourOptions.md +15 -0
  54. package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +59 -0
  55. package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +41 -0
  56. package/dist/docs/reference/geometry/ClearanceHoleFit.md +7 -0
  57. package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +53 -0
  58. package/dist/docs/reference/geometry/Contour.md +17 -0
  59. package/dist/docs/reference/geometry/ContourCurve.md +35 -0
  60. package/dist/docs/reference/geometry/ContourPoint.md +29 -0
  61. package/dist/docs/reference/geometry/ContourSegment.md +86 -0
  62. package/dist/docs/reference/geometry/CorrespondingComponent.md +46 -0
  63. package/dist/docs/reference/geometry/CorrespondingContour.md +46 -0
  64. package/dist/docs/reference/geometry/CorrespondingProfile.md +22 -0
  65. package/dist/docs/reference/geometry/CorrespondingProfileStation.md +27 -0
  66. package/dist/docs/reference/geometry/CubicBezierCurve2.md +70 -0
  67. package/dist/docs/reference/geometry/CubicBezierCurve3.md +70 -0
  68. package/dist/docs/reference/geometry/Curve2.md +16 -0
  69. package/dist/docs/reference/geometry/Curve3.md +16 -0
  70. package/dist/docs/reference/geometry/CurveSamplingOptions.md +64 -0
  71. package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +73 -0
  72. package/dist/docs/reference/geometry/CylinderAnchorFace.md +7 -0
  73. package/dist/docs/reference/geometry/CylinderAnchorOptions.md +83 -0
  74. package/dist/docs/reference/geometry/CylinderOptions.md +53 -0
  75. package/dist/docs/reference/geometry/CylindricalGearDimensions.md +209 -0
  76. package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +7 -0
  77. package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +71 -0
  78. package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +82 -0
  79. package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +34 -0
  80. package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +41 -0
  81. package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +47 -0
  82. package/dist/docs/reference/geometry/CylindricalGearSpec.md +82 -0
  83. package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +7 -0
  84. package/dist/docs/reference/geometry/EdgeTreatment.md +17 -0
  85. package/dist/docs/reference/geometry/EllipseContourOptions.md +15 -0
  86. package/dist/docs/reference/geometry/EndTreatments.md +34 -0
  87. package/dist/docs/reference/geometry/ExtrudeOptions.md +134 -0
  88. package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +77 -0
  89. package/dist/docs/reference/geometry/FittedTextLayout.md +60 -0
  90. package/dist/docs/reference/geometry/Frame3.md +58 -0
  91. package/dist/docs/reference/geometry/GeometryError.md +97 -0
  92. package/dist/docs/reference/geometry/GeometryErrorCode.md +7 -0
  93. package/dist/docs/reference/geometry/GeometryErrorContext.md +29 -0
  94. package/dist/docs/reference/geometry/GeometryResolution.md +65 -0
  95. package/dist/docs/reference/geometry/GeometrySamplingLimits.md +62 -0
  96. package/dist/docs/reference/geometry/GeometryToleranceOptions.md +41 -0
  97. package/dist/docs/reference/geometry/GridPatternOptions.md +42 -0
  98. package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +14 -0
  99. package/dist/docs/reference/geometry/HeightfieldOptions.md +67 -0
  100. package/dist/docs/reference/geometry/HeightfieldPreflight.md +53 -0
  101. package/dist/docs/reference/geometry/HelicalThreadRidgeMeshOptions.md +141 -0
  102. package/dist/docs/reference/geometry/HelicalThreadSolidMeshOptions.md +265 -0
  103. package/dist/docs/reference/geometry/HelicalThreadSolidMeshPreflight.md +53 -0
  104. package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +14 -0
  105. package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +242 -0
  106. package/dist/docs/reference/geometry/LineCurve2.md +46 -0
  107. package/dist/docs/reference/geometry/LineCurve3.md +46 -0
  108. package/dist/docs/reference/geometry/LinearPatternOptions.md +30 -0
  109. package/dist/docs/reference/geometry/LoftCorrespondence.md +19 -0
  110. package/dist/docs/reference/geometry/LoftMeshStation.md +27 -0
  111. package/dist/docs/reference/geometry/LoftOptions.md +84 -0
  112. package/dist/docs/reference/geometry/LoftPlacement.md +66 -0
  113. package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +18 -0
  114. package/dist/docs/reference/geometry/MatchProfilesOptions.md +35 -0
  115. package/dist/docs/reference/geometry/MetricFastenerSize.md +7 -0
  116. package/dist/docs/reference/geometry/MetricFastenerStandard.md +72 -0
  117. package/dist/docs/reference/geometry/MetricHexNutDimensions.md +29 -0
  118. package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +41 -0
  119. package/dist/docs/reference/geometry/ModelingLimits.md +126 -0
  120. package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +17 -0
  121. package/dist/docs/reference/geometry/Path2.md +14 -0
  122. package/dist/docs/reference/geometry/Path3.md +14 -0
  123. package/dist/docs/reference/geometry/PathFrame.md +46 -0
  124. package/dist/docs/reference/geometry/PathNormalGuide.md +38 -0
  125. package/dist/docs/reference/geometry/PathPatternOptions.md +46 -0
  126. package/dist/docs/reference/geometry/PathPlacement.md +34 -0
  127. package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +7 -0
  128. package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +156 -0
  129. package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +120 -0
  130. package/dist/docs/reference/geometry/PlanarPatchQuality.md +190 -0
  131. package/dist/docs/reference/geometry/Polygon.md +38 -0
  132. package/dist/docs/reference/geometry/PolylineResamplingOptions.md +92 -0
  133. package/dist/docs/reference/geometry/PrimitivePlacement.md +31 -0
  134. package/dist/docs/reference/geometry/PrimitivePlacementOptions.md +83 -0
  135. package/dist/docs/reference/geometry/PrintableThreadFit.md +7 -0
  136. package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +45 -0
  137. package/dist/docs/reference/geometry/Profile.md +22 -0
  138. package/dist/docs/reference/geometry/ProfileComponent2.md +46 -0
  139. package/dist/docs/reference/geometry/ProfileContour2.md +34 -0
  140. package/dist/docs/reference/geometry/ProfileSpan2.md +47 -0
  141. package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +36 -0
  142. package/dist/docs/reference/geometry/RackPitchDimensions.md +113 -0
  143. package/dist/docs/reference/geometry/RackPitchSpec.md +77 -0
  144. package/dist/docs/reference/geometry/RadialPatternOptions.md +62 -0
  145. package/dist/docs/reference/geometry/RadialSizing.md +7 -0
  146. package/dist/docs/reference/geometry/RadialSizingOptions.md +40 -0
  147. package/dist/docs/reference/geometry/RectangleContourOptions.md +66 -0
  148. package/dist/docs/reference/geometry/RectangleCornerTreatment.md +34 -0
  149. package/dist/docs/reference/geometry/RectangleCornerTreatments.md +14 -0
  150. package/dist/docs/reference/geometry/RectangleProfileOptions.md +94 -0
  151. package/dist/docs/reference/geometry/Region.md +14 -0
  152. package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +84 -0
  153. package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +65 -0
  154. package/dist/docs/reference/geometry/RevolveOptions.md +82 -0
  155. package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +91 -0
  156. package/dist/docs/reference/geometry/RowLayoutOptions.md +23 -0
  157. package/dist/docs/reference/geometry/SampleContourOptions.md +71 -0
  158. package/dist/docs/reference/geometry/SampleHelixOptions.md +95 -0
  159. package/dist/docs/reference/geometry/SampleSideProfileOptions.md +71 -0
  160. package/dist/docs/reference/geometry/SampledCurve2.md +34 -0
  161. package/dist/docs/reference/geometry/SampledCurve3.md +34 -0
  162. package/dist/docs/reference/geometry/SampledThreadHelices.md +58 -0
  163. package/dist/docs/reference/geometry/SideProfileCurve.md +35 -0
  164. package/dist/docs/reference/geometry/SideProfilePoint.md +29 -0
  165. package/dist/docs/reference/geometry/SideProfileSegment.md +86 -0
  166. package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +71 -0
  167. package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +34 -0
  168. package/dist/docs/reference/geometry/SphereOptions.md +15 -0
  169. package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +75 -0
  170. package/dist/docs/reference/geometry/StrokePathCap.md +7 -0
  171. package/dist/docs/reference/geometry/StrokePathJoin.md +7 -0
  172. package/dist/docs/reference/geometry/StrokePathRegionOptions.md +85 -0
  173. package/dist/docs/reference/geometry/SvgImportOptions.md +60 -0
  174. package/dist/docs/reference/geometry/SvgRegionPreflight.md +61 -0
  175. package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +118 -0
  176. package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +65 -0
  177. package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +53 -0
  178. package/dist/docs/reference/geometry/SweepOptions.md +109 -0
  179. package/dist/docs/reference/geometry/SweepOrientation.md +109 -0
  180. package/dist/docs/reference/geometry/ThreadBevelOptions.md +53 -0
  181. package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +100 -0
  182. package/dist/docs/reference/geometry/ThreadCompensationOptions.md +73 -0
  183. package/dist/docs/reference/geometry/ThreadEndStyle.md +7 -0
  184. package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +113 -0
  185. package/dist/docs/reference/geometry/ThreadHandedness.md +7 -0
  186. package/dist/docs/reference/geometry/ThreadHelixOptions.md +120 -0
  187. package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +7 -0
  188. package/dist/docs/reference/geometry/ThreadLeadInShape.md +7 -0
  189. package/dist/docs/reference/geometry/ThreadProfile.md +82 -0
  190. package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +49 -0
  191. package/dist/docs/reference/geometry/ThreadProfileSpec.md +19 -0
  192. package/dist/docs/reference/geometry/ThreadRole.md +7 -0
  193. package/dist/docs/reference/geometry/ThreadedNutBevel.md +7 -0
  194. package/dist/docs/reference/geometry/ThreadedNutOptions.md +269 -0
  195. package/dist/docs/reference/geometry/ThreadedNutPreflight.md +94 -0
  196. package/dist/docs/reference/geometry/ThreadedNutShape.md +7 -0
  197. package/dist/docs/reference/geometry/ThreadedRodOptions.md +242 -0
  198. package/dist/docs/reference/geometry/TorusOptions.md +105 -0
  199. package/dist/docs/reference/geometry/Transform3.md +12 -0
  200. package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +91 -0
  201. package/dist/docs/reference/geometry/TriangleMesh.md +34 -0
  202. package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +119 -0
  203. package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +75 -0
  204. package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +75 -0
  205. package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +39 -0
  206. package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +190 -0
  207. package/dist/docs/reference/geometry/TriangleMeshSignature.md +107 -0
  208. package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +41 -0
  209. package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +29 -0
  210. package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +51 -0
  211. package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +91 -0
  212. package/dist/docs/reference/geometry/TubeOptions.md +138 -0
  213. package/dist/docs/reference/geometry/Vector2.md +7 -0
  214. package/dist/docs/reference/geometry/Vector3.md +7 -0
  215. package/dist/docs/reference/geometry/VectorTextArcBaseline.md +53 -0
  216. package/dist/docs/reference/geometry/VectorTextLayout.md +39 -0
  217. package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +111 -0
  218. package/dist/docs/reference/geometry/VectorTextMetrics.md +94 -0
  219. package/dist/docs/reference/geometry/VectorTextOptions.md +50 -0
  220. package/dist/docs/reference/geometry/add3.md +38 -0
  221. package/dist/docs/reference/geometry/analyzeTriangleMesh.md +57 -0
  222. package/dist/docs/reference/geometry/analyzeTriangleMeshQuality.md +52 -0
  223. package/dist/docs/reference/geometry/anchorFrame3.md +40 -0
  224. package/dist/docs/reference/geometry/applyTransformDirection3.md +41 -0
  225. package/dist/docs/reference/geometry/applyTransformPoint3.md +39 -0
  226. package/dist/docs/reference/geometry/attachTransform.md +73 -0
  227. package/dist/docs/reference/geometry/boundsCenter.md +62 -0
  228. package/dist/docs/reference/geometry/boundsFromSize.md +83 -0
  229. package/dist/docs/reference/geometry/boundsSize.md +62 -0
  230. package/dist/docs/reference/geometry/boxAnchor3.md +48 -0
  231. package/dist/docs/reference/geometry/buildHelicalThreadRidgeMesh.md +68 -0
  232. package/dist/docs/reference/geometry/buildHelicalThreadSolidMesh.md +102 -0
  233. package/dist/docs/reference/geometry/categories/bounds-layout.md +35 -0
  234. package/dist/docs/reference/geometry/categories/curves-paths.md +63 -0
  235. package/dist/docs/reference/geometry/categories/mechanical.md +101 -0
  236. package/dist/docs/reference/geometry/categories/meshes.md +73 -0
  237. package/dist/docs/reference/geometry/categories/pattern-placement.md +34 -0
  238. package/dist/docs/reference/geometry/categories/primitive-options.md +36 -0
  239. package/dist/docs/reference/geometry/categories/profiles-regions.md +74 -0
  240. package/dist/docs/reference/geometry/categories/resolution-errors.md +46 -0
  241. package/dist/docs/reference/geometry/categories/transforms-math.md +63 -0
  242. package/dist/docs/reference/geometry/categories/vector-import.md +40 -0
  243. package/dist/docs/reference/geometry/circleContour.md +33 -0
  244. package/dist/docs/reference/geometry/closeToAxis.md +34 -0
  245. package/dist/docs/reference/geometry/compensateThreadDiameters.md +51 -0
  246. package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +42 -0
  247. package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +56 -0
  248. package/dist/docs/reference/geometry/composeTransform3.md +40 -0
  249. package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +45 -0
  250. package/dist/docs/reference/geometry/computeParallelTransportFrames.md +47 -0
  251. package/dist/docs/reference/geometry/computeTriangleMeshCentroid.md +31 -0
  252. package/dist/docs/reference/geometry/containsBounds.md +72 -0
  253. package/dist/docs/reference/geometry/contourContainsPoint.md +33 -0
  254. package/dist/docs/reference/geometry/createAnchor3.md +63 -0
  255. package/dist/docs/reference/geometry/createThreadProfile.md +37 -0
  256. package/dist/docs/reference/geometry/createTriangleMeshSignature.md +60 -0
  257. package/dist/docs/reference/geometry/cross3.md +38 -0
  258. package/dist/docs/reference/geometry/cumulativePathLengths.md +33 -0
  259. package/dist/docs/reference/geometry/cylinderAnchor3.md +56 -0
  260. package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +14 -0
  261. package/dist/docs/reference/geometry/distributeAlongPath.md +51 -0
  262. package/dist/docs/reference/geometry/dot3.md +38 -0
  263. package/dist/docs/reference/geometry/ellipseContour.md +33 -0
  264. package/dist/docs/reference/geometry/eulerTransform3.md +38 -0
  265. package/dist/docs/reference/geometry/extrudeMesh.md +73 -0
  266. package/dist/docs/reference/geometry/fitBounds.md +95 -0
  267. package/dist/docs/reference/geometry/fitTextLayout.md +57 -0
  268. package/dist/docs/reference/geometry/frameTransform3.md +44 -0
  269. package/dist/docs/reference/geometry/getMetricClearanceHole.md +33 -0
  270. package/dist/docs/reference/geometry/getMetricFastenerStandard.md +27 -0
  271. package/dist/docs/reference/geometry/gridPatternTransforms.md +31 -0
  272. package/dist/docs/reference/geometry/heightfieldMesh.md +43 -0
  273. package/dist/docs/reference/geometry/inverseTransform3.md +30 -0
  274. package/dist/docs/reference/geometry/isGeometryError.md +26 -0
  275. package/dist/docs/reference/geometry/joinTriangleMeshes.md +36 -0
  276. package/dist/docs/reference/geometry/layoutRow.md +43 -0
  277. package/dist/docs/reference/geometry/length3.md +26 -0
  278. package/dist/docs/reference/geometry/lerp3.md +38 -0
  279. package/dist/docs/reference/geometry/linearPatternTransforms.md +31 -0
  280. package/dist/docs/reference/geometry/loftMesh.md +72 -0
  281. package/dist/docs/reference/geometry/matchProfiles.md +51 -0
  282. package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +47 -0
  283. package/dist/docs/reference/geometry/measureTriangleMesh.md +55 -0
  284. package/dist/docs/reference/geometry/meshBounds.md +35 -0
  285. package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +29 -0
  286. package/dist/docs/reference/geometry/normalize3.md +32 -0
  287. package/dist/docs/reference/geometry/normalizeContour.md +45 -0
  288. package/dist/docs/reference/geometry/normalizePolygon.md +37 -0
  289. package/dist/docs/reference/geometry/normalizeRegion.md +33 -0
  290. package/dist/docs/reference/geometry/optimizePlanarPatches.md +91 -0
  291. package/dist/docs/reference/geometry/pathLength.md +33 -0
  292. package/dist/docs/reference/geometry/pathPatternTransforms.md +57 -0
  293. package/dist/docs/reference/geometry/preflightHeightfield.md +34 -0
  294. package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +96 -0
  295. package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +85 -0
  296. package/dist/docs/reference/geometry/preflightSvgRegion.md +56 -0
  297. package/dist/docs/reference/geometry/preflightThreadedNut.md +96 -0
  298. package/dist/docs/reference/geometry/preflightThreadedRod.md +85 -0
  299. package/dist/docs/reference/geometry/projectOntoPlane3.md +32 -0
  300. package/dist/docs/reference/geometry/radialPatternTransforms.md +47 -0
  301. package/dist/docs/reference/geometry/rectangleContour.md +49 -0
  302. package/dist/docs/reference/geometry/rectangleProfile.md +53 -0
  303. package/dist/docs/reference/geometry/regionArea.md +34 -0
  304. package/dist/docs/reference/geometry/regionBounds.md +27 -0
  305. package/dist/docs/reference/geometry/regularPolygonContour.md +53 -0
  306. package/dist/docs/reference/geometry/resamplePolyline2.md +64 -0
  307. package/dist/docs/reference/geometry/resamplePolyline3.md +67 -0
  308. package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +79 -0
  309. package/dist/docs/reference/geometry/resolveArcSegments.md +67 -0
  310. package/dist/docs/reference/geometry/resolveCircularSegments.md +61 -0
  311. package/dist/docs/reference/geometry/resolveCylindricalGear.md +31 -0
  312. package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +31 -0
  313. package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +74 -0
  314. package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +26 -0
  315. package/dist/docs/reference/geometry/resolveGeometryTolerance.md +59 -0
  316. package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +27 -0
  317. package/dist/docs/reference/geometry/resolveRackPitch.md +27 -0
  318. package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +59 -0
  319. package/dist/docs/reference/geometry/reverseTriangleMesh.md +30 -0
  320. package/dist/docs/reference/geometry/revolveMesh.md +76 -0
  321. package/dist/docs/reference/geometry/rotateAroundAxis3.md +38 -0
  322. package/dist/docs/reference/geometry/rotationTransform3.md +49 -0
  323. package/dist/docs/reference/geometry/roundClosedPolylinePath.md +50 -0
  324. package/dist/docs/reference/geometry/sampleContour.md +77 -0
  325. package/dist/docs/reference/geometry/sampleCurve2.md +61 -0
  326. package/dist/docs/reference/geometry/sampleCurve3.md +61 -0
  327. package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +58 -0
  328. package/dist/docs/reference/geometry/sampleHelix.md +41 -0
  329. package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +59 -0
  330. package/dist/docs/reference/geometry/sampleRackToothPath.md +39 -0
  331. package/dist/docs/reference/geometry/sampleSideProfile.md +73 -0
  332. package/dist/docs/reference/geometry/sampleTextContours.md +53 -0
  333. package/dist/docs/reference/geometry/sampleThreadHelices.md +63 -0
  334. package/dist/docs/reference/geometry/scale3.md +38 -0
  335. package/dist/docs/reference/geometry/scaleTransform3.md +34 -0
  336. package/dist/docs/reference/geometry/signedContourArea.md +26 -0
  337. package/dist/docs/reference/geometry/starContour.md +51 -0
  338. package/dist/docs/reference/geometry/strokePathRegion.md +63 -0
  339. package/dist/docs/reference/geometry/subtract3.md +38 -0
  340. package/dist/docs/reference/geometry/sweepMesh.md +82 -0
  341. package/dist/docs/reference/geometry/transformContour.md +42 -0
  342. package/dist/docs/reference/geometry/transformDeterminant3.md +32 -0
  343. package/dist/docs/reference/geometry/transformPath2.md +40 -0
  344. package/dist/docs/reference/geometry/transformPath3.md +33 -0
  345. package/dist/docs/reference/geometry/transformRegion.md +40 -0
  346. package/dist/docs/reference/geometry/transformTriangleMesh.md +42 -0
  347. package/dist/docs/reference/geometry/translationTransform3.md +31 -0
  348. package/dist/docs/reference/geometry/triangulateContour.md +26 -0
  349. package/dist/docs/reference/geometry/validateSolidMesh.md +52 -0
  350. package/dist/docs/reference/geometry/validateTransform3.md +43 -0
  351. package/dist/docs/reference/geometry/validateTriangleMesh.md +59 -0
  352. package/dist/docs/reference/geometry.md +30 -0
  353. package/dist/docs/reference/model/Anchor3.md +54 -0
  354. package/dist/docs/reference/model/AttachOptions.md +63 -0
  355. package/dist/docs/reference/model/Bounds2.md +39 -0
  356. package/dist/docs/reference/model/Bounds3.md +39 -0
  357. package/dist/docs/reference/model/BoxEdge.md +15 -0
  358. package/dist/docs/reference/model/BoxEdgeSelection.md +19 -0
  359. package/dist/docs/reference/model/BoxEdgeTreatments.md +20 -0
  360. package/dist/docs/reference/model/BoxOptions.md +92 -0
  361. package/dist/docs/reference/model/ChamferedEdgeTreatment.md +35 -0
  362. package/dist/docs/reference/model/CircleContourOptions.md +21 -0
  363. package/dist/docs/reference/model/CircleOptions.md +21 -0
  364. package/dist/docs/reference/model/CircularPrimitiveOptions.md +64 -0
  365. package/dist/docs/reference/model/Computed.md +35 -0
  366. package/dist/docs/reference/model/ComputedValue.md +20 -0
  367. package/dist/docs/reference/model/Contour.md +22 -0
  368. package/dist/docs/reference/model/CorrespondingComponent.md +46 -0
  369. package/dist/docs/reference/model/CorrespondingContour.md +46 -0
  370. package/dist/docs/reference/model/CorrespondingProfile.md +22 -0
  371. package/dist/docs/reference/model/CorrespondingProfileStation.md +27 -0
  372. package/dist/docs/reference/model/CylinderOptions.md +58 -0
  373. package/dist/docs/reference/model/DiagnosticOptions.md +23 -0
  374. package/dist/docs/reference/model/EdgeTreatment.md +22 -0
  375. package/dist/docs/reference/model/EllipseContourOptions.md +21 -0
  376. package/dist/docs/reference/model/EllipseOptions.md +21 -0
  377. package/dist/docs/reference/model/EndTreatments.md +39 -0
  378. package/dist/docs/reference/model/ExtrudeOptions.md +140 -0
  379. package/dist/docs/reference/model/FinalizedModel.md +121 -0
  380. package/dist/docs/reference/model/FinalizedPart.md +87 -0
  381. package/dist/docs/reference/model/Frame3.md +63 -0
  382. package/dist/docs/reference/model/GenerateCallback.md +37 -0
  383. package/dist/docs/reference/model/GenerateContext.md +277 -0
  384. package/dist/docs/reference/model/GeneratedPart.md +93 -0
  385. package/dist/docs/reference/model/GenerationDiagnostic.md +41 -0
  386. package/dist/docs/reference/model/GenerationError.md +54 -0
  387. package/dist/docs/reference/model/GeometryResolution.md +70 -0
  388. package/dist/docs/reference/model/GeometrySamplingLimits.md +62 -0
  389. package/dist/docs/reference/model/GeometryToleranceOptions.md +46 -0
  390. package/dist/docs/reference/model/GridPatternOptions.md +43 -0
  391. package/dist/docs/reference/model/HeightfieldOptions.md +67 -0
  392. package/dist/docs/reference/model/HelicalThreadRidgeMeshOptions.md +140 -0
  393. package/dist/docs/reference/model/HelicalThreadSolidMeshPreflight.md +58 -0
  394. package/dist/docs/reference/model/HullOptions.md +72 -0
  395. package/dist/docs/reference/model/ImmutableBuffer-type.md +80 -0
  396. package/dist/docs/reference/model/ImmutableTriangleMesh.md +34 -0
  397. package/dist/docs/reference/model/ImplicitOptions.md +83 -0
  398. package/dist/docs/reference/model/InternalThreadCutterOptions.md +245 -0
  399. package/dist/docs/reference/model/LinearPatternOptions.md +31 -0
  400. package/dist/docs/reference/model/LoftCorrespondence.md +27 -0
  401. package/dist/docs/reference/model/LoftOptions.md +91 -0
  402. package/dist/docs/reference/model/LoftPlacement.md +73 -0
  403. package/dist/docs/reference/model/LoftStation.md +35 -0
  404. package/dist/docs/reference/model/MatchProfilesOptions.md +35 -0
  405. package/dist/docs/reference/model/ModelProgram.md +44 -0
  406. package/dist/docs/reference/model/ModelingLimits.md +126 -0
  407. package/dist/docs/reference/model/NumericArray.md +7 -0
  408. package/dist/docs/reference/model/PartGeometry.md +16 -0
  409. package/dist/docs/reference/model/PartOptions.md +65 -0
  410. package/dist/docs/reference/model/PathNormalGuide.md +45 -0
  411. package/dist/docs/reference/model/PathPatternOptions.md +47 -0
  412. package/dist/docs/reference/model/PatternSource.md +26 -0
  413. package/dist/docs/reference/model/PlaneOptions.md +39 -0
  414. package/dist/docs/reference/model/Polygon-type.md +43 -0
  415. package/dist/docs/reference/model/PolygonOptions.md +112 -0
  416. package/dist/docs/reference/model/PrimitivePlacement.md +40 -0
  417. package/dist/docs/reference/model/PrimitivePlacementOptions.md +88 -0
  418. package/dist/docs/reference/model/PrintableThreadFit.md +14 -0
  419. package/dist/docs/reference/model/PrintableThreadFitPolicy.md +50 -0
  420. package/dist/docs/reference/model/Profile.md +22 -0
  421. package/dist/docs/reference/model/ProfileComponent2.md +46 -0
  422. package/dist/docs/reference/model/ProfileContour2.md +34 -0
  423. package/dist/docs/reference/model/ProfileSpan2.md +47 -0
  424. package/dist/docs/reference/model/ProfiledEdgeTreatment.md +41 -0
  425. package/dist/docs/reference/model/RadialPatternOptions.md +63 -0
  426. package/dist/docs/reference/model/RadialSizing.md +15 -0
  427. package/dist/docs/reference/model/RadialSizingOptions.md +40 -0
  428. package/dist/docs/reference/model/RectangleContourOptions.md +72 -0
  429. package/dist/docs/reference/model/RectangleCornerTreatment.md +40 -0
  430. package/dist/docs/reference/model/RectangleCornerTreatments.md +20 -0
  431. package/dist/docs/reference/model/RectangleOptions.md +107 -0
  432. package/dist/docs/reference/model/Region.md +19 -0
  433. package/dist/docs/reference/model/RegionOffsetJoin.md +16 -0
  434. package/dist/docs/reference/model/RegionOffsetOptions.md +65 -0
  435. package/dist/docs/reference/model/RegularPolygonOptions.md +53 -0
  436. package/dist/docs/reference/model/RevolveOptions.md +89 -0
  437. package/dist/docs/reference/model/RoundedEdgeTreatment.md +96 -0
  438. package/dist/docs/reference/model/Section.md +450 -0
  439. package/dist/docs/reference/model/SectionHullOptions.md +72 -0
  440. package/dist/docs/reference/model/SectionInspection.md +98 -0
  441. package/dist/docs/reference/model/SmoothEdgeTreatment.md +76 -0
  442. package/dist/docs/reference/model/Solid.md +350 -0
  443. package/dist/docs/reference/model/SolidInspection.md +98 -0
  444. package/dist/docs/reference/model/SolidRayHit.md +58 -0
  445. package/dist/docs/reference/model/SphereOptions.md +20 -0
  446. package/dist/docs/reference/model/StarOptions.md +98 -0
  447. package/dist/docs/reference/model/SvgOrigin.md +16 -0
  448. package/dist/docs/reference/model/SvgPathSectionOptions.md +78 -0
  449. package/dist/docs/reference/model/SvgSectionOptions.md +66 -0
  450. package/dist/docs/reference/model/SweepOptions.md +116 -0
  451. package/dist/docs/reference/model/SweepOrientation.md +116 -0
  452. package/dist/docs/reference/model/TextSectionOptions.md +41 -0
  453. package/dist/docs/reference/model/ThreadEndStyle.md +14 -0
  454. package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +117 -0
  455. package/dist/docs/reference/model/ThreadHandedness.md +14 -0
  456. package/dist/docs/reference/model/ThreadLeadInEnvelope.md +14 -0
  457. package/dist/docs/reference/model/ThreadLeadInShape.md +14 -0
  458. package/dist/docs/reference/model/ThreadProfile.md +86 -0
  459. package/dist/docs/reference/model/ThreadRidgeOptions.md +18 -0
  460. package/dist/docs/reference/model/ThreadedNutBevel.md +14 -0
  461. package/dist/docs/reference/model/ThreadedNutOptions.md +273 -0
  462. package/dist/docs/reference/model/ThreadedNutPreflight.md +98 -0
  463. package/dist/docs/reference/model/ThreadedNutShape.md +14 -0
  464. package/dist/docs/reference/model/ThreadedRodOptions.md +245 -0
  465. package/dist/docs/reference/model/TorusOptions.md +110 -0
  466. package/dist/docs/reference/model/Transform2.md +15 -0
  467. package/dist/docs/reference/model/Transform3.md +18 -0
  468. package/dist/docs/reference/model/TriangleMesh.md +42 -0
  469. package/dist/docs/reference/model/TriangleMeshAnalysis.md +123 -0
  470. package/dist/docs/reference/model/TriangleMeshMeasurements.md +79 -0
  471. package/dist/docs/reference/model/TubeOptions.md +143 -0
  472. package/dist/docs/reference/model/Vector2.md +15 -0
  473. package/dist/docs/reference/model/Vector3.md +15 -0
  474. package/dist/docs/reference/model/VectorTextLayout.md +40 -0
  475. package/dist/docs/reference/model/VectorTextMetrics.md +100 -0
  476. package/dist/docs/reference/model/anchor.md +46 -0
  477. package/dist/docs/reference/model/box.md +62 -0
  478. package/dist/docs/reference/model/categories/boolean-operations.md +37 -0
  479. package/dist/docs/reference/model/categories/bounded-surfaces.md +26 -0
  480. package/dist/docs/reference/model/categories/contracts.md +16 -0
  481. package/dist/docs/reference/model/categories/core-values-errors.md +30 -0
  482. package/dist/docs/reference/model/categories/explicit-profiles.md +32 -0
  483. package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +42 -0
  484. package/dist/docs/reference/model/categories/generation.md +44 -0
  485. package/dist/docs/reference/model/categories/inspection.md +23 -0
  486. package/dist/docs/reference/model/categories/mesh-inspection.md +29 -0
  487. package/dist/docs/reference/model/categories/primitives.md +61 -0
  488. package/dist/docs/reference/model/categories/resolution.md +18 -0
  489. package/dist/docs/reference/model/categories/sections.md +59 -0
  490. package/dist/docs/reference/model/categories/threads.md +50 -0
  491. package/dist/docs/reference/model/categories/transforms-placement.md +43 -0
  492. package/dist/docs/reference/model/circle.md +39 -0
  493. package/dist/docs/reference/model/components.md +68 -0
  494. package/dist/docs/reference/model/compose.md +31 -0
  495. package/dist/docs/reference/model/cylinder.md +52 -0
  496. package/dist/docs/reference/model/distance.md +45 -0
  497. package/dist/docs/reference/model/ellipse.md +39 -0
  498. package/dist/docs/reference/model/extrude.md +83 -0
  499. package/dist/docs/reference/model/fromRegion.md +33 -0
  500. package/dist/docs/reference/model/generate.md +46 -0
  501. package/dist/docs/reference/model/gridPattern.md +80 -0
  502. package/dist/docs/reference/model/heightfield.md +40 -0
  503. package/dist/docs/reference/model/hull.md +74 -0
  504. package/dist/docs/reference/model/immutableBuffer.md +44 -0
  505. package/dist/docs/reference/model/immutableMesh.md +40 -0
  506. package/dist/docs/reference/model/implicit.md +47 -0
  507. package/dist/docs/reference/model/inspectSection.md +38 -0
  508. package/dist/docs/reference/model/inspectSolid.md +38 -0
  509. package/dist/docs/reference/model/internalThreadCutter.md +100 -0
  510. package/dist/docs/reference/model/intersect.md +70 -0
  511. package/dist/docs/reference/model/isEmpty.md +39 -0
  512. package/dist/docs/reference/model/linearPattern.md +80 -0
  513. package/dist/docs/reference/model/loft.md +137 -0
  514. package/dist/docs/reference/model/matchProfiles.md +42 -0
  515. package/dist/docs/reference/model/minkowskiSum.md +37 -0
  516. package/dist/docs/reference/model/pathPattern.md +118 -0
  517. package/dist/docs/reference/model/polygon.md +40 -0
  518. package/dist/docs/reference/model/preflightInternalThreadCutter.md +89 -0
  519. package/dist/docs/reference/model/preflightThreadedNut.md +100 -0
  520. package/dist/docs/reference/model/preflightThreadedRod.md +89 -0
  521. package/dist/docs/reference/model/radialPattern.md +113 -0
  522. package/dist/docs/reference/model/rayCast.md +40 -0
  523. package/dist/docs/reference/model/rectangle.md +59 -0
  524. package/dist/docs/reference/model/regularPolygon.md +39 -0
  525. package/dist/docs/reference/model/revolve.md +74 -0
  526. package/dist/docs/reference/model/solidFromMesh.md +42 -0
  527. package/dist/docs/reference/model/sphere.md +42 -0
  528. package/dist/docs/reference/model/split.md +54 -0
  529. package/dist/docs/reference/model/splitByPlane.md +66 -0
  530. package/dist/docs/reference/model/star.md +63 -0
  531. package/dist/docs/reference/model/svgPathSection.md +65 -0
  532. package/dist/docs/reference/model/svgSection.md +64 -0
  533. package/dist/docs/reference/model/sweep.md +92 -0
  534. package/dist/docs/reference/model/textSection.md +57 -0
  535. package/dist/docs/reference/model/threadRidge.md +72 -0
  536. package/dist/docs/reference/model/threadedNut.md +110 -0
  537. package/dist/docs/reference/model/threadedRod.md +99 -0
  538. package/dist/docs/reference/model/toRegion.md +33 -0
  539. package/dist/docs/reference/model/toTriangleMesh.md +27 -0
  540. package/dist/docs/reference/model/torus.md +70 -0
  541. package/dist/docs/reference/model/tube.md +77 -0
  542. package/dist/docs/reference/model/union.md +72 -0
  543. package/dist/docs/reference/model.md +39 -0
  544. package/dist/docs/reference/text/Bounds2.md +34 -0
  545. package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +7 -0
  546. package/dist/docs/reference/text/Vector2.md +7 -0
  547. package/dist/docs/reference/text/VectorFont.md +186 -0
  548. package/dist/docs/reference/text/VectorFontOptions.md +17 -0
  549. package/dist/docs/reference/text/VectorTextArcBaseline.md +53 -0
  550. package/dist/docs/reference/text/VectorTextLayout.md +34 -0
  551. package/dist/docs/reference/text/VectorTextLayoutOptions.md +111 -0
  552. package/dist/docs/reference/text/VectorTextMetrics.md +94 -0
  553. package/dist/docs/reference/text/VectorTextOptions.md +50 -0
  554. package/dist/docs/reference/text/categories/font-preparation.md +38 -0
  555. package/dist/docs/reference/text/prepareVectorFont.md +46 -0
  556. package/dist/docs/reference/text.md +21 -0
  557. package/dist/engine/construction-operations.js +10 -3
  558. package/dist/engine/deferred-context.js +12 -3
  559. package/dist/engine/execution.js +1 -1
  560. package/dist/engine/export-3mf.js +2 -2
  561. package/dist/engine/finalization.js +3 -3
  562. package/dist/engine/loft-operations.js +4 -4
  563. package/dist/engine/native/adapter.js +1 -1
  564. package/dist/engine/native/regions.js +9 -9
  565. package/dist/engine/pattern-operations.js +24 -13
  566. package/dist/engine/pattern-transform.js +9 -0
  567. package/dist/engine/placement.js +2 -2
  568. package/dist/engine/primitive-operations.js +10 -10
  569. package/dist/engine/profile-mesh.js +7 -7
  570. package/dist/engine/section-operations.js +25 -14
  571. package/dist/engine/session-graph.js +5 -3
  572. package/dist/engine/session.js +1 -2
  573. package/dist/geometry/bounds.js +117 -0
  574. package/dist/geometry/cylinder.js +5 -1
  575. package/dist/geometry/edge-finishing.js +2 -2
  576. package/dist/geometry/heightfield.js +1 -1
  577. package/dist/geometry/index.js +15 -12
  578. package/dist/geometry/{loft-correspondence.js → loft/loft-correspondence.js} +3 -3
  579. package/dist/geometry/{loft-geometry.js → loft/loft-geometry.js} +8 -8
  580. package/dist/geometry/{loft-options.js → loft/loft-options.js} +2 -2
  581. package/dist/geometry/{loft-simple-mesh.js → loft/loft-simple-mesh.js} +6 -6
  582. package/dist/geometry/{loft-triangulation.js → loft/loft-triangulation.js} +6 -6
  583. package/dist/geometry/{loft.js → loft/loft.js} +8 -8
  584. package/dist/geometry/math/vector3.js +5 -1
  585. package/dist/geometry/mechanical/gears.js +2 -2
  586. package/dist/geometry/mechanical/thread-mesh.js +3 -3
  587. package/dist/geometry/mechanical/thread-profiles.js +2 -2
  588. package/dist/geometry/mechanical/thread-surface.js +14 -5
  589. package/dist/geometry/{mesh-centroid.js → mesh/mesh-centroid.js} +1 -1
  590. package/dist/geometry/{mesh-planar.js → mesh/mesh-planar.js} +1 -1
  591. package/dist/geometry/{mesh-quality.js → mesh/mesh-quality.js} +2 -2
  592. package/dist/geometry/{mesh-signature.js → mesh/mesh-signature.js} +2 -2
  593. package/dist/geometry/{mesh-solid.js → mesh/mesh-solid.js} +2 -2
  594. package/dist/geometry/{mesh.js → mesh/mesh.js} +7 -8
  595. package/dist/geometry/paths/frames.js +4 -5
  596. package/dist/geometry/patterns/options.js +1 -0
  597. package/dist/{engine/pattern-placements.js → geometry/patterns/placements.js} +22 -8
  598. package/dist/geometry/patterns.js +25 -0
  599. package/dist/geometry/primitive-resolvers.js +9 -9
  600. package/dist/geometry/profiles/contour.js +3 -3
  601. package/dist/geometry/profiles/matched.js +3 -3
  602. package/dist/geometry/profiles/profiles.js +10 -10
  603. package/dist/geometry/profiles/rectangle.js +7 -7
  604. package/dist/geometry/profiles/shapes.js +9 -9
  605. package/dist/geometry/profiles/side-profile.js +37 -0
  606. package/dist/geometry/regions.js +15 -15
  607. package/dist/geometry/revolve/revolve-mesh.js +5 -5
  608. package/dist/geometry/stroke-path.js +2 -2
  609. package/dist/geometry/svg/errors.js +0 -3
  610. package/dist/geometry/svg/fill.js +7 -7
  611. package/dist/geometry/svg/index.js +1 -1
  612. package/dist/geometry/svg/matrix.js +0 -114
  613. package/dist/geometry/svg/parser.js +1 -439
  614. package/dist/geometry/svg-import.js +3 -3
  615. package/dist/geometry/sweeps/sweep-closed.js +1 -1
  616. package/dist/geometry/sweeps/sweep-mesh.js +1 -1
  617. package/dist/geometry/sweeps/sweep-open.js +3 -3
  618. package/dist/geometry/sweeps/validation.js +2 -2
  619. package/dist/geometry/text-fitting.js +85 -0
  620. package/dist/geometry/tolerance.js +2 -2
  621. package/dist/geometry/transform-geometry.js +9 -9
  622. package/dist/model/execution-binding.js +3 -3
  623. package/dist/model/generation.js +1 -1
  624. package/dist/model/operation-contracts.js +1 -0
  625. package/dist/model/operation-dispatch.js +6 -0
  626. package/dist/model/operations.js +19 -49
  627. package/package.json +10 -8
  628. /package/dist/geometry/{mesh-edge-table.js → mesh/mesh-edge-table.js} +0 -0
  629. /package/dist/geometry/{mesh-solid-intersections.js → mesh/mesh-solid-intersections.js} +0 -0
@@ -0,0 +1,123 @@
1
+ # SessionOptions
2
+
3
+ Fixed generation policy and deterministic host capabilities for one model session.
4
+
5
+ ## Extends
6
+
7
+ - [`GenerationOptions`](GenerationOptions.md)
8
+
9
+ ## Type Parameters
10
+
11
+ ### S
12
+
13
+ `S` = `Record`\<`never`, `never`\>
14
+
15
+ ## Properties
16
+
17
+ ### meshValidation?
18
+
19
+
20
+
21
+ `readonly` `optional` **meshValidation?**: `"topology"` \| `"solid"`
22
+
23
+
24
+
25
+ Optional bounded intersection and nested-shell checks; defaults to indexed topology validation.
26
+
27
+ #### Inherited from
28
+
29
+ [`GenerationOptions`](GenerationOptions.md).[`meshValidation`](GenerationOptions.md#meshvalidation)
30
+
31
+ ***
32
+
33
+ ### limits?
34
+
35
+
36
+
37
+ `readonly` `optional` **limits?**: `Partial`\<[`ModelingLimits`](../model/ModelingLimits.md)\>
38
+
39
+
40
+
41
+ Per-build limits, no larger than the configured engine ceilings.
42
+
43
+ #### Inherited from
44
+
45
+ [`GenerationOptions`](GenerationOptions.md).[`limits`](GenerationOptions.md#limits)
46
+
47
+ ***
48
+
49
+ ### resolution?
50
+
51
+
52
+
53
+ `readonly` `optional` **resolution?**: [`GeometryResolution`](../model/GeometryResolution.md)
54
+
55
+
56
+
57
+ Physical sampling defaults; operation options and exact counts override these.
58
+
59
+ #### Inherited from
60
+
61
+ [`GenerationOptions`](GenerationOptions.md).[`resolution`](GenerationOptions.md#resolution)
62
+
63
+ ***
64
+
65
+ ### meshTopologyMode?
66
+
67
+
68
+
69
+ `readonly` `optional` **meshTopologyMode?**: `"original"` \| `"optimized"`
70
+
71
+
72
+
73
+ Optional bounded planar cleanup; unsupported candidates preserve the original part.
74
+
75
+ #### Inherited from
76
+
77
+ [`GenerationOptions`](GenerationOptions.md).[`meshTopologyMode`](GenerationOptions.md#meshtopologymode)
78
+
79
+ ***
80
+
81
+ ### services?
82
+
83
+
84
+
85
+ `readonly` `optional` **services?**: `S`
86
+
87
+
88
+
89
+ Host-owned synchronous capabilities, required when declared by the program. The original
90
+ environment is retained; its behavior and assets must remain deterministic and fixed for
91
+ this session. Equivalent function wrappers do not constitute an asset revision.
92
+
93
+ ***
94
+
95
+ ### cache?
96
+
97
+
98
+
99
+ `readonly` `optional` **cache?**: `boolean`
100
+
101
+
102
+
103
+ Enables reuse; defaults to true. Set false for uncached output equivalence checks.
104
+
105
+ ***
106
+
107
+ ### verifyCache?
108
+
109
+
110
+
111
+ `readonly` `optional` **verifyCache?**: `boolean`
112
+
113
+
114
+
115
+ Development-only cache-hit probe: reruns pure callbacks and compares bounded data/recipes.
116
+ Unsupported closures or large results fail explicitly; this cannot prove arbitrary JavaScript.
117
+
118
+
119
+ ## Related APIs
120
+
121
+ - [GenerationOptions](GenerationOptions.md)
122
+
123
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,130 @@
1
+ # SnapshotPart
2
+
3
+ A world-space manufacturing part plus its reusable local renderer resource.
4
+
5
+ ## Extends
6
+
7
+ - [`FinalizedPart`](../model/FinalizedPart.md)
8
+
9
+ ## Properties
10
+
11
+ ### geometry
12
+
13
+
14
+
15
+ `readonly` **geometry**: [`GeometryResource`](GeometryResource.md)
16
+
17
+
18
+
19
+ Validated geometry in local coordinates, independent of placement and appearance.
20
+
21
+ ***
22
+
23
+ ### position
24
+
25
+
26
+
27
+ `readonly` **position**: [`Vector3`](../model/Vector3.md)
28
+
29
+
30
+
31
+ XYZ translation in millimetres after rotation.
32
+
33
+ ***
34
+
35
+ ### rotation
36
+
37
+
38
+
39
+ `readonly` **rotation**: [`Vector3`](../model/Vector3.md)
40
+
41
+
42
+
43
+ Fixed global X, then Y, then Z rotation in degrees.
44
+
45
+ ***
46
+
47
+ ### id
48
+
49
+
50
+
51
+ `readonly` **id**: `string`
52
+
53
+
54
+
55
+ Stable canonical lowercase identity; unique within the containing topology or output.
56
+
57
+ #### Inherited from
58
+
59
+ [`FinalizedPart`](../model/FinalizedPart.md).[`id`](../model/FinalizedPart.md#id)
60
+
61
+ ***
62
+
63
+ ### color?
64
+
65
+
66
+
67
+ `readonly` `optional` **color?**: `string`
68
+
69
+
70
+
71
+ Optional six-digit hex RGB display color.
72
+
73
+ #### Inherited from
74
+
75
+ [`FinalizedPart`](../model/FinalizedPart.md).[`color`](../model/FinalizedPart.md#color)
76
+
77
+ ***
78
+
79
+ ### measurements
80
+
81
+
82
+
83
+ `readonly` **measurements**: [`TriangleMeshAnalysis`](../model/TriangleMeshAnalysis.md)
84
+
85
+
86
+
87
+ Fresh validated facts for these exact finalized buffers.
88
+
89
+ #### Inherited from
90
+
91
+ [`FinalizedPart`](../model/FinalizedPart.md).[`measurements`](../model/FinalizedPart.md#measurements)
92
+
93
+ ***
94
+
95
+ ### indices
96
+
97
+
98
+
99
+ `readonly` **indices**: `Uint32Array`
100
+
101
+
102
+
103
+ Three unsigned vertex indices per triangle.
104
+
105
+ #### Inherited from
106
+
107
+ [`FinalizedPart`](../model/FinalizedPart.md).[`indices`](../model/FinalizedPart.md#indices)
108
+
109
+ ***
110
+
111
+ ### positions
112
+
113
+
114
+
115
+ `readonly` **positions**: `Float32Array`
116
+
117
+
118
+
119
+ Flat XYZ coordinates, three finite values per vertex.
120
+
121
+ #### Inherited from
122
+
123
+ [`FinalizedPart`](../model/FinalizedPart.md).[`positions`](../model/FinalizedPart.md#positions)
124
+
125
+
126
+ ## Related APIs
127
+
128
+ - [GeometryResource](GeometryResource.md)
129
+
130
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,37 @@
1
+ # Host lifecycle
2
+
3
+ Initialize, configure, finalize, and export through one engine.
4
+
5
+ Create one engine in Node or a Worker, then create isolated sessions from generate() programs. run is synchronous; native allocation starts on demand and is always disposed. Snapshot parts contain reusable local geometry and authoritative world-space output. Session disposal releases caches while captured snapshots remain valid; dispose each snapshot when no longer used. Trusted ceilings apply even on cache hits. validateModel probes cheap declarations without a kernel; geometry observations use session.validate. verifyCache is an optional bounded development probe, not a proof of arbitrary JavaScript dependencies.
6
+
7
+ ## Functions
8
+
9
+ | API | Summary |
10
+ | --- | --- |
11
+ | [createModelEngine](../createModelEngine.md) | Initializes one host kernel and returns a lifecycle-safe engine. No generator initializes WASM. |
12
+ | [validateModel](../validateModel.md) | Runs declaration and immediate assertions without initializing a kernel or finalizing parts. Geometry observations require an initialized session's `validate` method instead. |
13
+
14
+ ## Interfaces
15
+
16
+ | API | Summary |
17
+ | --- | --- |
18
+ | [GenerationOptions](../GenerationOptions.md) | Execution settings supplied by the host, independently of generator metadata. |
19
+ | [Export3mfOptions](../Export3mfOptions.md) | Completed-snapshot serialization settings; filename selection belongs to the host. |
20
+ | [ExportMeshPart](../ExportMeshPart.md) | Manufacturing buffers accepted by the snapshot exporter. |
21
+ | [ModelEngine](../ModelEngine.md) | Host engine. No native values or manually disposable handles are exposed. |
22
+ | [ModelEngineOptions](../ModelEngineOptions.md) | Kernel asset initialization. Networking and Worker ownership remain with the host. |
23
+ | [GeometryResource](../GeometryResource.md) | Validated local geometry resource; accessors return owned buffer copies. |
24
+ | [ModelDependencies](../ModelDependencies.md) | Known dependencies for inspection; plain JavaScript bindings do not reveal their parameter origin. |
25
+ | [ModelSession](../ModelSession.md) | Stateful execution owner; a failed revision cannot change previously returned snapshots. |
26
+ | [ModelSnapshot](../ModelSnapshot.md) | Captured immutable revision; disposal never changes another snapshot or an in-flight export. |
27
+ | [SessionOptions](../SessionOptions.md) | Fixed generation policy and deterministic host capabilities for one model session. |
28
+ | [SnapshotPart](../SnapshotPart.md) | A world-space manufacturing part plus its reusable local renderer resource. |
29
+
30
+ ## Values
31
+
32
+ | API | Summary |
33
+ | --- | --- |
34
+ | [defaultModelingLimits](../defaultModelingLimits.md) | Default host resource ceilings for parts, vertices, triangles, and transferable bytes. |
35
+ | [modelingWasmUrl](../modelingWasmUrl.md) | URL of the package's pinned WASM asset; browser bundlers may replace it with their emitted URL. |
36
+
37
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,56 @@
1
+ # createModelEngine
2
+
3
+ Initializes one host kernel and returns a lifecycle-safe engine. No generator initializes WASM.
4
+
5
+ **createModelEngine**(`options?`: [`ModelEngineOptions`](ModelEngineOptions.md)): `Promise`\<[`ModelEngine`](ModelEngine.md)\>
6
+
7
+
8
+
9
+ ## Example: Build a box in a host application
10
+
11
+ ```ts
12
+ import { box, generate } from "@metamesh/modeling";
13
+ import { createModelEngine } from "@metamesh/modeling/engine";
14
+
15
+ const engine = await createModelEngine();
16
+ const model = generate<Record<never, never>>(({ part }) => [part("body", box({ size: [30, 20, 8] }))]);
17
+ const session = engine.createSession(model);
18
+ try {
19
+ const snapshot = session.run({});
20
+ try {
21
+ await engine.export3mf(snapshot.parts);
22
+ } finally {
23
+ snapshot.dispose();
24
+ }
25
+ } finally {
26
+ session.dispose();
27
+ }
28
+ ```
29
+
30
+ ## Parameters
31
+
32
+ <a id="options"></a>
33
+
34
+ **`options`** · [`ModelEngineOptions`](ModelEngineOptions.md) · Optional
35
+
36
+ - [`locateFile`](ModelEngineOptions.md#locatefile) · () => `string` · Optional
37
+
38
+ Resolves the kernel's WASM asset. Browser hosts supply their bundled asset URL.
39
+
40
+ - [`limits`](ModelEngineOptions.md#limits) · `Partial`\<[`ModelingLimits`](../model/ModelingLimits.md)\> · Optional
41
+
42
+ Trusted application ceilings. Builds may lower them; generators receive no engine.
43
+
44
+
45
+
46
+ ## Returns
47
+
48
+ `Promise`\<[`ModelEngine`](ModelEngine.md)\>
49
+
50
+
51
+ ## Related APIs
52
+
53
+ - [ModelEngine](ModelEngine.md)
54
+ - [ModelEngineOptions](ModelEngineOptions.md)
55
+
56
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,7 @@
1
+ # defaultModelingLimits
2
+
3
+ Default host resource ceilings for parts, vertices, triangles, and transferable bytes.
4
+
5
+ `const` **defaultModelingLimits**: `Readonly`\<[`ModelingLimits`](../model/ModelingLimits.md)\>
6
+
7
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,7 @@
1
+ # modelingWasmUrl
2
+
3
+ URL of the package's pinned WASM asset; browser bundlers may replace it with their emitted URL.
4
+
5
+ `const` **modelingWasmUrl**: `string`
6
+
7
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,48 @@
1
+ # validateModel
2
+
3
+ Runs declaration and immediate assertions without initializing a kernel or finalizing parts. Geometry observations require an initialized session's `validate` method instead.
4
+
5
+ **validateModel**\<`P`, `S`\>(`program`: [`ModelProgram`](../model/ModelProgram.md)\<`P`, `S`\>, `params`: `Readonly`\<`P`\>, ...`settings`: keyof `S` *extends* `never` ? \[`options?`: [`SessionOptions`](SessionOptions.md)\<`S`\>\] : \[`options`: [`SessionOptions`](SessionOptions.md)\<`S`\> & `object`\]): readonly [`GenerationDiagnostic`](../model/GenerationDiagnostic.md)[]
6
+
7
+
8
+
9
+ ## Type Parameters
10
+
11
+ ### P
12
+
13
+ `P`
14
+
15
+ ### S
16
+
17
+ `S`
18
+
19
+ ## Parameters
20
+
21
+ <a id="program"></a>
22
+
23
+ **`program`** · [`ModelProgram`](../model/ModelProgram.md)\<`P`, `S`\> · Required
24
+
25
+
26
+
27
+ <a id="params"></a>
28
+
29
+ **`params`** · `Readonly`\<`P`\> · Required
30
+
31
+
32
+
33
+ <a id="settings"></a>
34
+
35
+ **`...settings`** · keyof `S` *extends* `never` ? \[`options?`: [`SessionOptions`](SessionOptions.md)\<`S`\>\] : \[`options`: [`SessionOptions`](SessionOptions.md)\<`S`\> & `object`\] · Required
36
+
37
+
38
+
39
+ ## Returns
40
+
41
+ readonly [`GenerationDiagnostic`](../model/GenerationDiagnostic.md)[]
42
+
43
+
44
+ ## Related APIs
45
+
46
+ - [SessionOptions](SessionOptions.md)
47
+
48
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,25 @@
1
+ # Engine API
2
+
3
+ Initialize one host engine, run synchronous models, finalize bounded manufacturing snapshots, and export selected parts.
4
+
5
+ Import host initialization from `@metamesh/modeling/engine`. One engine creates isolated model sessions, finalizes bounded manufacturing snapshots, and disposes native allocations on every exit.
6
+
7
+ ```ts
8
+ import { box, generate } from "@metamesh/modeling";
9
+ import { createModelEngine } from "@metamesh/modeling/engine";
10
+ const engine = await createModelEngine();
11
+ const model = generate<Record<never, never>>(({ part }) => [part("body", box({ size: 20 }))]);
12
+ const session = engine.createSession(model);
13
+ const snapshot = session.run({});
14
+ const bytes = await engine.export3mf(snapshot.parts, { name: "Block" });
15
+ snapshot.dispose();
16
+ session.dispose();
17
+ ```
18
+
19
+ Node resolves installed WASM automatically. Browser hosts may supply an emitted URL through `locateFile`. Generation is synchronous and cannot nest in one realm. Exports capture already finalized world geometry before awaiting and never rerun the program. Hosts own Workers, revisions, appearance, persistence, and delivery.
20
+
21
+ ## Categories
22
+
23
+ - [Host lifecycle](engine/categories/host-lifecycle.md) — Initialize, configure, finalize, and export through one engine.
24
+
25
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,75 @@
1
+ # AcmeThreadProfileSpec
2
+
3
+ ACME 29-degree included-angle profile.
4
+
5
+ ## Extends
6
+
7
+ - [`ThreadProfileBaseSpec`](ThreadProfileBaseSpec.md)
8
+
9
+ ## Properties
10
+
11
+ ### kind
12
+
13
+
14
+
15
+ `readonly` **kind**: `"acme"`
16
+
17
+
18
+
19
+ Selects the 29-degree ACME profile family.
20
+
21
+ ***
22
+
23
+ ### depth?
24
+
25
+
26
+
27
+ `readonly` `optional` **depth?**: `number`
28
+
29
+
30
+
31
+ Radial depth in millimetres.
32
+
33
+ #### Default Value
34
+
35
+ `pitch / 2`
36
+
37
+ ***
38
+
39
+ ### pitch
40
+
41
+
42
+
43
+ `readonly` **pitch**: `number`
44
+
45
+
46
+
47
+ Adjacent axial thread spacing in millimetres.
48
+
49
+ #### Inherited from
50
+
51
+ [`ThreadProfileBaseSpec`](ThreadProfileBaseSpec.md).[`pitch`](ThreadProfileBaseSpec.md#pitch)
52
+
53
+ ***
54
+
55
+ ### tolerance?
56
+
57
+
58
+
59
+ `readonly` `optional` **tolerance?**: [`GeometryToleranceOptions`](GeometryToleranceOptions.md)
60
+
61
+
62
+
63
+ Optional numerical tolerance overrides.
64
+
65
+ #### Inherited from
66
+
67
+ [`ThreadProfileBaseSpec`](ThreadProfileBaseSpec.md).[`tolerance`](ThreadProfileBaseSpec.md#tolerance)
68
+
69
+
70
+ ## Related APIs
71
+
72
+ - [GeometryToleranceOptions](GeometryToleranceOptions.md)
73
+ - [ThreadProfileBaseSpec](ThreadProfileBaseSpec.md)
74
+
75
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,79 @@
1
+ # AlignedCircularSegmentsOptions
2
+
3
+ Controls full-circle sampling that must satisfy one or more topology alignments.
4
+
5
+ ## Properties
6
+
7
+ ### alignTo
8
+
9
+
10
+
11
+ `readonly` **alignTo**: readonly `number`[]
12
+
13
+
14
+
15
+ Non-empty alignment factors. Every value must be a positive safe integer; the returned count
16
+ is divisible by their checked least common multiple.
17
+
18
+ ***
19
+
20
+ ### limits?
21
+
22
+
23
+
24
+ `readonly` `optional` **limits?**: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>
25
+
26
+
27
+
28
+ Explicit sampling allocation ceilings.
29
+
30
+ ***
31
+
32
+ ### minimumSegments?
33
+
34
+
35
+
36
+ `readonly` `optional` **minimumSegments?**: `number`
37
+
38
+
39
+
40
+ Additional full-circle segment floor, as a safe integer of at least three.
41
+
42
+ #### Default Value
43
+
44
+ `3`
45
+
46
+ ***
47
+
48
+ ### segments?
49
+
50
+
51
+
52
+ `readonly` `optional` **segments?**: `number`
53
+
54
+
55
+
56
+ Exact full-circle segment count.
57
+
58
+ This takes precedence over `resolution.circularSegments` and adaptive sampling, and must
59
+ already satisfy every alignment factor and `minimumSegments`.
60
+
61
+ ***
62
+
63
+ ### resolution?
64
+
65
+
66
+
67
+ `readonly` `optional` **resolution?**: [`GeometryResolution`](GeometryResolution.md)
68
+
69
+
70
+
71
+ Operation-level physical tessellation policy over the active model-wide policy.
72
+
73
+
74
+ ## Related APIs
75
+
76
+ - [GeometryResolution](GeometryResolution.md)
77
+ - [GeometrySamplingLimits](GeometrySamplingLimits.md)
78
+
79
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,49 @@
1
+ # Anchor3
2
+
3
+ An attachment pose on a solid or assembly.
4
+
5
+ `direction` is the outward attachment normal. `up` controls roll and must not
6
+ be parallel to `direction`; anchor construction projects and normalizes it.
7
+
8
+ ## Properties
9
+
10
+ ### direction
11
+
12
+
13
+
14
+ `readonly` **direction**: [`Vector3`](Vector3.md)
15
+
16
+
17
+
18
+ Unit outward normal used as the anchor's local +Z direction.
19
+
20
+ ***
21
+
22
+ ### position
23
+
24
+
25
+
26
+ `readonly` **position**: [`Vector3`](Vector3.md)
27
+
28
+
29
+
30
+ World-space attachment position.
31
+
32
+ ***
33
+
34
+ ### up
35
+
36
+
37
+
38
+ `readonly` **up**: [`Vector3`](Vector3.md)
39
+
40
+
41
+
42
+ Roll guide projected into the plane perpendicular to `direction`.
43
+
44
+
45
+ ## Related APIs
46
+
47
+ - [Vector3](Vector3.md)
48
+
49
+ Package: `@metamesh/modeling@0.13.0`.
@@ -0,0 +1,70 @@
1
+ # ArcCurve2
2
+
3
+ Planar circular arc with counterclockwise degree angles.
4
+
5
+ ## Properties
6
+
7
+ ### kind
8
+
9
+
10
+
11
+ `readonly` **kind**: `"arc"`
12
+
13
+
14
+
15
+ Selects a circular arc in the XY plane.
16
+
17
+ ***
18
+
19
+ ### center
20
+
21
+
22
+
23
+ `readonly` **center**: [`Vector2`](Vector2.md)
24
+
25
+
26
+
27
+ Circle center in millimetres.
28
+
29
+ ***
30
+
31
+ ### radius
32
+
33
+
34
+
35
+ `readonly` **radius**: `number`
36
+
37
+
38
+
39
+ Positive circular radius in millimetres.
40
+
41
+ ***
42
+
43
+ ### startDegrees?
44
+
45
+
46
+
47
+ `readonly` `optional` **startDegrees?**: `number`
48
+
49
+
50
+
51
+ Initial angle in degrees; defaults to zero.
52
+
53
+ ***
54
+
55
+ ### sweepDegrees
56
+
57
+
58
+
59
+ `readonly` **sweepDegrees**: `number`
60
+
61
+
62
+
63
+ Nonzero signed sweep in degrees, bounded to one complete turn.
64
+
65
+
66
+ ## Related APIs
67
+
68
+ - [Vector2](Vector2.md)
69
+
70
+ Package: `@metamesh/modeling@0.13.0`.