@metamesh/modeling 0.14.0 → 0.16.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 (775) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/README.md +55 -13
  3. package/dist/api/engine.d.ts +15 -7
  4. package/dist/api/geometry.d.ts +853 -562
  5. package/dist/api/index.d.ts +604 -227
  6. package/dist/api/text.d.ts +9 -7
  7. package/dist/docs/guides/concepts.md +295 -91
  8. package/dist/docs/guides/fonts.md +9 -8
  9. package/dist/docs/guides/fundamentals.md +22 -23
  10. package/dist/docs/guides/generation.md +24 -23
  11. package/dist/docs/guides/hosting.md +26 -11
  12. package/dist/docs/guides/recipes.md +74 -48
  13. package/dist/docs/guides/standalone-model.md +42 -0
  14. package/dist/docs/manifest.json +1555 -749
  15. package/dist/docs/reference/engine/Export3mfOptions.md +1 -1
  16. package/dist/docs/reference/engine/ExportMeshPart.md +1 -1
  17. package/dist/docs/reference/engine/GenerationOptions.md +1 -1
  18. package/dist/docs/reference/engine/GeometryResource.md +1 -1
  19. package/dist/docs/reference/engine/ModelDependencies.md +1 -1
  20. package/dist/docs/reference/engine/ModelEngine.md +1 -1
  21. package/dist/docs/reference/engine/ModelEngineOptions.md +4 -8
  22. package/dist/docs/reference/engine/ModelSession.md +1 -1
  23. package/dist/docs/reference/engine/ModelSnapshot.md +21 -10
  24. package/dist/docs/reference/engine/SessionOptions.md +1 -1
  25. package/dist/docs/reference/engine/SnapshotPart.md +6 -3
  26. package/dist/docs/reference/engine/categories/host-lifecycle.md +7 -2
  27. package/dist/docs/reference/engine/createModelEngine.md +3 -3
  28. package/dist/docs/reference/engine/defaultModelingLimits.md +1 -1
  29. package/dist/docs/reference/engine/modelingWasmUrl.md +1 -1
  30. package/dist/docs/reference/engine/validateModel.md +1 -1
  31. package/dist/docs/reference/engine.md +6 -2
  32. package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +5 -1
  33. package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +4 -4
  34. package/dist/docs/reference/geometry/{Anchor3.md → Anchor3-type.md} +6 -5
  35. package/dist/docs/reference/geometry/ArcCurve2.md +11 -7
  36. package/dist/docs/reference/geometry/ArcCurve3.md +13 -9
  37. package/dist/docs/reference/geometry/{AttachTransformOptions.md → AttachOptions.md} +11 -5
  38. package/dist/docs/reference/geometry/AxisAngleRotation3.md +2 -1
  39. package/dist/docs/reference/geometry/Bounds2-type.md +127 -0
  40. package/dist/docs/reference/geometry/Bounds2Data.md +45 -0
  41. package/dist/docs/reference/geometry/Bounds2Input.md +21 -0
  42. package/dist/docs/reference/geometry/Bounds3-type.md +127 -0
  43. package/dist/docs/reference/geometry/Bounds3Data.md +45 -0
  44. package/dist/docs/reference/geometry/Bounds3Input.md +21 -0
  45. package/dist/docs/reference/geometry/BoundsFit2.md +6 -5
  46. package/dist/docs/reference/geometry/BoundsFit3.md +6 -5
  47. package/dist/docs/reference/geometry/BoundsFitOptions.md +2 -1
  48. package/dist/docs/reference/geometry/BoundsFromSizeOptions.md +2 -1
  49. package/dist/docs/reference/geometry/BoxAnchorFace.md +2 -1
  50. package/dist/docs/reference/geometry/BoxAnchorOptions.md +5 -4
  51. package/dist/docs/reference/geometry/BoxEdge.md +1 -1
  52. package/dist/docs/reference/geometry/BoxEdgeSelection.md +1 -1
  53. package/dist/docs/reference/geometry/BoxEdgeTreatments.md +1 -1
  54. package/dist/docs/reference/geometry/BoxOptions.md +10 -10
  55. package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +8 -1
  56. package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +5 -1
  57. package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +1 -1
  58. package/dist/docs/reference/geometry/CircleContourOptions.md +5 -1
  59. package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +1 -1
  60. package/dist/docs/reference/geometry/CircularResolutionOptions.md +7 -7
  61. package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +6 -1
  62. package/dist/docs/reference/geometry/ClearanceHoleFit.md +8 -1
  63. package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +6 -1
  64. package/dist/docs/reference/geometry/Contour.md +10 -4
  65. package/dist/docs/reference/geometry/ContourCurve.md +5 -1
  66. package/dist/docs/reference/geometry/ContourPoint.md +6 -1
  67. package/dist/docs/reference/geometry/ContourSegment.md +5 -1
  68. package/dist/docs/reference/geometry/CorrespondingComponent.md +5 -1
  69. package/dist/docs/reference/geometry/CorrespondingContour.md +5 -1
  70. package/dist/docs/reference/geometry/CorrespondingProfile.md +5 -1
  71. package/dist/docs/reference/geometry/CorrespondingProfileStation.md +5 -1
  72. package/dist/docs/reference/geometry/CubicBezierCurve2.md +10 -6
  73. package/dist/docs/reference/geometry/CubicBezierCurve3.md +10 -6
  74. package/dist/docs/reference/geometry/Curve2.md +5 -1
  75. package/dist/docs/reference/geometry/Curve3.md +5 -1
  76. package/dist/docs/reference/geometry/CurveSamplingOptions.md +9 -3
  77. package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +7 -3
  78. package/dist/docs/reference/geometry/CylinderAnchorFace.md +2 -1
  79. package/dist/docs/reference/geometry/CylinderAnchorOptions.md +6 -5
  80. package/dist/docs/reference/geometry/CylinderOptions.md +3 -3
  81. package/dist/docs/reference/geometry/CylindricalGearDimensions.md +8 -3
  82. package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +8 -1
  83. package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +5 -1
  84. package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +7 -3
  85. package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +5 -1
  86. package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +6 -1
  87. package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +5 -1
  88. package/dist/docs/reference/geometry/CylindricalGearSpec.md +11 -6
  89. package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +1 -1
  90. package/dist/docs/reference/geometry/EdgeTreatment.md +1 -1
  91. package/dist/docs/reference/geometry/EllipseContourOptions.md +7 -3
  92. package/dist/docs/reference/geometry/EndTreatments.md +1 -1
  93. package/dist/docs/reference/geometry/ExtrudeOptions.md +10 -6
  94. package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +9 -5
  95. package/dist/docs/reference/geometry/FittedTextLayout.md +7 -3
  96. package/dist/docs/reference/geometry/Frame3.md +10 -6
  97. package/dist/docs/reference/geometry/GeometryError.md +1 -1
  98. package/dist/docs/reference/geometry/GeometryErrorCode.md +1 -1
  99. package/dist/docs/reference/geometry/GeometryErrorContext.md +1 -1
  100. package/dist/docs/reference/geometry/GeometryResolution.md +5 -5
  101. package/dist/docs/reference/geometry/GeometrySamplingLimits.md +5 -1
  102. package/dist/docs/reference/geometry/GeometryToleranceOptions.md +1 -1
  103. package/dist/docs/reference/geometry/GridPatternOptions.md +11 -5
  104. package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +5 -1
  105. package/dist/docs/reference/geometry/HeightfieldOptions.md +9 -5
  106. package/dist/docs/reference/geometry/HeightfieldPreflight.md +9 -4
  107. package/dist/docs/reference/geometry/HelicalThreadRidgeMeshOptions.md +9 -5
  108. package/dist/docs/reference/geometry/HelicalThreadSolidMeshOptions.md +10 -6
  109. package/dist/docs/reference/geometry/HelicalThreadSolidMeshPreflight.md +7 -2
  110. package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +4 -3
  111. package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +10 -6
  112. package/dist/docs/reference/geometry/KnuckleHingeBaseSpec.md +82 -0
  113. package/dist/docs/reference/geometry/KnuckleHingeDimensions.md +148 -0
  114. package/dist/docs/reference/geometry/KnuckleHingeInterval.md +46 -0
  115. package/dist/docs/reference/geometry/KnuckleHingeSamplingOptions.md +51 -0
  116. package/dist/docs/reference/geometry/KnuckleHingeSpec.md +22 -0
  117. package/dist/docs/reference/geometry/LineCurve2.md +8 -4
  118. package/dist/docs/reference/geometry/LineCurve3.md +8 -4
  119. package/dist/docs/reference/geometry/LinearPatternOptions.md +12 -5
  120. package/dist/docs/reference/geometry/LoftCorrespondence.md +6 -1
  121. package/dist/docs/reference/geometry/LoftMeshStation.md +8 -4
  122. package/dist/docs/reference/geometry/LoftOptions.md +5 -1
  123. package/dist/docs/reference/geometry/LoftPlacement.md +5 -1
  124. package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +5 -1
  125. package/dist/docs/reference/geometry/MatchProfilesOptions.md +5 -1
  126. package/dist/docs/reference/geometry/MetricFastenerSize.md +9 -2
  127. package/dist/docs/reference/geometry/MetricFastenerStandard.md +5 -1
  128. package/dist/docs/reference/geometry/MetricHexNutDimensions.md +6 -1
  129. package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +6 -1
  130. package/dist/docs/reference/geometry/ModelingLimits.md +1 -1
  131. package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +5 -1
  132. package/dist/docs/reference/geometry/Path2-type.md +196 -0
  133. package/dist/docs/reference/geometry/Path2Data.md +50 -0
  134. package/dist/docs/reference/geometry/Path2Input.md +20 -0
  135. package/dist/docs/reference/geometry/Path3-type.md +196 -0
  136. package/dist/docs/reference/geometry/Path3Data.md +50 -0
  137. package/dist/docs/reference/geometry/Path3Input.md +20 -0
  138. package/dist/docs/reference/geometry/PathFrame.md +9 -5
  139. package/dist/docs/reference/geometry/PathLocation.md +69 -0
  140. package/dist/docs/reference/geometry/PathNormalGuide.md +10 -5
  141. package/dist/docs/reference/geometry/PathOptions.md +38 -0
  142. package/dist/docs/reference/geometry/PathPatternOptions.md +3 -3
  143. package/dist/docs/reference/geometry/PathPlacement.md +8 -4
  144. package/dist/docs/reference/geometry/PathResamplingOptions.md +84 -0
  145. package/dist/docs/reference/geometry/Pivot2Options.md +2 -1
  146. package/dist/docs/reference/geometry/Pivot3Options.md +2 -1
  147. package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +8 -1
  148. package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +26 -22
  149. package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +5 -1
  150. package/dist/docs/reference/geometry/PlanarPatchQuality.md +7 -3
  151. package/dist/docs/reference/geometry/PolygonData.md +7 -2
  152. package/dist/docs/reference/geometry/PolylineResamplingOptions.md +8 -4
  153. package/dist/docs/reference/geometry/PrimitiveAttachment.md +31 -0
  154. package/dist/docs/reference/geometry/PrimitiveAttachmentOptions.md +104 -0
  155. package/dist/docs/reference/geometry/PrintableThreadFit.md +8 -1
  156. package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +6 -1
  157. package/dist/docs/reference/geometry/Profile.md +8 -2
  158. package/dist/docs/reference/geometry/ProfileComponent2.md +5 -1
  159. package/dist/docs/reference/geometry/ProfileContour2.md +8 -2
  160. package/dist/docs/reference/geometry/ProfileSpan2.md +7 -3
  161. package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +3 -3
  162. package/dist/docs/reference/geometry/RackPitchDimensions.md +6 -1
  163. package/dist/docs/reference/geometry/RackPitchSpec.md +10 -5
  164. package/dist/docs/reference/geometry/RadialPatternOptions.md +17 -22
  165. package/dist/docs/reference/geometry/RadialSizing.md +1 -1
  166. package/dist/docs/reference/geometry/RadialSizingOptions.md +1 -1
  167. package/dist/docs/reference/geometry/RectangleContourOptions.md +7 -3
  168. package/dist/docs/reference/geometry/RectangleCornerTreatment.md +5 -1
  169. package/dist/docs/reference/geometry/RectangleCornerTreatments.md +5 -1
  170. package/dist/docs/reference/geometry/RectangleProfileOptions.md +7 -3
  171. package/dist/docs/reference/geometry/RegionData.md +6 -2
  172. package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +7 -3
  173. package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +1 -1
  174. package/dist/docs/reference/geometry/RevolveOptions.md +13 -4
  175. package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +1 -1
  176. package/dist/docs/reference/geometry/RowLayoutOptions.md +2 -1
  177. package/dist/docs/reference/geometry/SampleContourOptions.md +7 -3
  178. package/dist/docs/reference/geometry/SampleHelixOptions.md +5 -1
  179. package/dist/docs/reference/geometry/SampleSideProfileOptions.md +7 -3
  180. package/dist/docs/reference/geometry/SampledCurve2.md +8 -4
  181. package/dist/docs/reference/geometry/SampledCurve3.md +8 -4
  182. package/dist/docs/reference/geometry/SampledThreadHelices.md +7 -3
  183. package/dist/docs/reference/geometry/SideProfileCurve.md +5 -1
  184. package/dist/docs/reference/geometry/SideProfilePoint.md +6 -1
  185. package/dist/docs/reference/geometry/SideProfileSegment.md +5 -1
  186. package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +1 -1
  187. package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +7 -3
  188. package/dist/docs/reference/geometry/SphereOptions.md +3 -3
  189. package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +5 -1
  190. package/dist/docs/reference/geometry/StrokeCap.md +14 -0
  191. package/dist/docs/reference/geometry/StrokeJoin.md +14 -0
  192. package/dist/docs/reference/geometry/{StrokePathRegionOptions.md → StrokeOptions.md} +11 -7
  193. package/dist/docs/reference/geometry/SvgImportOptions.md +5 -1
  194. package/dist/docs/reference/geometry/SvgRegionPreflight.md +6 -2
  195. package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +19 -15
  196. package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +16 -11
  197. package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +14 -9
  198. package/dist/docs/reference/geometry/SweepOptions.md +10 -6
  199. package/dist/docs/reference/geometry/SweepOrientation.md +11 -7
  200. package/dist/docs/reference/geometry/ThreadBevelOptions.md +5 -1
  201. package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +9 -5
  202. package/dist/docs/reference/geometry/ThreadCompensationOptions.md +5 -1
  203. package/dist/docs/reference/geometry/ThreadEndStyle.md +8 -1
  204. package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +5 -1
  205. package/dist/docs/reference/geometry/ThreadHandedness.md +8 -1
  206. package/dist/docs/reference/geometry/ThreadHelixOptions.md +7 -3
  207. package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +8 -1
  208. package/dist/docs/reference/geometry/ThreadLeadInShape.md +8 -1
  209. package/dist/docs/reference/geometry/{ThreadProfile.md → ThreadProfile-type.md} +7 -3
  210. package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +5 -1
  211. package/dist/docs/reference/geometry/ThreadProfileSpec.md +5 -1
  212. package/dist/docs/reference/geometry/ThreadRole.md +8 -1
  213. package/dist/docs/reference/geometry/ThreadedNutBevel.md +8 -1
  214. package/dist/docs/reference/geometry/ThreadedNutOptions.md +10 -6
  215. package/dist/docs/reference/geometry/ThreadedNutPreflight.md +7 -3
  216. package/dist/docs/reference/geometry/ThreadedNutShape.md +8 -1
  217. package/dist/docs/reference/geometry/ThreadedRodOptions.md +10 -6
  218. package/dist/docs/reference/geometry/TorusOptions.md +8 -8
  219. package/dist/docs/reference/geometry/Transform2-type.md +6 -5
  220. package/dist/docs/reference/geometry/Transform2Data.md +15 -0
  221. package/dist/docs/reference/geometry/Transform2Input.md +4 -3
  222. package/dist/docs/reference/geometry/Transform3-type.md +6 -5
  223. package/dist/docs/reference/geometry/Transform3Data.md +18 -0
  224. package/dist/docs/reference/geometry/Transform3Input.md +4 -3
  225. package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +9 -4
  226. package/dist/docs/reference/geometry/TriangleMesh.md +6 -1
  227. package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +8 -4
  228. package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +5 -1
  229. package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +7 -3
  230. package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +7 -3
  231. package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +5 -1
  232. package/dist/docs/reference/geometry/TriangleMeshSignature.md +8 -4
  233. package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +8 -3
  234. package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +6 -1
  235. package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +5 -1
  236. package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +5 -1
  237. package/dist/docs/reference/geometry/TubeOptions.md +8 -8
  238. package/dist/docs/reference/geometry/Vector2-type.md +6 -5
  239. package/dist/docs/reference/geometry/Vector2Data.md +15 -0
  240. package/dist/docs/reference/geometry/Vector2Input.md +4 -3
  241. package/dist/docs/reference/geometry/Vector3-type.md +6 -5
  242. package/dist/docs/reference/geometry/Vector3Data.md +15 -0
  243. package/dist/docs/reference/geometry/Vector3Input.md +4 -3
  244. package/dist/docs/reference/geometry/VectorTextArcBaseline.md +8 -3
  245. package/dist/docs/reference/geometry/VectorTextLayout.md +5 -1
  246. package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +5 -1
  247. package/dist/docs/reference/geometry/VectorTextMetrics.md +7 -3
  248. package/dist/docs/reference/geometry/VectorTextOptions.md +5 -1
  249. package/dist/docs/reference/geometry/add2.md +7 -6
  250. package/dist/docs/reference/geometry/add3.md +7 -6
  251. package/dist/docs/reference/geometry/analyzeTriangleMesh.md +5 -1
  252. package/dist/docs/reference/geometry/analyzeTriangleMeshQuality.md +6 -2
  253. package/dist/docs/reference/geometry/{createAnchor3.md → anchor3.md} +10 -9
  254. package/dist/docs/reference/geometry/anchorFrame3.md +9 -5
  255. package/dist/docs/reference/geometry/applyTransformDirection3.md +8 -7
  256. package/dist/docs/reference/geometry/applyTransformPoint3.md +8 -7
  257. package/dist/docs/reference/geometry/{attachTransform.md → attachmentTransform3.md} +16 -15
  258. package/dist/docs/reference/geometry/bounds2.md +38 -0
  259. package/dist/docs/reference/geometry/bounds3.md +38 -0
  260. package/dist/docs/reference/geometry/boundsCenter.md +12 -11
  261. package/dist/docs/reference/geometry/boundsFromSize.md +12 -11
  262. package/dist/docs/reference/geometry/boundsSize.md +12 -11
  263. package/dist/docs/reference/geometry/boxAnchor3.md +7 -6
  264. package/dist/docs/reference/geometry/categories/bounds-layout.md +23 -6
  265. package/dist/docs/reference/geometry/categories/curves-paths.md +27 -13
  266. package/dist/docs/reference/geometry/categories/mechanical.md +27 -15
  267. package/dist/docs/reference/geometry/categories/meshes.md +18 -10
  268. package/dist/docs/reference/geometry/categories/pattern-placement.md +11 -9
  269. package/dist/docs/reference/geometry/categories/primitive-options.md +10 -4
  270. package/dist/docs/reference/geometry/categories/profiles-regions.md +21 -13
  271. package/dist/docs/reference/geometry/categories/resolution-errors.md +5 -3
  272. package/dist/docs/reference/geometry/categories/transforms-math.md +25 -16
  273. package/dist/docs/reference/geometry/categories/vector-import.md +15 -9
  274. package/dist/docs/reference/geometry/circleContour.md +5 -1
  275. package/dist/docs/reference/geometry/closeToAxis.md +14 -5
  276. package/dist/docs/reference/geometry/compensateThreadDiameters.md +5 -1
  277. package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +9 -5
  278. package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +9 -5
  279. package/dist/docs/reference/geometry/composeTransform3.md +7 -6
  280. package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +14 -6
  281. package/dist/docs/reference/geometry/computeParallelTransportFrames.md +17 -7
  282. package/dist/docs/reference/geometry/computeTriangleMeshCentroid.md +13 -5
  283. package/dist/docs/reference/geometry/{createTriangleMeshSignature.md → computeTriangleMeshSignature.md} +8 -4
  284. package/dist/docs/reference/geometry/containsBounds.md +10 -9
  285. package/dist/docs/reference/geometry/contourContainsPoint.md +8 -4
  286. package/dist/docs/reference/geometry/cross2.md +6 -5
  287. package/dist/docs/reference/geometry/cross3.md +7 -6
  288. package/dist/docs/reference/geometry/cylinderAnchor3.md +7 -6
  289. package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +5 -1
  290. package/dist/docs/reference/geometry/distance2.md +6 -5
  291. package/dist/docs/reference/geometry/distance3.md +6 -5
  292. package/dist/docs/reference/geometry/distributeAlongPath.md +12 -6
  293. package/dist/docs/reference/geometry/dot2.md +6 -5
  294. package/dist/docs/reference/geometry/dot3.md +6 -5
  295. package/dist/docs/reference/geometry/ellipseContour.md +5 -1
  296. package/dist/docs/reference/geometry/eulerTransform3.md +7 -6
  297. package/dist/docs/reference/geometry/extrudeMesh.md +12 -8
  298. package/dist/docs/reference/geometry/fitBounds.md +10 -9
  299. package/dist/docs/reference/geometry/fitTextLayout.md +13 -5
  300. package/dist/docs/reference/geometry/frameTransform3.md +5 -4
  301. package/dist/docs/reference/geometry/{getMetricClearanceHole.md → getMetricClearanceHoleDiameter.md} +7 -3
  302. package/dist/docs/reference/geometry/getMetricFastenerStandard.md +5 -1
  303. package/dist/docs/reference/geometry/gridPatternTransforms.md +5 -5
  304. package/dist/docs/reference/geometry/heightfieldMesh.md +11 -2
  305. package/dist/docs/reference/geometry/{buildHelicalThreadRidgeMesh.md → helicalThreadRidgeMesh.md} +9 -5
  306. package/dist/docs/reference/geometry/{buildHelicalThreadSolidMesh.md → helicalThreadSolidMesh.md} +9 -5
  307. package/dist/docs/reference/geometry/inverseTransform3.md +6 -5
  308. package/dist/docs/reference/geometry/isGeometryError.md +5 -2
  309. package/dist/docs/reference/geometry/joinTriangleMeshes.md +5 -1
  310. package/dist/docs/reference/geometry/layoutRow.md +11 -7
  311. package/dist/docs/reference/geometry/length2.md +5 -4
  312. package/dist/docs/reference/geometry/length3.md +5 -4
  313. package/dist/docs/reference/geometry/lerp2.md +7 -6
  314. package/dist/docs/reference/geometry/lerp3.md +7 -6
  315. package/dist/docs/reference/geometry/linearPatternTransforms.md +5 -5
  316. package/dist/docs/reference/geometry/loftMesh.md +6 -1
  317. package/dist/docs/reference/geometry/matchProfiles.md +11 -2
  318. package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +5 -1
  319. package/dist/docs/reference/geometry/meshBounds.md +8 -4
  320. package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +7 -3
  321. package/dist/docs/reference/geometry/normalize2.md +10 -6
  322. package/dist/docs/reference/geometry/normalize3.md +10 -6
  323. package/dist/docs/reference/geometry/normalizeContour.md +8 -4
  324. package/dist/docs/reference/geometry/normalizePolygon.md +5 -1
  325. package/dist/docs/reference/geometry/normalizeRegion.md +5 -1
  326. package/dist/docs/reference/geometry/optimizePlanarPatches.md +15 -11
  327. package/dist/docs/reference/geometry/path2.md +54 -0
  328. package/dist/docs/reference/geometry/path3.md +49 -0
  329. package/dist/docs/reference/geometry/pathPatternTransforms.md +13 -9
  330. package/dist/docs/reference/geometry/preflightHeightfield.md +11 -2
  331. package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +13 -4
  332. package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +15 -4
  333. package/dist/docs/reference/geometry/preflightSvgRegion.md +15 -2
  334. package/dist/docs/reference/geometry/preflightThreadedNut.md +14 -4
  335. package/dist/docs/reference/geometry/preflightThreadedRod.md +14 -4
  336. package/dist/docs/reference/geometry/projectOntoPlane3.md +7 -6
  337. package/dist/docs/reference/geometry/radialPatternTransforms.md +4 -20
  338. package/dist/docs/reference/geometry/rectangleContour.md +10 -3
  339. package/dist/docs/reference/geometry/rectangleProfile.md +10 -2
  340. package/dist/docs/reference/geometry/regionArea.md +5 -1
  341. package/dist/docs/reference/geometry/regionBounds.md +8 -4
  342. package/dist/docs/reference/geometry/regularPolygonContour.md +9 -5
  343. package/dist/docs/reference/geometry/resamplePolyline2.md +9 -5
  344. package/dist/docs/reference/geometry/resamplePolyline3.md +9 -5
  345. package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +4 -4
  346. package/dist/docs/reference/geometry/resolveArcSegments.md +4 -4
  347. package/dist/docs/reference/geometry/resolveCircularSegments.md +1 -1
  348. package/dist/docs/reference/geometry/resolveCylindricalGear.md +5 -1
  349. package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +5 -1
  350. package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +7 -3
  351. package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +5 -1
  352. package/dist/docs/reference/geometry/resolveGeometryTolerance.md +1 -1
  353. package/dist/docs/reference/geometry/resolveKnuckleHinge.md +59 -0
  354. package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +5 -1
  355. package/dist/docs/reference/geometry/resolveRackPitch.md +5 -1
  356. package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +8 -4
  357. package/dist/docs/reference/geometry/reverseTriangleMesh.md +5 -1
  358. package/dist/docs/reference/geometry/revolveMesh.md +14 -10
  359. package/dist/docs/reference/geometry/rotate2.md +6 -5
  360. package/dist/docs/reference/geometry/rotationTransform3.md +7 -6
  361. package/dist/docs/reference/geometry/roundClosedPolylinePath.md +12 -6
  362. package/dist/docs/reference/geometry/sampleContour.md +14 -4
  363. package/dist/docs/reference/geometry/sampleCurve2.md +8 -5
  364. package/dist/docs/reference/geometry/sampleCurve3.md +6 -2
  365. package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +5 -1
  366. package/dist/docs/reference/geometry/sampleHelix.md +13 -5
  367. package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +5 -1
  368. package/dist/docs/reference/geometry/sampleRackToothPath.md +8 -4
  369. package/dist/docs/reference/geometry/sampleSideProfile.md +17 -7
  370. package/dist/docs/reference/geometry/sampleTextContours.md +5 -1
  371. package/dist/docs/reference/geometry/sampleThreadHelices.md +6 -2
  372. package/dist/docs/reference/geometry/scale2.md +6 -5
  373. package/dist/docs/reference/geometry/scale3.md +6 -5
  374. package/dist/docs/reference/geometry/scaleTransform3.md +7 -6
  375. package/dist/docs/reference/geometry/signedContourArea.md +5 -1
  376. package/dist/docs/reference/geometry/starContour.md +8 -4
  377. package/dist/docs/reference/geometry/strokeRegionData.md +67 -0
  378. package/dist/docs/reference/geometry/subtract2.md +7 -6
  379. package/dist/docs/reference/geometry/subtract3.md +7 -6
  380. package/dist/docs/reference/geometry/sweepMesh.md +13 -9
  381. package/dist/docs/reference/geometry/{createThreadProfile.md → threadProfile.md} +10 -6
  382. package/dist/docs/reference/geometry/transform2.md +14 -7
  383. package/dist/docs/reference/geometry/transform3.md +16 -7
  384. package/dist/docs/reference/geometry/transformDeterminant3.md +5 -4
  385. package/dist/docs/reference/geometry/transformRegionData.md +5 -1
  386. package/dist/docs/reference/geometry/transformTriangleMesh.md +10 -6
  387. package/dist/docs/reference/geometry/translationTransform3.md +7 -6
  388. package/dist/docs/reference/geometry/triangulateContour.md +5 -1
  389. package/dist/docs/reference/geometry/validateSolidMesh.md +10 -3
  390. package/dist/docs/reference/geometry/validateTransform3.md +6 -5
  391. package/dist/docs/reference/geometry/validateTriangleMesh.md +5 -1
  392. package/dist/docs/reference/geometry/vector2.md +10 -2
  393. package/dist/docs/reference/geometry/vector3.md +10 -2
  394. package/dist/docs/reference/geometry.md +8 -6
  395. package/dist/docs/reference/model/Anchor3.md +6 -5
  396. package/dist/docs/reference/model/AttachOptions.md +11 -5
  397. package/dist/docs/reference/model/Bounds2-type.md +125 -0
  398. package/dist/docs/reference/model/Bounds2Data.md +44 -0
  399. package/dist/docs/reference/model/Bounds2Input.md +19 -0
  400. package/dist/docs/reference/model/Bounds3-type.md +125 -0
  401. package/dist/docs/reference/model/Bounds3Data.md +44 -0
  402. package/dist/docs/reference/model/Bounds3Input.md +19 -0
  403. package/dist/docs/reference/model/BoxEdge.md +1 -1
  404. package/dist/docs/reference/model/BoxEdgeSelection.md +1 -1
  405. package/dist/docs/reference/model/BoxEdgeTreatments.md +1 -1
  406. package/dist/docs/reference/model/BoxOptions.md +10 -10
  407. package/dist/docs/reference/model/ChamferedEdgeTreatment.md +1 -1
  408. package/dist/docs/reference/model/CircleContourOptions.md +1 -1
  409. package/dist/docs/reference/model/CircleOptions.md +3 -3
  410. package/dist/docs/reference/model/CircularPrimitiveOptions.md +1 -1
  411. package/dist/docs/reference/model/Computed.md +6 -1
  412. package/dist/docs/reference/model/ComputedValue.md +5 -1
  413. package/dist/docs/reference/model/Contour.md +6 -4
  414. package/dist/docs/reference/model/CorrespondingComponent.md +1 -1
  415. package/dist/docs/reference/model/CorrespondingContour.md +1 -1
  416. package/dist/docs/reference/model/CorrespondingProfile.md +1 -1
  417. package/dist/docs/reference/model/CorrespondingProfileStation.md +1 -1
  418. package/dist/docs/reference/model/CylinderOptions.md +3 -3
  419. package/dist/docs/reference/model/DiagnosticOptions.md +6 -1
  420. package/dist/docs/reference/model/EdgeTreatment.md +1 -1
  421. package/dist/docs/reference/model/EllipseContourOptions.md +3 -3
  422. package/dist/docs/reference/model/EllipseOptions.md +3 -3
  423. package/dist/docs/reference/model/EndTreatments.md +1 -1
  424. package/dist/docs/reference/model/ExtrudeOptions.md +6 -6
  425. package/dist/docs/reference/model/FinalizedModel.md +20 -10
  426. package/dist/docs/reference/model/FinalizedPart.md +1 -1
  427. package/dist/docs/reference/model/Frame3.md +6 -6
  428. package/dist/docs/reference/model/GenerateCallback.md +5 -1
  429. package/dist/docs/reference/model/GenerateContext.md +5 -1
  430. package/dist/docs/reference/model/GeneratedPart.md +5 -1
  431. package/dist/docs/reference/model/GenerationDiagnostic.md +6 -1
  432. package/dist/docs/reference/model/GenerationError.md +5 -1
  433. package/dist/docs/reference/model/GeometryResolution.md +5 -5
  434. package/dist/docs/reference/model/GeometrySamplingLimits.md +1 -1
  435. package/dist/docs/reference/model/GeometryToleranceOptions.md +1 -1
  436. package/dist/docs/reference/model/GridPatternOptions.md +12 -5
  437. package/dist/docs/reference/model/HeightfieldOptions.md +5 -5
  438. package/dist/docs/reference/model/HelicalThreadRidgeMeshOptions.md +4 -3
  439. package/dist/docs/reference/model/HelicalThreadSolidMeshPreflight.md +3 -2
  440. package/dist/docs/reference/model/HullOptions.md +5 -5
  441. package/dist/docs/reference/model/ImmutableBuffer-type.md +5 -1
  442. package/dist/docs/reference/model/ImmutableTriangleMesh.md +5 -1
  443. package/dist/docs/reference/model/ImplicitOptions.md +6 -6
  444. package/dist/docs/reference/model/InternalThreadCutterOptions.md +5 -4
  445. package/dist/docs/reference/model/KnuckleHinge-type.md +47 -0
  446. package/dist/docs/reference/model/KnuckleHingeBaseSpec.md +77 -0
  447. package/dist/docs/reference/model/KnuckleHingeHalfOptions.md +34 -0
  448. package/dist/docs/reference/model/KnuckleHingeOptions.md +38 -0
  449. package/dist/docs/reference/model/KnuckleHingeSamplingOptions.md +47 -0
  450. package/dist/docs/reference/model/KnuckleHingeSpec.md +18 -0
  451. package/dist/docs/reference/model/KnuckleHingeWeb.md +53 -0
  452. package/dist/docs/reference/model/LinearPatternOptions.md +13 -5
  453. package/dist/docs/reference/model/LoftCorrespondence.md +1 -1
  454. package/dist/docs/reference/model/LoftOptions.md +1 -1
  455. package/dist/docs/reference/model/LoftPlacement.md +1 -1
  456. package/dist/docs/reference/model/LoftStation.md +3 -3
  457. package/dist/docs/reference/model/MatchProfilesOptions.md +1 -1
  458. package/dist/docs/reference/model/ModelProgram.md +5 -1
  459. package/dist/docs/reference/model/ModelingLimits.md +1 -1
  460. package/dist/docs/reference/model/NumericArray.md +8 -1
  461. package/dist/docs/reference/model/PartGeometry.md +5 -1
  462. package/dist/docs/reference/model/PartOptions.md +5 -1
  463. package/dist/docs/reference/model/Path2-type.md +196 -0
  464. package/dist/docs/reference/model/Path2Data.md +50 -0
  465. package/dist/docs/reference/model/Path2Input.md +20 -0
  466. package/dist/docs/reference/model/Path3-type.md +196 -0
  467. package/dist/docs/reference/model/Path3Data.md +50 -0
  468. package/dist/docs/reference/model/Path3Input.md +20 -0
  469. package/dist/docs/reference/model/PathLocation.md +69 -0
  470. package/dist/docs/reference/model/PathNormalGuide.md +6 -5
  471. package/dist/docs/reference/model/PathOptions.md +38 -0
  472. package/dist/docs/reference/model/PathPatternOptions.md +4 -3
  473. package/dist/docs/reference/model/PathResamplingOptions.md +83 -0
  474. package/dist/docs/reference/model/PatternSource.md +2 -1
  475. package/dist/docs/reference/model/Pivot2Options.md +2 -1
  476. package/dist/docs/reference/model/Pivot3Options.md +2 -1
  477. package/dist/docs/reference/model/PlaneOptions.md +3 -3
  478. package/dist/docs/reference/model/PolygonData.md +3 -2
  479. package/dist/docs/reference/model/PolygonOptions.md +8 -8
  480. package/dist/docs/reference/model/{PrimitivePlacement.md → PrimitiveAttachment.md} +8 -7
  481. package/dist/docs/reference/model/{PrimitivePlacementOptions.md → PrimitiveAttachmentOptions.md} +42 -20
  482. package/dist/docs/reference/model/PrintableThreadFit.md +2 -1
  483. package/dist/docs/reference/model/PrintableThreadFitPolicy.md +2 -1
  484. package/dist/docs/reference/model/Profile.md +4 -2
  485. package/dist/docs/reference/model/ProfileComponent2.md +1 -1
  486. package/dist/docs/reference/model/ProfileContour2.md +4 -2
  487. package/dist/docs/reference/model/ProfileSpan2.md +3 -3
  488. package/dist/docs/reference/model/ProfiledEdgeTreatment.md +3 -3
  489. package/dist/docs/reference/model/RadialPatternOptions.md +18 -22
  490. package/dist/docs/reference/model/RadialSizing.md +1 -1
  491. package/dist/docs/reference/model/RadialSizingOptions.md +1 -1
  492. package/dist/docs/reference/model/RectangleContourOptions.md +3 -3
  493. package/dist/docs/reference/model/RectangleCornerTreatment.md +1 -1
  494. package/dist/docs/reference/model/RectangleCornerTreatments.md +1 -1
  495. package/dist/docs/reference/model/RectangleOptions.md +10 -10
  496. package/dist/docs/reference/model/RegionData.md +2 -2
  497. package/dist/docs/reference/model/RegularPolygonOptions.md +5 -5
  498. package/dist/docs/reference/model/RevolveOptions.md +9 -4
  499. package/dist/docs/reference/model/RoundedEdgeTreatment.md +1 -1
  500. package/dist/docs/reference/model/Section.md +20 -12
  501. package/dist/docs/reference/model/SectionHullOptions.md +5 -5
  502. package/dist/docs/reference/model/SectionInspection.md +10 -10
  503. package/dist/docs/reference/model/SectionOffsetJoin.md +1 -1
  504. package/dist/docs/reference/model/SectionOffsetOptions.md +1 -1
  505. package/dist/docs/reference/model/SmoothEdgeTreatment.md +1 -1
  506. package/dist/docs/reference/model/Solid.md +31 -7
  507. package/dist/docs/reference/model/SolidInspection.md +7 -7
  508. package/dist/docs/reference/model/{SolidRayHit.md → SolidSegmentHit.md} +6 -6
  509. package/dist/docs/reference/model/SphereOptions.md +3 -3
  510. package/dist/docs/reference/model/StarOptions.md +10 -10
  511. package/dist/docs/reference/model/{StrokePathCap.md → StrokeCap.md} +3 -3
  512. package/dist/docs/reference/model/{StrokePathJoin.md → StrokeJoin.md} +3 -3
  513. package/dist/docs/reference/model/StrokeOptions.md +6 -6
  514. package/dist/docs/reference/model/SvgOrigin.md +1 -1
  515. package/dist/docs/reference/model/SvgPathSectionOptions.md +1 -1
  516. package/dist/docs/reference/model/SvgSectionOptions.md +1 -1
  517. package/dist/docs/reference/model/SweepOptions.md +6 -6
  518. package/dist/docs/reference/model/SweepOrientation.md +7 -7
  519. package/dist/docs/reference/model/TextSectionOptions.md +1 -1
  520. package/dist/docs/reference/model/ThreadEndStyle.md +2 -1
  521. package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +2 -1
  522. package/dist/docs/reference/model/ThreadHandedness.md +2 -1
  523. package/dist/docs/reference/model/ThreadLeadInEnvelope.md +2 -1
  524. package/dist/docs/reference/model/ThreadLeadInShape.md +2 -1
  525. package/dist/docs/reference/model/ThreadProfile.md +4 -3
  526. package/dist/docs/reference/model/ThreadRidgeOptions.md +2 -1
  527. package/dist/docs/reference/model/ThreadedNutBevel.md +2 -1
  528. package/dist/docs/reference/model/ThreadedNutOptions.md +5 -4
  529. package/dist/docs/reference/model/ThreadedNutPreflight.md +4 -3
  530. package/dist/docs/reference/model/ThreadedNutShape.md +2 -1
  531. package/dist/docs/reference/model/ThreadedRodOptions.md +5 -4
  532. package/dist/docs/reference/model/TorusOptions.md +8 -8
  533. package/dist/docs/reference/model/Transform2-type.md +6 -5
  534. package/dist/docs/reference/model/Transform2Data.md +16 -0
  535. package/dist/docs/reference/model/Transform2Input.md +4 -3
  536. package/dist/docs/reference/model/Transform3-type.md +6 -5
  537. package/dist/docs/reference/model/Transform3Data.md +19 -0
  538. package/dist/docs/reference/model/Transform3Input.md +4 -3
  539. package/dist/docs/reference/model/TriangleMesh.md +1 -1
  540. package/dist/docs/reference/model/TriangleMeshAnalysis.md +4 -4
  541. package/dist/docs/reference/model/TriangleMeshMeasurements.md +3 -3
  542. package/dist/docs/reference/model/TubeOptions.md +8 -8
  543. package/dist/docs/reference/model/Vector2-type.md +6 -5
  544. package/dist/docs/reference/model/{Vector2Tuple.md → Vector2Data.md} +3 -3
  545. package/dist/docs/reference/model/Vector2Input.md +4 -3
  546. package/dist/docs/reference/model/Vector3-type.md +6 -5
  547. package/dist/docs/reference/model/{Vector3Tuple.md → Vector3Data.md} +3 -3
  548. package/dist/docs/reference/model/Vector3Input.md +4 -3
  549. package/dist/docs/reference/model/VectorTextLayout.md +1 -1
  550. package/dist/docs/reference/model/VectorTextMetrics.md +3 -3
  551. package/dist/docs/reference/model/anchor.md +2 -1
  552. package/dist/docs/reference/model/bounds2.md +36 -0
  553. package/dist/docs/reference/model/bounds3.md +36 -0
  554. package/dist/docs/reference/model/box.md +4 -4
  555. package/dist/docs/reference/model/castSegment.md +40 -0
  556. package/dist/docs/reference/model/categories/boolean-operations.md +10 -3
  557. package/dist/docs/reference/model/categories/bounded-surfaces.md +5 -3
  558. package/dist/docs/reference/model/categories/bounds.md +36 -0
  559. package/dist/docs/reference/model/categories/contracts.md +4 -2
  560. package/dist/docs/reference/model/categories/core-values-errors.md +11 -11
  561. package/dist/docs/reference/model/categories/explicit-profiles.md +7 -5
  562. package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +12 -3
  563. package/dist/docs/reference/model/categories/generation.md +11 -2
  564. package/dist/docs/reference/model/categories/hinges.md +38 -0
  565. package/dist/docs/reference/model/categories/inspection.md +12 -6
  566. package/dist/docs/reference/model/categories/mesh-inspection.md +5 -3
  567. package/dist/docs/reference/model/categories/paths.md +41 -0
  568. package/dist/docs/reference/model/categories/primitives.md +10 -4
  569. package/dist/docs/reference/model/categories/resolution.md +4 -2
  570. package/dist/docs/reference/model/categories/sections.md +12 -8
  571. package/dist/docs/reference/model/categories/threads.md +11 -8
  572. package/dist/docs/reference/model/categories/transforms-placement.md +23 -15
  573. package/dist/docs/reference/model/circle.md +1 -1
  574. package/dist/docs/reference/model/components.md +6 -6
  575. package/dist/docs/reference/model/compose.md +1 -1
  576. package/dist/docs/reference/model/cylinder.md +1 -1
  577. package/dist/docs/reference/model/distance.md +1 -1
  578. package/dist/docs/reference/model/ellipse.md +1 -1
  579. package/dist/docs/reference/model/extrude.md +3 -3
  580. package/dist/docs/reference/model/generate.md +5 -1
  581. package/dist/docs/reference/model/gridPattern.md +5 -4
  582. package/dist/docs/reference/model/heightfield.md +5 -2
  583. package/dist/docs/reference/model/hull.md +1 -1
  584. package/dist/docs/reference/model/immutableBuffer.md +5 -1
  585. package/dist/docs/reference/model/immutableMesh.md +5 -1
  586. package/dist/docs/reference/model/implicit.md +3 -3
  587. package/dist/docs/reference/model/inspectSection.md +1 -1
  588. package/dist/docs/reference/model/inspectSolid.md +1 -1
  589. package/dist/docs/reference/model/internalThreadCutter.md +5 -4
  590. package/dist/docs/reference/model/intersect.md +1 -1
  591. package/dist/docs/reference/model/isEmpty.md +1 -1
  592. package/dist/docs/reference/model/knuckleHinge.md +47 -0
  593. package/dist/docs/reference/model/linearPattern.md +5 -4
  594. package/dist/docs/reference/model/loft.md +1 -1
  595. package/dist/docs/reference/model/matchProfiles.md +2 -2
  596. package/dist/docs/reference/model/minkowskiSum.md +1 -1
  597. package/dist/docs/reference/model/path2.md +54 -0
  598. package/dist/docs/reference/model/path3.md +49 -0
  599. package/dist/docs/reference/model/pathPattern.md +14 -12
  600. package/dist/docs/reference/model/polygon.md +8 -5
  601. package/dist/docs/reference/model/preflightInternalThreadCutter.md +9 -3
  602. package/dist/docs/reference/model/preflightThreadedNut.md +9 -3
  603. package/dist/docs/reference/model/preflightThreadedRod.md +9 -3
  604. package/dist/docs/reference/model/radialPattern.md +6 -37
  605. package/dist/docs/reference/model/rectangle.md +7 -4
  606. package/dist/docs/reference/model/regularPolygon.md +1 -1
  607. package/dist/docs/reference/model/revolve.md +5 -4
  608. package/dist/docs/reference/model/solidFromMesh.md +1 -1
  609. package/dist/docs/reference/model/sphere.md +1 -1
  610. package/dist/docs/reference/model/split.md +1 -1
  611. package/dist/docs/reference/model/splitByPlane.md +1 -1
  612. package/dist/docs/reference/model/star.md +4 -4
  613. package/dist/docs/reference/model/stroke.md +8 -8
  614. package/dist/docs/reference/model/svgPathSection.md +1 -1
  615. package/dist/docs/reference/model/svgSection.md +1 -1
  616. package/dist/docs/reference/model/sweep.md +7 -7
  617. package/dist/docs/reference/model/textSection.md +1 -1
  618. package/dist/docs/reference/model/threadRidge.md +3 -2
  619. package/dist/docs/reference/model/threadedNut.md +5 -4
  620. package/dist/docs/reference/model/threadedRod.md +5 -4
  621. package/dist/docs/reference/model/torus.md +3 -3
  622. package/dist/docs/reference/model/transform2.md +14 -7
  623. package/dist/docs/reference/model/transform3.md +16 -7
  624. package/dist/docs/reference/model/tube.md +3 -3
  625. package/dist/docs/reference/model/union.md +1 -1
  626. package/dist/docs/reference/model/vector2.md +10 -2
  627. package/dist/docs/reference/model/vector3.md +10 -2
  628. package/dist/docs/reference/model.md +17 -9
  629. package/dist/docs/reference/text/Bounds2Data.md +34 -0
  630. package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +1 -1
  631. package/dist/docs/reference/text/Vector2Data.md +7 -0
  632. package/dist/docs/reference/text/VectorFont.md +2 -2
  633. package/dist/docs/reference/text/VectorFontOptions.md +1 -1
  634. package/dist/docs/reference/text/VectorTextArcBaseline.md +3 -3
  635. package/dist/docs/reference/text/VectorTextLayout.md +1 -1
  636. package/dist/docs/reference/text/VectorTextLayoutOptions.md +1 -1
  637. package/dist/docs/reference/text/VectorTextMetrics.md +3 -3
  638. package/dist/docs/reference/text/VectorTextOptions.md +1 -1
  639. package/dist/docs/reference/text/categories/font-preparation.md +8 -6
  640. package/dist/docs/reference/text/prepareVectorFont.md +2 -2
  641. package/dist/docs/reference/text.md +4 -2
  642. package/dist/engine/construction-operations.js +31 -14
  643. package/dist/engine/execution.js +39 -8
  644. package/dist/engine/extrusion-finishing.js +1 -1
  645. package/dist/engine/index.js +6 -1
  646. package/dist/engine/inspection-operations.js +13 -11
  647. package/dist/engine/knuckle-hinge-operation.js +85 -0
  648. package/dist/engine/loft-operations.js +35 -14
  649. package/dist/engine/mechanical-operations.js +3 -1
  650. package/dist/engine/model-summary.js +8 -5
  651. package/dist/engine/modeling-context.js +8 -1
  652. package/dist/engine/native/material-components.js +305 -0
  653. package/dist/engine/native/regions.js +2 -1
  654. package/dist/engine/native/threads.js +3 -3
  655. package/dist/engine/native/transforms.js +5 -7
  656. package/dist/engine/operation-environment.js +2 -2
  657. package/dist/engine/pattern-operations.js +1 -1
  658. package/dist/engine/placement.js +2 -2
  659. package/dist/engine/primitive-anchors.js +17 -17
  660. package/dist/engine/primitive-operations.js +1 -1
  661. package/dist/engine/primitive-profiles.js +7 -7
  662. package/dist/engine/profile-mesh.js +7 -7
  663. package/dist/engine/recipe-realization.js +10 -2
  664. package/dist/engine/section-operations.js +33 -8
  665. package/dist/engine/session-snapshot.js +14 -4
  666. package/dist/engine/session.js +10 -5
  667. package/dist/engine/shape-anchors.js +3 -3
  668. package/dist/engine/transform-operations.js +27 -27
  669. package/dist/geometry/anchors.js +40 -33
  670. package/dist/geometry/bounds-value.js +93 -0
  671. package/dist/geometry/bounds.js +10 -8
  672. package/dist/geometry/curves/sampling.js +15 -16
  673. package/dist/geometry/edge-finishing.js +1 -1
  674. package/dist/geometry/errors.js +1 -0
  675. package/dist/geometry/extrusion.js +13 -16
  676. package/dist/geometry/heightfield.js +12 -1
  677. package/dist/geometry/index.js +12 -11
  678. package/dist/geometry/loft/loft-simple-mesh.js +6 -6
  679. package/dist/geometry/loft/loft.js +22 -13
  680. package/dist/geometry/math/immutable-value.js +1 -1
  681. package/dist/geometry/math/vector-value.js +11 -3
  682. package/dist/geometry/math/vector2.js +1 -0
  683. package/dist/geometry/math/vector3.js +1 -0
  684. package/dist/geometry/mechanical/gear-motion.js +3 -3
  685. package/dist/geometry/mechanical/gears.js +38 -38
  686. package/dist/geometry/mechanical/index.js +4 -3
  687. package/dist/geometry/mechanical/knuckle-hinge.js +110 -0
  688. package/dist/geometry/mechanical/standards.js +1 -1
  689. package/dist/geometry/mechanical/thread-helices.js +2 -3
  690. package/dist/geometry/mechanical/thread-mesh-plan.js +11 -7
  691. package/dist/geometry/mechanical/thread-mesh.js +7 -7
  692. package/dist/geometry/mechanical/thread-profiles.js +5 -5
  693. package/dist/geometry/mechanical/thread-solids.js +31 -6
  694. package/dist/geometry/mechanical/thread-surface.js +1 -1
  695. package/dist/geometry/mechanical/threads.js +8 -8
  696. package/dist/geometry/mesh/mesh-centroid.js +1 -0
  697. package/dist/geometry/mesh/mesh-planar.js +25 -27
  698. package/dist/geometry/mesh/mesh-quality.js +5 -5
  699. package/dist/geometry/mesh/mesh-signature.js +13 -13
  700. package/dist/geometry/mesh/mesh-solid.js +8 -7
  701. package/dist/geometry/mesh/mesh.js +4 -15
  702. package/dist/geometry/paths/closest-point.js +8 -19
  703. package/dist/geometry/paths/frames.js +42 -11
  704. package/dist/geometry/paths/helix.js +17 -6
  705. package/dist/geometry/paths/path-value.js +268 -0
  706. package/dist/geometry/paths/planar.js +36 -23
  707. package/dist/geometry/paths/resampling.js +27 -5
  708. package/dist/geometry/patterns/placements.js +100 -27
  709. package/dist/geometry/patterns.js +5 -3
  710. package/dist/geometry/polygon-clipping.js +17 -0
  711. package/dist/geometry/profiles/contour.js +7 -6
  712. package/dist/geometry/profiles/matched.js +5 -4
  713. package/dist/geometry/profiles/profiles.js +4 -4
  714. package/dist/geometry/profiles/rectangle.js +14 -5
  715. package/dist/geometry/profiles/side-profile.js +9 -7
  716. package/dist/geometry/profiles/span-sampling.js +1 -1
  717. package/dist/geometry/resolution.js +34 -34
  718. package/dist/geometry/revolve/revolve-mesh.js +12 -7
  719. package/dist/geometry/stroke-path.js +12 -27
  720. package/dist/geometry/svg/fill.js +7 -21
  721. package/dist/geometry/svg-import.js +31 -25
  722. package/dist/geometry/sweeps/options.js +5 -4
  723. package/dist/geometry/sweeps/orientation.js +5 -5
  724. package/dist/geometry/sweeps/stations.js +10 -10
  725. package/dist/geometry/sweeps/sweep-closed.js +2 -2
  726. package/dist/geometry/sweeps/sweep-mesh.js +9 -3
  727. package/dist/geometry/sweeps/sweep-open.js +1 -1
  728. package/dist/geometry/sweeps/validation.js +4 -7
  729. package/dist/geometry/text-fitting.js +1 -0
  730. package/dist/geometry/transform-geometry.js +7 -14
  731. package/dist/geometry/transform-matrix.js +1 -1
  732. package/dist/geometry/{transform-chain.js → transform-value.js} +24 -15
  733. package/dist/index.js +3 -1
  734. package/dist/model/execution-binding.js +3 -3
  735. package/dist/model/geometry-recipes.js +1 -1
  736. package/dist/model/immutable-generation-data.js +62 -10
  737. package/dist/model/knuckle-hinge.js +1 -0
  738. package/dist/model/operations.js +79 -26
  739. package/dist/model/recipe-declaration.js +21 -7
  740. package/dist/model/shape-handles.js +2 -1
  741. package/dist/text/index.js +15 -9
  742. package/dist/text/vector-text-layout.js +31 -26
  743. package/package.json +1 -1
  744. package/dist/docs/reference/geometry/Bounds2.md +0 -39
  745. package/dist/docs/reference/geometry/Bounds3.md +0 -39
  746. package/dist/docs/reference/geometry/ClosestPointOnPathOptions.md +0 -34
  747. package/dist/docs/reference/geometry/ClosestPointOnPathResult.md +0 -65
  748. package/dist/docs/reference/geometry/Path2.md +0 -14
  749. package/dist/docs/reference/geometry/Path3.md +0 -14
  750. package/dist/docs/reference/geometry/PrimitivePlacement.md +0 -31
  751. package/dist/docs/reference/geometry/PrimitivePlacementOptions.md +0 -83
  752. package/dist/docs/reference/geometry/StrokePathCap.md +0 -7
  753. package/dist/docs/reference/geometry/StrokePathJoin.md +0 -7
  754. package/dist/docs/reference/geometry/Transform2Matrix.md +0 -14
  755. package/dist/docs/reference/geometry/Transform3Matrix.md +0 -17
  756. package/dist/docs/reference/geometry/Vector2Tuple.md +0 -14
  757. package/dist/docs/reference/geometry/Vector3Tuple.md +0 -14
  758. package/dist/docs/reference/geometry/closestPointOnPath.md +0 -110
  759. package/dist/docs/reference/geometry/cumulativePathLengths.md +0 -33
  760. package/dist/docs/reference/geometry/measureTriangleMesh.md +0 -55
  761. package/dist/docs/reference/geometry/pathLength.md +0 -33
  762. package/dist/docs/reference/geometry/strokePathRegion.md +0 -63
  763. package/dist/docs/reference/geometry/transformContour.md +0 -42
  764. package/dist/docs/reference/geometry/transformPath2.md +0 -40
  765. package/dist/docs/reference/geometry/transformPath3.md +0 -33
  766. package/dist/docs/reference/model/Bounds2.md +0 -39
  767. package/dist/docs/reference/model/Bounds3.md +0 -39
  768. package/dist/docs/reference/model/Path2.md +0 -20
  769. package/dist/docs/reference/model/Transform2Matrix.md +0 -15
  770. package/dist/docs/reference/model/Transform3Matrix.md +0 -18
  771. package/dist/docs/reference/model/rayCast.md +0 -40
  772. package/dist/docs/reference/model/toTriangleMesh.md +0 -27
  773. package/dist/docs/reference/text/Bounds2.md +0 -34
  774. package/dist/docs/reference/text/Vector2Tuple.md +0 -7
  775. package/dist/geometry/paths/path.js +0 -32
