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