@@ -1,8 +1,8 @@
1
1
  # polygon
2
2
 
3
- Fills one closed millimetre XY outline, explicit outer/hole topology, or compound contours. Closing edges are implicit. Compound contours use nonzero fill unless selected otherwise. Explicit topology must be simple and disjoint; compound winding may resolve overlaps.
3
+ Fills one closed millimetre XY outline, explicit outer/hole topology, or compound contours.
4
4
 
5
- **polygon**(`input`: [`Contour`](Contour.md) \| [`PolygonOptions`](PolygonOptions.md)): [`Section`](Section.md)
5
+ **polygon**(`input`: [`Path2Input`](Path2Input.md) \| [`PolygonOptions`](PolygonOptions.md)): [`Section`](Section.md)
6
6
 
7
7
 
8
8
 
@@ -12,11 +12,14 @@ Fills one closed millimetre XY outline, explicit outer/hole topology, or compoun
12
12
  polygon([[0, 0], [20, 0], [10, 12]]).extrude({ height: 3 });
13
13
  ```
14
14
 
15
+ Closing edges are implicit. Compound contours use nonzero fill unless selected otherwise.
16
+ Explicit topology must be simple and disjoint; compound winding may resolve overlaps.
17
+
15
18
  ## Parameters
16
19
 
17
20
  <a id="input"></a>
18
21
 
19
- **`input`** · [`Contour`](Contour.md) \| [`PolygonOptions`](PolygonOptions.md) · Required
22
+ **`input`** · [`Path2Input`](Path2Input.md) \| [`PolygonOptions`](PolygonOptions.md) · Required
20
23
 
21
24
 
22
25
 
@@ -27,7 +30,7 @@ polygon([[0, 0], [20, 0], [10, 12]]).extrude({ height: 3 });
27
30
 
28
31
  ## Related APIs
29
32
 
30
- - [Contour](Contour.md)
33
+ - [Path2Input](Path2Input.md)
31
34
  - [PolygonOptions](PolygonOptions.md)
32
35
  - [Section](Section.md)
33
36
 
@@ -37,4 +40,4 @@ polygon([[0, 0], [20, 0], [10, 12]]).extrude({ height: 3 });
37
40
  - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
38
41
  - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
39
42
 
40
- Package: `@metamesh/modeling@0.14.0`.
43
+ Package: `@metamesh/modeling@0.16.0`.
@@ -1,11 +1,15 @@
1
1
  # preflightInternalThreadCutter
2
2
 
3
- Allocation-free internal-thread facts.
3
+ Checks compensated cutter dimensions and conservative mesh estimates against host output limits.
4
4
 
5
5
  **preflightInternalThreadCutter**(`options`: [`InternalThreadCutterOptions`](InternalThreadCutterOptions.md)): [`HelicalThreadSolidMeshPreflight`](HelicalThreadSolidMeshPreflight.md)
6
6
 
7
7
 
8
8
 
9
+ Requires active synchronous model execution and uses its resolution and limits. Estimates include
10
+ the one-pitch extension beyond each requested face, without mesh buffers or native objects.
11
+ Mesh validity, native construction, and aggregate output limits are checked later.
12
+
9
13
  ## Parameters
10
14
 
11
15
  <a id="options"></a>
@@ -37,7 +41,7 @@ Allocation-free internal-thread facts.
37
41
 
38
42
  Explicit output and circular allocation ceilings.
39
43
 
40
- - [`phaseDegrees`](InternalThreadCutterOptions.md#phasedegrees) · `number` · Optional
44
+ - [`phase`](InternalThreadCutterOptions.md#phase) · `number` · Optional
41
45
 
42
46
  Angular offset of the first start in degrees. Default: `0`.
43
47
 
@@ -81,9 +85,11 @@ Allocation-free internal-thread facts.
81
85
 
82
86
  - [HelicalThreadSolidMeshPreflight](HelicalThreadSolidMeshPreflight.md)
83
87
  - [InternalThreadCutterOptions](InternalThreadCutterOptions.md)
88
+ - [internalThreadCutter](internalThreadCutter.md)
84
89
 
85
90
  ## Guides
86
91
 
87
92
  - [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
93
+ - [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
88
94
 
89
- Package: `@metamesh/modeling@0.14.0`.
95
+ Package: `@metamesh/modeling@0.16.0`.
@@ -1,11 +1,15 @@
1
1
  # preflightThreadedNut
2
2
 
3
- Allocation-free nut/cutter facts.
3
+ Checks nut dimensions, chamfers, end-face wall, and the extended compensated cutter's allocation plan.
4
4
 
5
5
  **preflightThreadedNut**(`options`: [`ThreadedNutOptions`](ThreadedNutOptions.md)): [`ThreadedNutPreflight`](ThreadedNutPreflight.md)
6
6
 
7
7
 
8
8
 
9
+ Requires active synchronous model execution and uses its resolution and limits, without mesh
10
+ buffers or native objects. Returned thread estimates cover the cutter, excluding the body and
11
+ Boolean result. Mesh validity, native construction, and aggregate output limits are checked later.
12
+
9
13
  ## Parameters
10
14
 
11
15
  <a id="options"></a>
@@ -45,7 +49,7 @@ Allocation-free nut/cutter facts.
45
49
 
46
50
  Explicit output and circular allocation ceilings.
47
51
 
48
- - [`phaseDegrees`](ThreadedNutOptions.md#phasedegrees) · `number` · Optional
52
+ - [`phase`](ThreadedNutOptions.md#phase) · `number` · Optional
49
53
 
50
54
  Angular offset of the first start in degrees. Default: `0`.
51
55
 
@@ -92,9 +96,11 @@ Allocation-free nut/cutter facts.
92
96
 
93
97
  - [ThreadedNutOptions](ThreadedNutOptions.md)
94
98
  - [ThreadedNutPreflight](ThreadedNutPreflight.md)
99
+ - [threadedNut](threadedNut.md)
95
100
 
96
101
  ## Guides
97
102
 
98
103
  - [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
104
+ - [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
99
105
 
100
- Package: `@metamesh/modeling@0.14.0`.
106
+ Package: `@metamesh/modeling@0.16.0`.
@@ -1,11 +1,15 @@
1
1
  # preflightThreadedRod
2
2
 
3
- Allocation-free external-thread facts.
3
+ Checks compensated rod dimensions and conservative mesh estimates against host output limits.
4
4
 
5
5
  **preflightThreadedRod**(`options`: [`ThreadedRodOptions`](ThreadedRodOptions.md)): [`HelicalThreadSolidMeshPreflight`](HelicalThreadSolidMeshPreflight.md)
6
6
 
7
7
 
8
8
 
9
+ Requires active synchronous model execution and uses its resolution and limits. Returns selected
10
+ sampling and conservative row/triangle estimates without mesh buffers or native objects.
11
+ Mesh validity, native construction, and aggregate output limits are checked later.
12
+
9
13
  ## Parameters
10
14
 
11
15
  <a id="options"></a>
@@ -37,7 +41,7 @@ Allocation-free external-thread facts.
37
41
 
38
42
  Explicit output and circular allocation ceilings.
39
43
 
40
- - [`phaseDegrees`](ThreadedRodOptions.md#phasedegrees) · `number` · Optional
44
+ - [`phase`](ThreadedRodOptions.md#phase) · `number` · Optional
41
45
 
42
46
  Angular offset of the first start in degrees. Default: `0`.
43
47
 
@@ -81,9 +85,11 @@ Allocation-free external-thread facts.
81
85
 
82
86
  - [HelicalThreadSolidMeshPreflight](HelicalThreadSolidMeshPreflight.md)
83
87
  - [ThreadedRodOptions](ThreadedRodOptions.md)
88
+ - [threadedRod](threadedRod.md)
84
89
 
85
90
  ## Guides
86
91
 
87
92
  - [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
93
+ - [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
88
94
 
89
- Package: `@metamesh/modeling@0.14.0`.
95
+ Package: `@metamesh/modeling@0.16.0`.
@@ -14,7 +14,7 @@ Repeats one solid about an axis.
14
14
 
15
15
  ```ts
16
16
  const pin = cylinder({ height: 6, radius: 2 }).translate([12, 0, 0]);
17
- radialPattern(pin, { count: 6, axis: [0, 0, 1], angleDegrees: 60 });
17
+ radialPattern(pin, { count: 6, axis: [0, 0, 1], angle: 60 });
18
18
  ```
19
19
 
20
20
  Repeats one solid about an axis.
@@ -31,22 +31,6 @@ Repeats one solid about an axis.
31
31
 
32
32
  **`options`** · [`RadialPatternOptions`](RadialPatternOptions.md) · Required
33
33
 
34
- - [`count`](RadialPatternOptions.md#count) · `number` · Required
35
-
36
- Number of solids to return, including the original.
37
-
38
- - [`axis`](RadialPatternOptions.md#axis) · [`Vector3Tuple`](Vector3Tuple.md) · Required
39
-
40
- Axis of the right-handed rotation. Its magnitude is ignored.
41
-
42
- - [`angleDegrees`](RadialPatternOptions.md#angledegrees) · `number` · Required
43
-
44
- Signed rotation from one copy to the next, in degrees.
45
-
46
- - [`center`](RadialPatternOptions.md#center) · [`Vector3Tuple`](Vector3Tuple.md) · Optional
47
-
48
- Rotation center in world coordinates. Defaults to the origin.
49
-
50
34
 
51
35
 
52
36
  ### Returns
@@ -57,11 +41,11 @@ readonly [`Solid`](Solid.md)[]
57
41
 
58
42
 
59
43
 
60
- **radialPattern**(`source`: [`PatternSource`](PatternSource.md)\<[`Section`](Section.md)\>, `options`: [`RadialPatternOptions`](RadialPatternOptions.md)): readonly [`Section`](Section.md)[]
44
+ **radialPattern**(`source`: [`PatternSource`](PatternSource.md)\<[`Section`](Section.md)\>, `options`: [`RadialPatternOptions`](RadialPatternOptions.md)\<`2`\>): readonly [`Section`](Section.md)[]
61
45
 
62
46
 
63
47
 
64
- Repeats a filled Section about an axis; placements must preserve its XY plane.
48
+ Repeats a filled Section counterclockwise about a fixed XY pivot, using the implicit +Z axis.
65
49
 
66
50
  ### Parameters
67
51
 
@@ -73,23 +57,7 @@ Repeats a filled Section about an axis; placements must preserve its XY plane.
73
57
 
74
58
  <a id="options-1"></a>
75
59
 
76
- **`options`** · [`RadialPatternOptions`](RadialPatternOptions.md) · Required
77
-
78
- - [`count`](RadialPatternOptions.md#count) · `number` · Required
79
-
80
- Number of solids to return, including the original.
81
-
82
- - [`axis`](RadialPatternOptions.md#axis) · [`Vector3Tuple`](Vector3Tuple.md) · Required
83
-
84
- Axis of the right-handed rotation. Its magnitude is ignored.
85
-
86
- - [`angleDegrees`](RadialPatternOptions.md#angledegrees) · `number` · Required
87
-
88
- Signed rotation from one copy to the next, in degrees.
89
-
90
- - [`center`](RadialPatternOptions.md#center) · [`Vector3Tuple`](Vector3Tuple.md) · Optional
91
-
92
- Rotation center in world coordinates. Defaults to the origin.
60
+ **`options`** · [`RadialPatternOptions`](RadialPatternOptions.md)\<`2`\> · Required
93
61
 
94
62
 
95
63
 
@@ -109,5 +77,6 @@ readonly [`Section`](Section.md)[]
109
77
 
110
78
  - [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
111
79
  - [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
80
+ - [Fluent values and standalone algorithms](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
112
81
 
113
- Package: `@metamesh/modeling@0.14.0`.
82
+ Package: `@metamesh/modeling@0.16.0`.
@@ -12,19 +12,22 @@ Filled rectangular section with uniform or independently treated corners.
12
12
  rectangle({ size: [30, 20], treatment: { kind: "round", radius: 3 } });
13
13
  ```
14
14
 
15
+ Use [rectangleContour](../geometry/rectangleContour.md) for sampled boundary coordinates,
16
+ or [rectangleProfile](../geometry/rectangleProfile.md) to retain identified loft landmarks.
17
+
15
18
  ## Parameters
16
19
 
17
20
  <a id="options"></a>
18
21
 
19
22
  **`options`** · [`RectangleOptions`](RectangleOptions.md) · Required
20
23
 
21
- - [`size`](RectangleOptions.md#size) · `number` \| [`Vector2Tuple`](Vector2Tuple.md) · Required
24
+ - [`size`](RectangleOptions.md#size) · `number` \| [`Vector2Data`](Vector2Data.md) · Required
22
25
 
23
26
  Positive uniform size or explicit XY extents in millimetres.
24
27
 
25
- - [`placement`](RectangleOptions.md#placement) · [`PrimitivePlacementOptions`](PrimitivePlacementOptions.md) · Optional
28
+ - [`attachment`](RectangleOptions.md#attachment) · [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md) · Optional
26
29
 
27
- Applied after local construction; Section placement must preserve the XY plane.
30
+ Applied after local construction; Section attachment must preserve the XY plane.
28
31
 
29
32
  - [`center`](RectangleOptions.md#center) · `boolean` · Optional
30
33
 
@@ -56,4 +59,4 @@ rectangle({ size: [30, 20], treatment: { kind: "round", radius: 3 } });
56
59
  - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
57
60
  - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
58
61
 
59
- Package: `@metamesh/modeling@0.14.0`.
62
+ Package: `@metamesh/modeling@0.16.0`.
@@ -36,4 +36,4 @@ regularPolygon({ radius: 10, sides: 6, sizing: "face" });
36
36
  - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
37
37
  - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
38
38
 
39
- Package: `@metamesh/modeling@0.14.0`.
39
+ Package: `@metamesh/modeling@0.16.0`.
@@ -14,7 +14,7 @@ import { rectangleProfile } from "@metamesh/modeling/geometry";
14
14
 
15
15
  // Contour coordinates are [radius, Z].
16
16
  const [profile] = matchProfiles([rectangleProfile({ size: [4, 16], center: false })]);
17
- revolve(profile!, { revolveDegrees: 270 });
17
+ revolve(profile!, { degrees: 270 });
18
18
  ```
19
19
 
20
20
  ## Parameters
@@ -40,9 +40,10 @@ revolve(profile!, { revolveDegrees: 270 });
40
40
 
41
41
  Operation-level physical tessellation policy over the active model-wide policy.
42
42
 
43
- - [`revolveDegrees`](RevolveOptions.md#revolvedegrees) · `number` · Optional
43
+ - [`degrees`](RevolveOptions.md#degrees) · `number` · Optional · Default: `360`
44
44
 
45
- Positive angular sweep no greater than 360 degrees; partial revolutions have end caps.
45
+ Positive sweep in degrees, no greater than 360. Defaults to a full revolution;
46
+ smaller sweeps form partial revolutions with end caps.
46
47
  Segment counts describe a complete circle and scale to this angular span. Native filled
47
48
  revolutions require at least three sweep intervals: adaptive sampling refines to that floor,
48
49
  while exact counts that imply fewer intervals reject. Pure revolveMesh supports one interval.
@@ -71,4 +72,4 @@ revolve(profile!, { revolveDegrees: 270 });
71
72
  - [Matched-section loft](../../guides/recipes.md#matched-section-loft)
72
73
  - [Choose a modeling path](../../guides/concepts.md#choose-a-modeling-path)
73
74
 
74
- Package: `@metamesh/modeling@0.14.0`.
75
+ Package: `@metamesh/modeling@0.16.0`.
@@ -39,4 +39,4 @@ solidFromMesh(mesh);
39
39
 
40
40
  - [Solid inspection](../../guides/recipes.md#solid-inspection)
41
41
 
42
- Package: `@metamesh/modeling@0.14.0`.
42
+ Package: `@metamesh/modeling@0.16.0`.
@@ -39,4 +39,4 @@ sphere({ diameter: 20 });
39
39
  - [Choose a primitive](../../guides/recipes.md#choose-a-primitive)
40
40
  - [Treated boxes, frustums, and mirrored arrays](../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
41
41
 
42
- Package: `@metamesh/modeling@0.14.0`.
42
+ Package: `@metamesh/modeling@0.16.0`.
@@ -51,4 +51,4 @@ readonly \[[`Solid`](Solid.md), [`Solid`](Solid.md)\]
51
51
  - [Choose the Boolean by the material you want](../../guides/fundamentals.md#choose-the-boolean-by-the-material-you-want)
52
52
  - [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
53
53
 
54
- Package: `@metamesh/modeling@0.14.0`.
54
+ Package: `@metamesh/modeling@0.16.0`.
@@ -63,4 +63,4 @@ readonly \[[`Solid`](Solid.md), [`Solid`](Solid.md)\]
63
63
  - [Choose the Boolean by the material you want](../../guides/fundamentals.md#choose-the-boolean-by-the-material-you-want)
64
64
  - [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
65
65
 
66
- Package: `@metamesh/modeling@0.14.0`.
66
+ Package: `@metamesh/modeling@0.16.0`.
@@ -30,15 +30,15 @@ star({ outerRadius: 12, innerRadius: 6, points: 5 });
30
30
 
31
31
  Integer outer point count from three through 50000.
32
32
 
33
- - [`placement`](StarOptions.md#placement) · [`PrimitivePlacementOptions`](PrimitivePlacementOptions.md) · Optional
33
+ - [`attachment`](StarOptions.md#attachment) · [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md) · Optional
34
34
 
35
- Applied after local construction; Section placement must preserve the XY plane.
35
+ Applied after local construction; Section attachment must preserve the XY plane.
36
36
 
37
37
  - [`limits`](StarOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
38
38
 
39
39
  Explicit sampling ceilings, bounded by the host policy.
40
40
 
41
- - [`rotationDegrees`](StarOptions.md#rotationdegrees) · `number` · Optional
41
+ - [`rotation`](StarOptions.md#rotation) · `number` · Optional
42
42
 
43
43
  Initial counterclockwise rotation in degrees; defaults to zero.
44
44
 
@@ -60,4 +60,4 @@ star({ outerRadius: 12, innerRadius: 6, points: 5 });
60
60
  - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
61
61
  - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
62
62
 
63
- Package: `@metamesh/modeling@0.14.0`.
63
+ Package: `@metamesh/modeling@0.16.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Creates a centered-width native Section along a sampled XY path.
4
4
 
5
- **stroke**(`path`: [`Path2`](Path2.md), `options`: [`StrokeOptions`](StrokeOptions.md)): [`Section`](Section.md)
5
+ **stroke**(`path`: [`Path2Input`](Path2Input.md), `options`: [`StrokeOptions`](StrokeOptions.md)): [`Section`](Section.md)
6
6
 
7
7
 
8
8
 
@@ -12,7 +12,7 @@ Creates a centered-width native Section along a sampled XY path.
12
12
  stroke([[0, 0], [20, 0], [20, 10]], { width: 3, join: "round", cap: "round" }).extrude({ height: 2 });
13
13
  ```
14
14
 
15
- Shares caps, joins and physical sampling with Geometry's strokePathRegion. Native union
15
+ Shares caps, joins and physical sampling with Geometry's strokeRegionData. Native union
16
16
  resolves overlapping stroke primitives. Session resolution and resource ceilings apply;
17
17
  closed paths omit the duplicated seam. Returns an immutable deferred recipe.
18
18
 
@@ -20,7 +20,7 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
20
20
 
21
21
  <a id="path"></a>
22
22
 
23
- **`path`** · [`Path2`](Path2.md) · Required
23
+ **`path`** · [`Path2Input`](Path2Input.md) · Required
24
24
 
25
25
 
26
26
 
@@ -38,13 +38,13 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
38
38
 
39
39
  - [`closed`](StrokeOptions.md#closed) · `boolean` · Optional
40
40
 
41
- Treat the path as a closed non-duplicated loop. Default: `false`.
41
+ Raw point closure defaults to false; a Path2 supplies its closure and rejects conflicts.
42
42
 
43
- - [`cap`](StrokeOptions.md#cap) · [`StrokePathCap`](StrokePathCap.md) · Optional
43
+ - [`cap`](StrokeOptions.md#cap) · [`StrokeCap`](StrokeCap.md) · Optional
44
44
 
45
45
  End-cap treatment for an open path. Ignored for closed paths. Default: `butt`.
46
46
 
47
- - [`join`](StrokeOptions.md#join) · [`StrokePathJoin`](StrokePathJoin.md) · Optional
47
+ - [`join`](StrokeOptions.md#join) · [`StrokeJoin`](StrokeJoin.md) · Optional
48
48
 
49
49
  Corner treatment; miters exceeding SVG's default limit of 4 become bevels. Default: `miter`.
50
50
 
@@ -61,7 +61,7 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
61
61
 
62
62
  ## Related APIs
63
63
 
64
- - [Path2](Path2.md)
64
+ - [Path2Input](Path2Input.md)
65
65
  - [Section](Section.md)
66
66
  - [StrokeOptions](StrokeOptions.md)
67
67
 
@@ -71,4 +71,4 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
71
71
  - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
72
72
  - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
73
73
 
74
- Package: `@metamesh/modeling@0.14.0`.
74
+ Package: `@metamesh/modeling@0.16.0`.
@@ -62,4 +62,4 @@ svgPathSection("M0 0H20V12H0Z", { origin: "center", scale: 1 });
62
62
  - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
63
63
  - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
64
64
 
65
- Package: `@metamesh/modeling@0.14.0`.
65
+ Package: `@metamesh/modeling@0.16.0`.
@@ -61,4 +61,4 @@ svgSection(
61
61
  - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
62
62
  - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
63
63
 
64
- Package: `@metamesh/modeling@0.14.0`.
64
+ Package: `@metamesh/modeling@0.16.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Sweeps explicit corresponding contours using the selected frame policy. Filled Sections use `section.sweep(path, options)`.
4
4
 
5
- **sweep**(`shape`: [`CorrespondingProfile`](CorrespondingProfile.md), `path`: readonly [`Vector3Tuple`](Vector3Tuple.md)[], `options?`: [`SweepOptions`](SweepOptions.md)): [`Solid`](Solid.md)
5
+ **sweep**(`shape`: [`CorrespondingProfile`](CorrespondingProfile.md), `path`: [`Path3Input`](Path3Input.md), `options?`: [`SweepOptions`](SweepOptions.md)): [`Solid`](Solid.md)
6
6
 
7
7
 
8
8
 
@@ -28,7 +28,7 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
28
28
 
29
29
  <a id="path"></a>
30
30
 
31
- **`path`** · readonly [`Vector3Tuple`](Vector3Tuple.md)[] · Required
31
+ **`path`** · [`Path3Input`](Path3Input.md) · Required
32
32
 
33
33
 
34
34
 
@@ -38,7 +38,7 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
38
38
 
39
39
  - [`closed`](SweepOptions.md#closed) · `boolean` · Optional
40
40
 
41
- Join the path's last station to its first. Open paths retain watertight end caps.
41
+ Raw point closure defaults to false; a Path3 supplies its closure and rejects conflicts.
42
42
 
43
43
  - [`limits`](SweepOptions.md#limits) · `Partial`\<[`ModelingLimits`](ModelingLimits.md)\> · Optional
44
44
 
@@ -52,7 +52,7 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
52
52
 
53
53
  Physical sampling of nonzero twist; inserted stations retain authored station controls.
54
54
 
55
- - [`twistDegrees`](SweepOptions.md#twistdegrees) · `number` · Optional
55
+ - [`twist`](SweepOptions.md#twist) · `number` · Optional
56
56
 
57
57
  Total additional profile rotation in degrees, with progression selected by twistBy.
58
58
 
@@ -60,7 +60,7 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
60
60
 
61
61
  Twist advances by physical path length (default), or normalized authored station position, including a closed seam gap.
62
62
 
63
- - [`scale`](SweepOptions.md#scale) · `number` \| [`Vector2Tuple`](Vector2Tuple.md) \| readonly [`Vector2Tuple`](Vector2Tuple.md)[] · Optional
63
+ - [`scale`](SweepOptions.md#scale) · `number` \| [`Vector2Input`](Vector2Input.md) \| readonly [`Vector2Input`](Vector2Input.md)[] · Optional
64
64
 
65
65
  Positive uniform/XY scale, or one XY pair per path station. Defaults to one.
66
66
 
@@ -78,9 +78,9 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
78
78
  ## Related APIs
79
79
 
80
80
  - [CorrespondingProfile](CorrespondingProfile.md)
81
+ - [Path3Input](Path3Input.md)
81
82
  - [Solid](Solid.md)
82
83
  - [SweepOptions](SweepOptions.md)
83
- - [Vector3Tuple](Vector3Tuple.md)
84
84
 
85
85
  ## Guides
86
86
 
@@ -89,4 +89,4 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
89
89
  - [Matched-section loft](../../guides/recipes.md#matched-section-loft)
90
90
  - [Choose a modeling path](../../guides/concepts.md#choose-a-modeling-path)
91
91
 
92
- Package: `@metamesh/modeling@0.14.0`.
92
+ Package: `@metamesh/modeling@0.16.0`.
@@ -54,4 +54,4 @@ function labelSection(layout: VectorTextLayout) {
54
54
  - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
55
55
  - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
56
56
 
57
- Package: `@metamesh/modeling@0.14.0`.
57
+ Package: `@metamesh/modeling@0.16.0`.
@@ -37,7 +37,7 @@ Helical ridge mesh construction.
37
37
 
38
38
  Explicit output and circular allocation ceilings.
39
39
 
40
- - [`phaseDegrees`](HelicalThreadRidgeMeshOptions.md#phasedegrees) · `number` · Optional
40
+ - [`phase`](HelicalThreadRidgeMeshOptions.md#phase) · `number` · Optional
41
41
 
42
42
  Angular offset of the first start in degrees. Default: `0`.
43
43
 
@@ -68,5 +68,6 @@ Helical ridge mesh construction.
68
68
  ## Guides
69
69
 
70
70
  - [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
71
+ - [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
71
72
 
72
- Package: `@metamesh/modeling@0.14.0`.
73
+ Package: `@metamesh/modeling@0.16.0`.
@@ -10,9 +10,9 @@ Compensated threaded nut.
10
10
 
11
11
  ```ts
12
12
  import { threadedNut } from "@metamesh/modeling";
13
- import { createThreadProfile } from "@metamesh/modeling/geometry";
13
+ import { threadProfile } from "@metamesh/modeling/geometry";
14
14
 
15
- const profile = createThreadProfile({ kind: "triangular", pitch: 1.75 });
15
+ const profile = threadProfile({ kind: "triangular", pitch: 1.75 });
16
16
  threadedNut({ nominalMajorDiameter: 12, thickness: 8, width: 20, shape: "hex", profile, fit: "normal" });
17
17
  ```
18
18
 
@@ -55,7 +55,7 @@ threadedNut({ nominalMajorDiameter: 12, thickness: 8, width: 20, shape: "hex", p
55
55
 
56
56
  Explicit output and circular allocation ceilings.
57
57
 
58
- - [`phaseDegrees`](ThreadedNutOptions.md#phasedegrees) · `number` · Optional
58
+ - [`phase`](ThreadedNutOptions.md#phase) · `number` · Optional
59
59
 
60
60
  Angular offset of the first start in degrees. Default: `0`.
61
61
 
@@ -106,5 +106,6 @@ threadedNut({ nominalMajorDiameter: 12, thickness: 8, width: 20, shape: "hex", p
106
106
  ## Guides
107
107
 
108
108
  - [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
109
+ - [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
109
110
 
110
- Package: `@metamesh/modeling@0.14.0`.
111
+ Package: `@metamesh/modeling@0.16.0`.
@@ -10,9 +10,9 @@ Compensated external threaded rod.
10
10
 
11
11
  ```ts
12
12
  import { threadedRod } from "@metamesh/modeling";
13
- import { createThreadProfile } from "@metamesh/modeling/geometry";
13
+ import { threadProfile } from "@metamesh/modeling/geometry";
14
14
 
15
- const profile = createThreadProfile({ kind: "triangular", pitch: 1.75 });
15
+ const profile = threadProfile({ kind: "triangular", pitch: 1.75 });
16
16
  threadedRod({ nominalMajorDiameter: 12, length: 24, profile, fit: "normal" });
17
17
  ```
18
18
 
@@ -47,7 +47,7 @@ threadedRod({ nominalMajorDiameter: 12, length: 24, profile, fit: "normal" });
47
47
 
48
48
  Explicit output and circular allocation ceilings.
49
49
 
50
- - [`phaseDegrees`](ThreadedRodOptions.md#phasedegrees) · `number` · Optional
50
+ - [`phase`](ThreadedRodOptions.md#phase) · `number` · Optional
51
51
 
52
52
  Angular offset of the first start in degrees. Default: `0`.
53
53
 
@@ -95,5 +95,6 @@ threadedRod({ nominalMajorDiameter: 12, length: 24, profile, fit: "normal" });
95
95
  ## Guides
96
96
 
97
97
  - [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
98
+ - [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
98
99
 
99
- Package: `@metamesh/modeling@0.14.0`.
100
+ Package: `@metamesh/modeling@0.16.0`.
@@ -30,9 +30,9 @@ torus({ majorRadius: 12, minorRadius: 3 });
30
30
 
31
31
  Radius of the swept circular profile in millimetres.
32
32
 
33
- - [`placement`](TorusOptions.md#placement) · [`PrimitivePlacementOptions`](PrimitivePlacementOptions.md) · Optional
33
+ - [`attachment`](TorusOptions.md#attachment) · [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md) · Optional
34
34
 
35
- Applied after local construction; Section placement must preserve the XY plane.
35
+ Applied after local construction; Section attachment must preserve the XY plane.
36
36
 
37
37
  - [`limits`](TorusOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
38
38
 
@@ -67,4 +67,4 @@ torus({ majorRadius: 12, minorRadius: 3 });
67
67
  - [Choose a primitive](../../guides/recipes.md#choose-a-primitive)
68
68
  - [Treated boxes, frustums, and mirrored arrays](../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
69
69
 
70
- Package: `@metamesh/modeling@0.14.0`.
70
+ Package: `@metamesh/modeling@0.16.0`.
@@ -1,8 +1,8 @@
1
1
  # transform2
2
2
 
3
- Creates an immutable XY transform, identity by default. Matrices are copied and validated. Pass it directly to Section.transform() and planar data helpers; to3D() explicitly crosses into XYZ. Zero scales and singular matrices throw GeometryError; negative scales reflect.
3
+ Creates an immutable XY transform, identity by default.
4
4
 
5
- **transform2**(`matrix?`: [`Transform2Matrix`](Transform2Matrix.md)): [`Transform2`](Transform2-type.md)
5
+ **transform2**(`input?`: [`Transform2Input`](Transform2Input.md)): [`Transform2`](Transform2-type.md)
6
6
 
7
7
 
8
8
 
@@ -10,14 +10,20 @@ Creates an immutable XY transform, identity by default. Matrices are copied and
10
10
 
11
11
  ```ts
12
12
  const placement = transform2().rotate(90).translate([10, 0]);
13
- placement.applyPoint([1, 0]).toArray(); // approximately [10, 1]
13
+ placement.applyPoint([1, 0]).toData(); // approximately [10, 1]
14
14
  ```
15
15
 
16
+ Values and data are copied and validated.
17
+ Pass it directly to Section.transform() and planar data helpers; to3D() explicitly crosses into XYZ.
18
+ Zero scales and singular matrices throw GeometryError; negative scales reflect.
19
+
20
+ Use `toData()` for frozen matrix interchange.
21
+
16
22
  ## Parameters
17
23
 
18
- <a id="matrix"></a>
24
+ <a id="input"></a>
19
25
 
20
- **`matrix`** · [`Transform2Matrix`](Transform2Matrix.md) · Optional
26
+ **`input`** · [`Transform2Input`](Transform2Input.md) · Optional
21
27
 
22
28
 
23
29
 
@@ -29,11 +35,12 @@ placement.applyPoint([1, 0]).toArray(); // approximately [10, 1]
29
35
  ## Related APIs
30
36
 
31
37
  - [Transform2](Transform2-type.md)
32
- - [Transform2Matrix](Transform2Matrix.md)
38
+ - [Transform2Input](Transform2Input.md)
33
39
 
34
40
  ## Guides
35
41
 
36
42
  - [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
37
43
  - [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
44
+ - [Fluent values and standalone algorithms](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
38
45
 
39
- Package: `@metamesh/modeling@0.14.0`.
46
+ Package: `@metamesh/modeling@0.16.0`.