@metamesh/modeling 0.14.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 (716) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +25 -10
  3. package/dist/api/engine.d.ts +11 -4
  4. package/dist/api/geometry.d.ts +345 -341
  5. package/dist/api/index.d.ts +262 -144
  6. package/dist/api/text.d.ts +3 -1
  7. package/dist/docs/guides/concepts.md +22 -7
  8. package/dist/docs/guides/fundamentals.md +8 -5
  9. package/dist/docs/guides/hosting.md +21 -11
  10. package/dist/docs/guides/recipes.md +42 -21
  11. package/dist/docs/manifest.json +710 -507
  12. package/dist/docs/reference/engine/Export3mfOptions.md +1 -1
  13. package/dist/docs/reference/engine/ExportMeshPart.md +1 -1
  14. package/dist/docs/reference/engine/GenerationOptions.md +1 -1
  15. package/dist/docs/reference/engine/GeometryResource.md +1 -1
  16. package/dist/docs/reference/engine/ModelDependencies.md +1 -1
  17. package/dist/docs/reference/engine/ModelEngine.md +1 -1
  18. package/dist/docs/reference/engine/ModelEngineOptions.md +4 -8
  19. package/dist/docs/reference/engine/ModelSession.md +1 -1
  20. package/dist/docs/reference/engine/ModelSnapshot.md +20 -9
  21. package/dist/docs/reference/engine/SessionOptions.md +1 -1
  22. package/dist/docs/reference/engine/SnapshotPart.md +2 -2
  23. package/dist/docs/reference/engine/categories/host-lifecycle.md +2 -2
  24. package/dist/docs/reference/engine/createModelEngine.md +3 -3
  25. package/dist/docs/reference/engine/defaultModelingLimits.md +1 -1
  26. package/dist/docs/reference/engine/modelingWasmUrl.md +1 -1
  27. package/dist/docs/reference/engine/validateModel.md +1 -1
  28. package/dist/docs/reference/engine.md +2 -2
  29. package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +1 -1
  30. package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +4 -4
  31. package/dist/docs/reference/geometry/{Anchor3.md → Anchor3-type.md} +1 -1
  32. package/dist/docs/reference/geometry/ArcCurve2.md +5 -5
  33. package/dist/docs/reference/geometry/ArcCurve3.md +5 -5
  34. package/dist/docs/reference/geometry/{AttachTransformOptions.md → AttachOptions.md} +10 -5
  35. package/dist/docs/reference/geometry/AxisAngleRotation3.md +1 -1
  36. package/dist/docs/reference/geometry/Bounds2.md +1 -1
  37. package/dist/docs/reference/geometry/Bounds3.md +1 -1
  38. package/dist/docs/reference/geometry/BoundsFit2.md +1 -1
  39. package/dist/docs/reference/geometry/BoundsFit3.md +1 -1
  40. package/dist/docs/reference/geometry/BoundsFitOptions.md +1 -1
  41. package/dist/docs/reference/geometry/BoundsFromSizeOptions.md +1 -1
  42. package/dist/docs/reference/geometry/BoxAnchorFace.md +1 -1
  43. package/dist/docs/reference/geometry/BoxAnchorOptions.md +1 -1
  44. package/dist/docs/reference/geometry/BoxEdge.md +1 -1
  45. package/dist/docs/reference/geometry/BoxEdgeSelection.md +1 -1
  46. package/dist/docs/reference/geometry/BoxEdgeTreatments.md +1 -1
  47. package/dist/docs/reference/geometry/BoxOptions.md +8 -8
  48. package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +1 -1
  49. package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +1 -1
  50. package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +1 -1
  51. package/dist/docs/reference/geometry/CircleContourOptions.md +1 -1
  52. package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +1 -1
  53. package/dist/docs/reference/geometry/CircularResolutionOptions.md +7 -7
  54. package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +1 -1
  55. package/dist/docs/reference/geometry/ClearanceHoleFit.md +1 -1
  56. package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +1 -1
  57. package/dist/docs/reference/geometry/Contour.md +1 -1
  58. package/dist/docs/reference/geometry/ContourCurve.md +1 -1
  59. package/dist/docs/reference/geometry/ContourPoint.md +1 -1
  60. package/dist/docs/reference/geometry/ContourSegment.md +1 -1
  61. package/dist/docs/reference/geometry/CorrespondingComponent.md +1 -1
  62. package/dist/docs/reference/geometry/CorrespondingContour.md +1 -1
  63. package/dist/docs/reference/geometry/CorrespondingProfile.md +1 -1
  64. package/dist/docs/reference/geometry/CorrespondingProfileStation.md +1 -1
  65. package/dist/docs/reference/geometry/CubicBezierCurve2.md +1 -1
  66. package/dist/docs/reference/geometry/CubicBezierCurve3.md +1 -1
  67. package/dist/docs/reference/geometry/Curve2.md +1 -1
  68. package/dist/docs/reference/geometry/Curve3.md +1 -1
  69. package/dist/docs/reference/geometry/CurveSamplingOptions.md +5 -3
  70. package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +1 -1
  71. package/dist/docs/reference/geometry/CylinderAnchorFace.md +1 -1
  72. package/dist/docs/reference/geometry/CylinderAnchorOptions.md +3 -3
  73. package/dist/docs/reference/geometry/CylinderOptions.md +3 -3
  74. package/dist/docs/reference/geometry/CylindricalGearDimensions.md +3 -3
  75. package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +1 -1
  76. package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +1 -1
  77. package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +3 -3
  78. package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +1 -1
  79. package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +1 -1
  80. package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +1 -1
  81. package/dist/docs/reference/geometry/CylindricalGearSpec.md +6 -6
  82. package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +1 -1
  83. package/dist/docs/reference/geometry/EdgeTreatment.md +1 -1
  84. package/dist/docs/reference/geometry/EllipseContourOptions.md +1 -1
  85. package/dist/docs/reference/geometry/EndTreatments.md +1 -1
  86. package/dist/docs/reference/geometry/ExtrudeOptions.md +6 -6
  87. package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +5 -5
  88. package/dist/docs/reference/geometry/FittedTextLayout.md +1 -1
  89. package/dist/docs/reference/geometry/Frame3.md +1 -1
  90. package/dist/docs/reference/geometry/GeometryError.md +1 -1
  91. package/dist/docs/reference/geometry/GeometryErrorCode.md +1 -1
  92. package/dist/docs/reference/geometry/GeometryErrorContext.md +1 -1
  93. package/dist/docs/reference/geometry/GeometryResolution.md +5 -5
  94. package/dist/docs/reference/geometry/GeometrySamplingLimits.md +1 -1
  95. package/dist/docs/reference/geometry/GeometryToleranceOptions.md +1 -1
  96. package/dist/docs/reference/geometry/GridPatternOptions.md +9 -3
  97. package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +1 -1
  98. package/dist/docs/reference/geometry/HeightfieldOptions.md +1 -1
  99. package/dist/docs/reference/geometry/HeightfieldPreflight.md +1 -1
  100. package/dist/docs/reference/geometry/HelicalThreadRidgeMeshOptions.md +5 -5
  101. package/dist/docs/reference/geometry/HelicalThreadSolidMeshOptions.md +6 -6
  102. package/dist/docs/reference/geometry/HelicalThreadSolidMeshPreflight.md +1 -1
  103. package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +1 -1
  104. package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +6 -6
  105. package/dist/docs/reference/geometry/LineCurve2.md +1 -1
  106. package/dist/docs/reference/geometry/LineCurve3.md +1 -1
  107. package/dist/docs/reference/geometry/LinearPatternOptions.md +12 -5
  108. package/dist/docs/reference/geometry/LoftCorrespondence.md +1 -1
  109. package/dist/docs/reference/geometry/LoftMeshStation.md +4 -4
  110. package/dist/docs/reference/geometry/LoftOptions.md +1 -1
  111. package/dist/docs/reference/geometry/LoftPlacement.md +1 -1
  112. package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +1 -1
  113. package/dist/docs/reference/geometry/MatchProfilesOptions.md +1 -1
  114. package/dist/docs/reference/geometry/MetricFastenerSize.md +1 -1
  115. package/dist/docs/reference/geometry/MetricFastenerStandard.md +1 -1
  116. package/dist/docs/reference/geometry/MetricHexNutDimensions.md +1 -1
  117. package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +1 -1
  118. package/dist/docs/reference/geometry/ModelingLimits.md +1 -1
  119. package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +1 -1
  120. package/dist/docs/reference/geometry/Path2-type.md +192 -0
  121. package/dist/docs/reference/geometry/Path2Data.md +14 -0
  122. package/dist/docs/reference/geometry/Path2Input.md +15 -0
  123. package/dist/docs/reference/geometry/Path3-type.md +192 -0
  124. package/dist/docs/reference/geometry/Path3Data.md +14 -0
  125. package/dist/docs/reference/geometry/Path3Input.md +15 -0
  126. package/dist/docs/reference/geometry/PathFrame.md +1 -1
  127. package/dist/docs/reference/geometry/PathLocation.md +65 -0
  128. package/dist/docs/reference/geometry/PathNormalGuide.md +4 -3
  129. package/dist/docs/reference/geometry/PathOptions.md +34 -0
  130. package/dist/docs/reference/geometry/PathPatternOptions.md +3 -3
  131. package/dist/docs/reference/geometry/PathPlacement.md +1 -1
  132. package/dist/docs/reference/geometry/PathResamplingOptions.md +80 -0
  133. package/dist/docs/reference/geometry/Pivot2Options.md +1 -1
  134. package/dist/docs/reference/geometry/Pivot3Options.md +1 -1
  135. package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +1 -1
  136. package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +22 -22
  137. package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +1 -1
  138. package/dist/docs/reference/geometry/PlanarPatchQuality.md +1 -1
  139. package/dist/docs/reference/geometry/PolygonData.md +1 -1
  140. package/dist/docs/reference/geometry/PolylineResamplingOptions.md +4 -4
  141. package/dist/docs/reference/geometry/PrimitiveAttachment.md +31 -0
  142. package/dist/docs/reference/geometry/PrimitiveAttachmentOptions.md +104 -0
  143. package/dist/docs/reference/geometry/PrintableThreadFit.md +1 -1
  144. package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +1 -1
  145. package/dist/docs/reference/geometry/Profile.md +1 -1
  146. package/dist/docs/reference/geometry/ProfileComponent2.md +1 -1
  147. package/dist/docs/reference/geometry/ProfileContour2.md +1 -1
  148. package/dist/docs/reference/geometry/ProfileSpan2.md +2 -2
  149. package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +1 -1
  150. package/dist/docs/reference/geometry/RackPitchDimensions.md +1 -1
  151. package/dist/docs/reference/geometry/RackPitchSpec.md +5 -5
  152. package/dist/docs/reference/geometry/RadialPatternOptions.md +17 -22
  153. package/dist/docs/reference/geometry/RadialSizing.md +1 -1
  154. package/dist/docs/reference/geometry/RadialSizingOptions.md +1 -1
  155. package/dist/docs/reference/geometry/RectangleContourOptions.md +1 -1
  156. package/dist/docs/reference/geometry/RectangleCornerTreatment.md +1 -1
  157. package/dist/docs/reference/geometry/RectangleCornerTreatments.md +1 -1
  158. package/dist/docs/reference/geometry/RectangleProfileOptions.md +1 -1
  159. package/dist/docs/reference/geometry/RegionData.md +1 -1
  160. package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +3 -3
  161. package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +1 -1
  162. package/dist/docs/reference/geometry/RevolveOptions.md +9 -4
  163. package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +1 -1
  164. package/dist/docs/reference/geometry/RowLayoutOptions.md +1 -1
  165. package/dist/docs/reference/geometry/SampleContourOptions.md +3 -3
  166. package/dist/docs/reference/geometry/SampleHelixOptions.md +1 -1
  167. package/dist/docs/reference/geometry/SampleSideProfileOptions.md +3 -3
  168. package/dist/docs/reference/geometry/SampledCurve2.md +1 -1
  169. package/dist/docs/reference/geometry/SampledCurve3.md +1 -1
  170. package/dist/docs/reference/geometry/SampledThreadHelices.md +3 -3
  171. package/dist/docs/reference/geometry/SideProfileCurve.md +1 -1
  172. package/dist/docs/reference/geometry/SideProfilePoint.md +1 -1
  173. package/dist/docs/reference/geometry/SideProfileSegment.md +1 -1
  174. package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +1 -1
  175. package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +3 -3
  176. package/dist/docs/reference/geometry/SphereOptions.md +3 -3
  177. package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +1 -1
  178. package/dist/docs/reference/geometry/StrokeCap.md +7 -0
  179. package/dist/docs/reference/geometry/StrokeJoin.md +7 -0
  180. package/dist/docs/reference/geometry/{StrokePathRegionOptions.md → StrokeOptions.md} +7 -7
  181. package/dist/docs/reference/geometry/SvgImportOptions.md +1 -1
  182. package/dist/docs/reference/geometry/SvgRegionPreflight.md +1 -1
  183. package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +13 -13
  184. package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +11 -11
  185. package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +9 -9
  186. package/dist/docs/reference/geometry/SweepOptions.md +6 -6
  187. package/dist/docs/reference/geometry/SweepOrientation.md +7 -7
  188. package/dist/docs/reference/geometry/ThreadBevelOptions.md +1 -1
  189. package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +5 -5
  190. package/dist/docs/reference/geometry/ThreadCompensationOptions.md +1 -1
  191. package/dist/docs/reference/geometry/ThreadEndStyle.md +1 -1
  192. package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +1 -1
  193. package/dist/docs/reference/geometry/ThreadHandedness.md +1 -1
  194. package/dist/docs/reference/geometry/ThreadHelixOptions.md +3 -3
  195. package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +1 -1
  196. package/dist/docs/reference/geometry/ThreadLeadInShape.md +1 -1
  197. package/dist/docs/reference/geometry/{ThreadProfile.md → ThreadProfile-type.md} +1 -1
  198. package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +1 -1
  199. package/dist/docs/reference/geometry/ThreadProfileSpec.md +1 -1
  200. package/dist/docs/reference/geometry/ThreadRole.md +1 -1
  201. package/dist/docs/reference/geometry/ThreadedNutBevel.md +1 -1
  202. package/dist/docs/reference/geometry/ThreadedNutOptions.md +6 -6
  203. package/dist/docs/reference/geometry/ThreadedNutPreflight.md +1 -1
  204. package/dist/docs/reference/geometry/ThreadedNutShape.md +1 -1
  205. package/dist/docs/reference/geometry/ThreadedRodOptions.md +6 -6
  206. package/dist/docs/reference/geometry/TorusOptions.md +8 -8
  207. package/dist/docs/reference/geometry/Transform2-type.md +1 -1
  208. package/dist/docs/reference/geometry/Transform2Input.md +1 -1
  209. package/dist/docs/reference/geometry/Transform2Matrix.md +1 -1
  210. package/dist/docs/reference/geometry/Transform3-type.md +1 -1
  211. package/dist/docs/reference/geometry/Transform3Input.md +1 -1
  212. package/dist/docs/reference/geometry/Transform3Matrix.md +1 -1
  213. package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +5 -4
  214. package/dist/docs/reference/geometry/TriangleMesh.md +1 -1
  215. package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +2 -2
  216. package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +1 -1
  217. package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +1 -1
  218. package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +3 -3
  219. package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +1 -1
  220. package/dist/docs/reference/geometry/TriangleMeshSignature.md +2 -2
  221. package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +3 -3
  222. package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +1 -1
  223. package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +1 -1
  224. package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +1 -1
  225. package/dist/docs/reference/geometry/TubeOptions.md +8 -8
  226. package/dist/docs/reference/geometry/Vector2-type.md +1 -1
  227. package/dist/docs/reference/geometry/Vector2Input.md +1 -1
  228. package/dist/docs/reference/geometry/Vector2Tuple.md +1 -1
  229. package/dist/docs/reference/geometry/Vector3-type.md +1 -1
  230. package/dist/docs/reference/geometry/Vector3Input.md +1 -1
  231. package/dist/docs/reference/geometry/Vector3Tuple.md +1 -1
  232. package/dist/docs/reference/geometry/VectorTextArcBaseline.md +3 -3
  233. package/dist/docs/reference/geometry/VectorTextLayout.md +1 -1
  234. package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +1 -1
  235. package/dist/docs/reference/geometry/VectorTextMetrics.md +1 -1
  236. package/dist/docs/reference/geometry/VectorTextOptions.md +1 -1
  237. package/dist/docs/reference/geometry/add2.md +1 -1
  238. package/dist/docs/reference/geometry/add3.md +1 -1
  239. package/dist/docs/reference/geometry/analyzeTriangleMesh.md +1 -1
  240. package/dist/docs/reference/geometry/analyzeTriangleMeshQuality.md +2 -2
  241. package/dist/docs/reference/geometry/{createAnchor3.md → anchor3.md} +9 -9
  242. package/dist/docs/reference/geometry/anchorFrame3.md +5 -5
  243. package/dist/docs/reference/geometry/applyTransformDirection3.md +1 -1
  244. package/dist/docs/reference/geometry/applyTransformPoint3.md +1 -1
  245. package/dist/docs/reference/geometry/{attachTransform.md → attachmentTransform3.md} +13 -13
  246. package/dist/docs/reference/geometry/boundsCenter.md +1 -1
  247. package/dist/docs/reference/geometry/boundsFromSize.md +1 -1
  248. package/dist/docs/reference/geometry/boundsSize.md +1 -1
  249. package/dist/docs/reference/geometry/boxAnchor3.md +4 -4
  250. package/dist/docs/reference/geometry/categories/bounds-layout.md +1 -1
  251. package/dist/docs/reference/geometry/categories/curves-paths.md +15 -13
  252. package/dist/docs/reference/geometry/categories/mechanical.md +6 -6
  253. package/dist/docs/reference/geometry/categories/meshes.md +3 -4
  254. package/dist/docs/reference/geometry/categories/pattern-placement.md +6 -6
  255. package/dist/docs/reference/geometry/categories/primitive-options.md +4 -4
  256. package/dist/docs/reference/geometry/categories/profiles-regions.md +2 -3
  257. package/dist/docs/reference/geometry/categories/resolution-errors.md +1 -1
  258. package/dist/docs/reference/geometry/categories/transforms-math.md +5 -5
  259. package/dist/docs/reference/geometry/categories/vector-import.md +5 -5
  260. package/dist/docs/reference/geometry/circleContour.md +1 -1
  261. package/dist/docs/reference/geometry/closeToAxis.md +1 -1
  262. package/dist/docs/reference/geometry/compensateThreadDiameters.md +1 -1
  263. package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +5 -5
  264. package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +5 -5
  265. package/dist/docs/reference/geometry/composeTransform3.md +1 -1
  266. package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +10 -6
  267. package/dist/docs/reference/geometry/computeParallelTransportFrames.md +8 -7
  268. package/dist/docs/reference/geometry/computeTriangleMeshCentroid.md +1 -1
  269. package/dist/docs/reference/geometry/{createTriangleMeshSignature.md → computeTriangleMeshSignature.md} +4 -4
  270. package/dist/docs/reference/geometry/containsBounds.md +1 -1
  271. package/dist/docs/reference/geometry/contourContainsPoint.md +1 -1
  272. package/dist/docs/reference/geometry/cross2.md +1 -1
  273. package/dist/docs/reference/geometry/cross3.md +1 -1
  274. package/dist/docs/reference/geometry/cylinderAnchor3.md +5 -5
  275. package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +1 -1
  276. package/dist/docs/reference/geometry/distance2.md +1 -1
  277. package/dist/docs/reference/geometry/distance3.md +1 -1
  278. package/dist/docs/reference/geometry/distributeAlongPath.md +8 -6
  279. package/dist/docs/reference/geometry/dot2.md +1 -1
  280. package/dist/docs/reference/geometry/dot3.md +1 -1
  281. package/dist/docs/reference/geometry/ellipseContour.md +1 -1
  282. package/dist/docs/reference/geometry/eulerTransform3.md +1 -1
  283. package/dist/docs/reference/geometry/extrudeMesh.md +8 -8
  284. package/dist/docs/reference/geometry/fitBounds.md +1 -1
  285. package/dist/docs/reference/geometry/fitTextLayout.md +1 -1
  286. package/dist/docs/reference/geometry/frameTransform3.md +1 -1
  287. package/dist/docs/reference/geometry/{getMetricClearanceHole.md → getMetricClearanceHoleDiameter.md} +3 -3
  288. package/dist/docs/reference/geometry/getMetricFastenerStandard.md +1 -1
  289. package/dist/docs/reference/geometry/gridPatternTransforms.md +2 -2
  290. package/dist/docs/reference/geometry/heightfieldMesh.md +1 -1
  291. package/dist/docs/reference/geometry/{buildHelicalThreadRidgeMesh.md → helicalThreadRidgeMesh.md} +5 -5
  292. package/dist/docs/reference/geometry/{buildHelicalThreadSolidMesh.md → helicalThreadSolidMesh.md} +5 -5
  293. package/dist/docs/reference/geometry/inverseTransform3.md +1 -1
  294. package/dist/docs/reference/geometry/isGeometryError.md +1 -1
  295. package/dist/docs/reference/geometry/joinTriangleMeshes.md +1 -1
  296. package/dist/docs/reference/geometry/layoutRow.md +1 -1
  297. package/dist/docs/reference/geometry/length2.md +1 -1
  298. package/dist/docs/reference/geometry/length3.md +1 -1
  299. package/dist/docs/reference/geometry/lerp2.md +1 -1
  300. package/dist/docs/reference/geometry/lerp3.md +1 -1
  301. package/dist/docs/reference/geometry/linearPatternTransforms.md +2 -2
  302. package/dist/docs/reference/geometry/loftMesh.md +2 -1
  303. package/dist/docs/reference/geometry/matchProfiles.md +1 -1
  304. package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +1 -1
  305. package/dist/docs/reference/geometry/meshBounds.md +1 -1
  306. package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +3 -3
  307. package/dist/docs/reference/geometry/normalize2.md +1 -1
  308. package/dist/docs/reference/geometry/normalize3.md +1 -1
  309. package/dist/docs/reference/geometry/normalizeContour.md +1 -1
  310. package/dist/docs/reference/geometry/normalizePolygon.md +1 -1
  311. package/dist/docs/reference/geometry/normalizeRegion.md +1 -1
  312. package/dist/docs/reference/geometry/optimizePlanarPatches.md +11 -11
  313. package/dist/docs/reference/geometry/path2.md +42 -0
  314. package/dist/docs/reference/geometry/path3.md +42 -0
  315. package/dist/docs/reference/geometry/pathPatternTransforms.md +6 -6
  316. package/dist/docs/reference/geometry/preflightHeightfield.md +1 -1
  317. package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +3 -3
  318. package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +3 -3
  319. package/dist/docs/reference/geometry/preflightSvgRegion.md +1 -1
  320. package/dist/docs/reference/geometry/preflightThreadedNut.md +3 -3
  321. package/dist/docs/reference/geometry/preflightThreadedRod.md +3 -3
  322. package/dist/docs/reference/geometry/projectOntoPlane3.md +1 -1
  323. package/dist/docs/reference/geometry/radialPatternTransforms.md +1 -17
  324. package/dist/docs/reference/geometry/rectangleContour.md +1 -1
  325. package/dist/docs/reference/geometry/rectangleProfile.md +1 -1
  326. package/dist/docs/reference/geometry/regionArea.md +1 -1
  327. package/dist/docs/reference/geometry/regionBounds.md +1 -1
  328. package/dist/docs/reference/geometry/regularPolygonContour.md +2 -2
  329. package/dist/docs/reference/geometry/resamplePolyline2.md +2 -2
  330. package/dist/docs/reference/geometry/resamplePolyline3.md +2 -2
  331. package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +4 -4
  332. package/dist/docs/reference/geometry/resolveArcSegments.md +4 -4
  333. package/dist/docs/reference/geometry/resolveCircularSegments.md +1 -1
  334. package/dist/docs/reference/geometry/resolveCylindricalGear.md +1 -1
  335. package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +1 -1
  336. package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +3 -3
  337. package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +1 -1
  338. package/dist/docs/reference/geometry/resolveGeometryTolerance.md +1 -1
  339. package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +1 -1
  340. package/dist/docs/reference/geometry/resolveRackPitch.md +1 -1
  341. package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +4 -4
  342. package/dist/docs/reference/geometry/reverseTriangleMesh.md +1 -1
  343. package/dist/docs/reference/geometry/revolveMesh.md +10 -10
  344. package/dist/docs/reference/geometry/rotate2.md +1 -1
  345. package/dist/docs/reference/geometry/rotationTransform3.md +1 -1
  346. package/dist/docs/reference/geometry/roundClosedPolylinePath.md +6 -4
  347. package/dist/docs/reference/geometry/sampleContour.md +3 -3
  348. package/dist/docs/reference/geometry/sampleCurve2.md +3 -3
  349. package/dist/docs/reference/geometry/sampleCurve3.md +2 -2
  350. package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +1 -1
  351. package/dist/docs/reference/geometry/sampleHelix.md +2 -2
  352. package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +1 -1
  353. package/dist/docs/reference/geometry/sampleRackToothPath.md +4 -4
  354. package/dist/docs/reference/geometry/sampleSideProfile.md +3 -3
  355. package/dist/docs/reference/geometry/sampleTextContours.md +1 -1
  356. package/dist/docs/reference/geometry/sampleThreadHelices.md +2 -2
  357. package/dist/docs/reference/geometry/scale2.md +1 -1
  358. package/dist/docs/reference/geometry/scale3.md +1 -1
  359. package/dist/docs/reference/geometry/scaleTransform3.md +1 -1
  360. package/dist/docs/reference/geometry/signedContourArea.md +1 -1
  361. package/dist/docs/reference/geometry/starContour.md +1 -1
  362. package/dist/docs/reference/geometry/strokeRegionData.md +63 -0
  363. package/dist/docs/reference/geometry/subtract2.md +1 -1
  364. package/dist/docs/reference/geometry/subtract3.md +1 -1
  365. package/dist/docs/reference/geometry/sweepMesh.md +9 -9
  366. package/dist/docs/reference/geometry/{createThreadProfile.md → threadProfile.md} +6 -6
  367. package/dist/docs/reference/geometry/transform2.md +1 -1
  368. package/dist/docs/reference/geometry/transform3.md +1 -1
  369. package/dist/docs/reference/geometry/transformDeterminant3.md +1 -1
  370. package/dist/docs/reference/geometry/transformRegionData.md +1 -1
  371. package/dist/docs/reference/geometry/transformTriangleMesh.md +6 -6
  372. package/dist/docs/reference/geometry/translationTransform3.md +1 -1
  373. package/dist/docs/reference/geometry/triangulateContour.md +1 -1
  374. package/dist/docs/reference/geometry/validateSolidMesh.md +2 -2
  375. package/dist/docs/reference/geometry/validateTransform3.md +1 -1
  376. package/dist/docs/reference/geometry/validateTriangleMesh.md +1 -1
  377. package/dist/docs/reference/geometry/vector2.md +1 -1
  378. package/dist/docs/reference/geometry/vector3.md +1 -1
  379. package/dist/docs/reference/geometry.md +2 -2
  380. package/dist/docs/reference/model/Anchor3.md +1 -1
  381. package/dist/docs/reference/model/AttachOptions.md +10 -5
  382. package/dist/docs/reference/model/Bounds2.md +1 -1
  383. package/dist/docs/reference/model/Bounds3.md +1 -1
  384. package/dist/docs/reference/model/BoxEdge.md +1 -1
  385. package/dist/docs/reference/model/BoxEdgeSelection.md +1 -1
  386. package/dist/docs/reference/model/BoxEdgeTreatments.md +1 -1
  387. package/dist/docs/reference/model/BoxOptions.md +8 -8
  388. package/dist/docs/reference/model/ChamferedEdgeTreatment.md +1 -1
  389. package/dist/docs/reference/model/CircleContourOptions.md +1 -1
  390. package/dist/docs/reference/model/CircleOptions.md +3 -3
  391. package/dist/docs/reference/model/CircularPrimitiveOptions.md +1 -1
  392. package/dist/docs/reference/model/Computed.md +1 -1
  393. package/dist/docs/reference/model/ComputedValue.md +1 -1
  394. package/dist/docs/reference/model/Contour.md +1 -1
  395. package/dist/docs/reference/model/CorrespondingComponent.md +1 -1
  396. package/dist/docs/reference/model/CorrespondingContour.md +1 -1
  397. package/dist/docs/reference/model/CorrespondingProfile.md +1 -1
  398. package/dist/docs/reference/model/CorrespondingProfileStation.md +1 -1
  399. package/dist/docs/reference/model/CylinderOptions.md +3 -3
  400. package/dist/docs/reference/model/DiagnosticOptions.md +1 -1
  401. package/dist/docs/reference/model/EdgeTreatment.md +1 -1
  402. package/dist/docs/reference/model/EllipseContourOptions.md +1 -1
  403. package/dist/docs/reference/model/EllipseOptions.md +3 -3
  404. package/dist/docs/reference/model/EndTreatments.md +1 -1
  405. package/dist/docs/reference/model/ExtrudeOptions.md +6 -6
  406. package/dist/docs/reference/model/FinalizedModel.md +18 -8
  407. package/dist/docs/reference/model/FinalizedPart.md +1 -1
  408. package/dist/docs/reference/model/Frame3.md +1 -1
  409. package/dist/docs/reference/model/GenerateCallback.md +1 -1
  410. package/dist/docs/reference/model/GenerateContext.md +1 -1
  411. package/dist/docs/reference/model/GeneratedPart.md +1 -1
  412. package/dist/docs/reference/model/GenerationDiagnostic.md +1 -1
  413. package/dist/docs/reference/model/GenerationError.md +1 -1
  414. package/dist/docs/reference/model/GeometryResolution.md +5 -5
  415. package/dist/docs/reference/model/GeometrySamplingLimits.md +1 -1
  416. package/dist/docs/reference/model/GeometryToleranceOptions.md +1 -1
  417. package/dist/docs/reference/model/GridPatternOptions.md +9 -3
  418. package/dist/docs/reference/model/HeightfieldOptions.md +1 -1
  419. package/dist/docs/reference/model/HelicalThreadRidgeMeshOptions.md +3 -3
  420. package/dist/docs/reference/model/HelicalThreadSolidMeshPreflight.md +1 -1
  421. package/dist/docs/reference/model/HullOptions.md +5 -5
  422. package/dist/docs/reference/model/ImmutableBuffer-type.md +1 -1
  423. package/dist/docs/reference/model/ImmutableTriangleMesh.md +1 -1
  424. package/dist/docs/reference/model/ImplicitOptions.md +1 -1
  425. package/dist/docs/reference/model/InternalThreadCutterOptions.md +4 -4
  426. package/dist/docs/reference/model/LinearPatternOptions.md +12 -5
  427. package/dist/docs/reference/model/LoftCorrespondence.md +1 -1
  428. package/dist/docs/reference/model/LoftOptions.md +1 -1
  429. package/dist/docs/reference/model/LoftPlacement.md +1 -1
  430. package/dist/docs/reference/model/LoftStation.md +3 -3
  431. package/dist/docs/reference/model/MatchProfilesOptions.md +1 -1
  432. package/dist/docs/reference/model/ModelProgram.md +1 -1
  433. package/dist/docs/reference/model/ModelingLimits.md +1 -1
  434. package/dist/docs/reference/model/NumericArray.md +1 -1
  435. package/dist/docs/reference/model/PartGeometry.md +1 -1
  436. package/dist/docs/reference/model/PartOptions.md +1 -1
  437. package/dist/docs/reference/model/Path2-type.md +192 -0
  438. package/dist/docs/reference/model/Path2Data.md +14 -0
  439. package/dist/docs/reference/model/Path2Input.md +15 -0
  440. package/dist/docs/reference/model/Path3-type.md +192 -0
  441. package/dist/docs/reference/model/Path3Data.md +14 -0
  442. package/dist/docs/reference/model/Path3Input.md +15 -0
  443. package/dist/docs/reference/model/PathLocation.md +65 -0
  444. package/dist/docs/reference/model/PathNormalGuide.md +4 -3
  445. package/dist/docs/reference/model/PathOptions.md +34 -0
  446. package/dist/docs/reference/model/PathPatternOptions.md +3 -3
  447. package/dist/docs/reference/model/PathResamplingOptions.md +79 -0
  448. package/dist/docs/reference/model/PatternSource.md +1 -1
  449. package/dist/docs/reference/model/Pivot2Options.md +1 -1
  450. package/dist/docs/reference/model/Pivot3Options.md +1 -1
  451. package/dist/docs/reference/model/PlaneOptions.md +3 -3
  452. package/dist/docs/reference/model/PolygonData.md +1 -1
  453. package/dist/docs/reference/model/PolygonOptions.md +8 -8
  454. package/dist/docs/reference/model/{PrimitivePlacement.md → PrimitiveAttachment.md} +7 -7
  455. package/dist/docs/reference/model/{PrimitivePlacementOptions.md → PrimitiveAttachmentOptions.md} +41 -20
  456. package/dist/docs/reference/model/PrintableThreadFit.md +1 -1
  457. package/dist/docs/reference/model/PrintableThreadFitPolicy.md +1 -1
  458. package/dist/docs/reference/model/Profile.md +1 -1
  459. package/dist/docs/reference/model/ProfileComponent2.md +1 -1
  460. package/dist/docs/reference/model/ProfileContour2.md +1 -1
  461. package/dist/docs/reference/model/ProfileSpan2.md +2 -2
  462. package/dist/docs/reference/model/ProfiledEdgeTreatment.md +1 -1
  463. package/dist/docs/reference/model/RadialPatternOptions.md +17 -22
  464. package/dist/docs/reference/model/RadialSizing.md +1 -1
  465. package/dist/docs/reference/model/RadialSizingOptions.md +1 -1
  466. package/dist/docs/reference/model/RectangleContourOptions.md +1 -1
  467. package/dist/docs/reference/model/RectangleCornerTreatment.md +1 -1
  468. package/dist/docs/reference/model/RectangleCornerTreatments.md +1 -1
  469. package/dist/docs/reference/model/RectangleOptions.md +8 -8
  470. package/dist/docs/reference/model/RegionData.md +1 -1
  471. package/dist/docs/reference/model/RegularPolygonOptions.md +5 -5
  472. package/dist/docs/reference/model/RevolveOptions.md +9 -4
  473. package/dist/docs/reference/model/RoundedEdgeTreatment.md +1 -1
  474. package/dist/docs/reference/model/Section.md +12 -11
  475. package/dist/docs/reference/model/SectionHullOptions.md +5 -5
  476. package/dist/docs/reference/model/SectionInspection.md +7 -7
  477. package/dist/docs/reference/model/SectionOffsetJoin.md +1 -1
  478. package/dist/docs/reference/model/SectionOffsetOptions.md +1 -1
  479. package/dist/docs/reference/model/SmoothEdgeTreatment.md +1 -1
  480. package/dist/docs/reference/model/Solid.md +23 -6
  481. package/dist/docs/reference/model/SolidInspection.md +4 -4
  482. package/dist/docs/reference/model/{SolidRayHit.md → SolidSegmentHit.md} +3 -3
  483. package/dist/docs/reference/model/SphereOptions.md +3 -3
  484. package/dist/docs/reference/model/StarOptions.md +10 -10
  485. package/dist/docs/reference/model/{StrokePathCap.md → StrokeCap.md} +3 -3
  486. package/dist/docs/reference/model/{StrokePathJoin.md → StrokeJoin.md} +3 -3
  487. package/dist/docs/reference/model/StrokeOptions.md +6 -6
  488. package/dist/docs/reference/model/SvgOrigin.md +1 -1
  489. package/dist/docs/reference/model/SvgPathSectionOptions.md +1 -1
  490. package/dist/docs/reference/model/SvgSectionOptions.md +1 -1
  491. package/dist/docs/reference/model/SweepOptions.md +6 -6
  492. package/dist/docs/reference/model/SweepOrientation.md +7 -7
  493. package/dist/docs/reference/model/TextSectionOptions.md +1 -1
  494. package/dist/docs/reference/model/ThreadEndStyle.md +1 -1
  495. package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +1 -1
  496. package/dist/docs/reference/model/ThreadHandedness.md +1 -1
  497. package/dist/docs/reference/model/ThreadLeadInEnvelope.md +1 -1
  498. package/dist/docs/reference/model/ThreadLeadInShape.md +1 -1
  499. package/dist/docs/reference/model/ThreadProfile.md +1 -1
  500. package/dist/docs/reference/model/ThreadRidgeOptions.md +1 -1
  501. package/dist/docs/reference/model/ThreadedNutBevel.md +1 -1
  502. package/dist/docs/reference/model/ThreadedNutOptions.md +4 -4
  503. package/dist/docs/reference/model/ThreadedNutPreflight.md +1 -1
  504. package/dist/docs/reference/model/ThreadedNutShape.md +1 -1
  505. package/dist/docs/reference/model/ThreadedRodOptions.md +4 -4
  506. package/dist/docs/reference/model/TorusOptions.md +8 -8
  507. package/dist/docs/reference/model/Transform2-type.md +1 -1
  508. package/dist/docs/reference/model/Transform2Input.md +1 -1
  509. package/dist/docs/reference/model/Transform2Matrix.md +1 -1
  510. package/dist/docs/reference/model/Transform3-type.md +1 -1
  511. package/dist/docs/reference/model/Transform3Input.md +1 -1
  512. package/dist/docs/reference/model/Transform3Matrix.md +1 -1
  513. package/dist/docs/reference/model/TriangleMesh.md +1 -1
  514. package/dist/docs/reference/model/TriangleMeshAnalysis.md +2 -2
  515. package/dist/docs/reference/model/TriangleMeshMeasurements.md +1 -1
  516. package/dist/docs/reference/model/TubeOptions.md +8 -8
  517. package/dist/docs/reference/model/Vector2-type.md +1 -1
  518. package/dist/docs/reference/model/Vector2Input.md +1 -1
  519. package/dist/docs/reference/model/Vector2Tuple.md +1 -1
  520. package/dist/docs/reference/model/Vector3-type.md +1 -1
  521. package/dist/docs/reference/model/Vector3Input.md +1 -1
  522. package/dist/docs/reference/model/Vector3Tuple.md +1 -1
  523. package/dist/docs/reference/model/VectorTextLayout.md +1 -1
  524. package/dist/docs/reference/model/VectorTextMetrics.md +1 -1
  525. package/dist/docs/reference/model/anchor.md +1 -1
  526. package/dist/docs/reference/model/box.md +3 -3
  527. package/dist/docs/reference/model/castSegment.md +40 -0
  528. package/dist/docs/reference/model/categories/boolean-operations.md +1 -1
  529. package/dist/docs/reference/model/categories/bounded-surfaces.md +1 -1
  530. package/dist/docs/reference/model/categories/contracts.md +2 -2
  531. package/dist/docs/reference/model/categories/core-values-errors.md +1 -1
  532. package/dist/docs/reference/model/categories/explicit-profiles.md +2 -2
  533. package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +2 -2
  534. package/dist/docs/reference/model/categories/generation.md +1 -1
  535. package/dist/docs/reference/model/categories/inspection.md +4 -5
  536. package/dist/docs/reference/model/categories/mesh-inspection.md +2 -2
  537. package/dist/docs/reference/model/categories/paths.md +33 -0
  538. package/dist/docs/reference/model/categories/primitives.md +2 -2
  539. package/dist/docs/reference/model/categories/resolution.md +2 -2
  540. package/dist/docs/reference/model/categories/sections.md +3 -4
  541. package/dist/docs/reference/model/categories/threads.md +5 -5
  542. package/dist/docs/reference/model/categories/transforms-placement.md +8 -8
  543. package/dist/docs/reference/model/circle.md +1 -1
  544. package/dist/docs/reference/model/components.md +6 -6
  545. package/dist/docs/reference/model/compose.md +1 -1
  546. package/dist/docs/reference/model/cylinder.md +1 -1
  547. package/dist/docs/reference/model/distance.md +1 -1
  548. package/dist/docs/reference/model/ellipse.md +1 -1
  549. package/dist/docs/reference/model/extrude.md +3 -3
  550. package/dist/docs/reference/model/generate.md +1 -1
  551. package/dist/docs/reference/model/gridPattern.md +4 -4
  552. package/dist/docs/reference/model/heightfield.md +1 -1
  553. package/dist/docs/reference/model/hull.md +1 -1
  554. package/dist/docs/reference/model/immutableBuffer.md +1 -1
  555. package/dist/docs/reference/model/immutableMesh.md +1 -1
  556. package/dist/docs/reference/model/implicit.md +1 -1
  557. package/dist/docs/reference/model/inspectSection.md +1 -1
  558. package/dist/docs/reference/model/inspectSolid.md +1 -1
  559. package/dist/docs/reference/model/internalThreadCutter.md +4 -4
  560. package/dist/docs/reference/model/intersect.md +1 -1
  561. package/dist/docs/reference/model/isEmpty.md +1 -1
  562. package/dist/docs/reference/model/linearPattern.md +4 -4
  563. package/dist/docs/reference/model/loft.md +1 -1
  564. package/dist/docs/reference/model/matchProfiles.md +2 -2
  565. package/dist/docs/reference/model/minkowskiSum.md +1 -1
  566. package/dist/docs/reference/model/path2.md +42 -0
  567. package/dist/docs/reference/model/path3.md +42 -0
  568. package/dist/docs/reference/model/pathPattern.md +13 -12
  569. package/dist/docs/reference/model/polygon.md +4 -4
  570. package/dist/docs/reference/model/preflightInternalThreadCutter.md +3 -3
  571. package/dist/docs/reference/model/preflightThreadedNut.md +3 -3
  572. package/dist/docs/reference/model/preflightThreadedRod.md +3 -3
  573. package/dist/docs/reference/model/radialPattern.md +5 -37
  574. package/dist/docs/reference/model/rectangle.md +3 -3
  575. package/dist/docs/reference/model/regularPolygon.md +1 -1
  576. package/dist/docs/reference/model/revolve.md +5 -4
  577. package/dist/docs/reference/model/solidFromMesh.md +1 -1
  578. package/dist/docs/reference/model/sphere.md +1 -1
  579. package/dist/docs/reference/model/split.md +1 -1
  580. package/dist/docs/reference/model/splitByPlane.md +1 -1
  581. package/dist/docs/reference/model/star.md +4 -4
  582. package/dist/docs/reference/model/stroke.md +8 -8
  583. package/dist/docs/reference/model/svgPathSection.md +1 -1
  584. package/dist/docs/reference/model/svgSection.md +1 -1
  585. package/dist/docs/reference/model/sweep.md +7 -7
  586. package/dist/docs/reference/model/textSection.md +1 -1
  587. package/dist/docs/reference/model/threadRidge.md +2 -2
  588. package/dist/docs/reference/model/threadedNut.md +4 -4
  589. package/dist/docs/reference/model/threadedRod.md +4 -4
  590. package/dist/docs/reference/model/torus.md +3 -3
  591. package/dist/docs/reference/model/transform2.md +1 -1
  592. package/dist/docs/reference/model/transform3.md +1 -1
  593. package/dist/docs/reference/model/tube.md +3 -3
  594. package/dist/docs/reference/model/union.md +1 -1
  595. package/dist/docs/reference/model/vector2.md +1 -1
  596. package/dist/docs/reference/model/vector3.md +1 -1
  597. package/dist/docs/reference/model.md +3 -2
  598. package/dist/docs/reference/text/Bounds2.md +1 -1
  599. package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +1 -1
  600. package/dist/docs/reference/text/Vector2Tuple.md +1 -1
  601. package/dist/docs/reference/text/VectorFont.md +2 -2
  602. package/dist/docs/reference/text/VectorFontOptions.md +1 -1
  603. package/dist/docs/reference/text/VectorTextArcBaseline.md +3 -3
  604. package/dist/docs/reference/text/VectorTextLayout.md +1 -1
  605. package/dist/docs/reference/text/VectorTextLayoutOptions.md +1 -1
  606. package/dist/docs/reference/text/VectorTextMetrics.md +1 -1
  607. package/dist/docs/reference/text/VectorTextOptions.md +1 -1
  608. package/dist/docs/reference/text/categories/font-preparation.md +3 -3
  609. package/dist/docs/reference/text/prepareVectorFont.md +2 -2
  610. package/dist/docs/reference/text.md +1 -1
  611. package/dist/engine/construction-operations.js +31 -14
  612. package/dist/engine/execution.js +39 -8
  613. package/dist/engine/extrusion-finishing.js +1 -1
  614. package/dist/engine/index.js +6 -1
  615. package/dist/engine/inspection-operations.js +13 -11
  616. package/dist/engine/loft-operations.js +35 -14
  617. package/dist/engine/model-summary.js +8 -5
  618. package/dist/engine/native/material-components.js +305 -0
  619. package/dist/engine/native/regions.js +2 -1
  620. package/dist/engine/native/threads.js +3 -3
  621. package/dist/engine/native/transforms.js +5 -7
  622. package/dist/engine/operation-environment.js +2 -2
  623. package/dist/engine/pattern-operations.js +1 -1
  624. package/dist/engine/placement.js +2 -2
  625. package/dist/engine/primitive-anchors.js +17 -17
  626. package/dist/engine/primitive-operations.js +1 -1
  627. package/dist/engine/primitive-profiles.js +7 -7
  628. package/dist/engine/profile-mesh.js +7 -7
  629. package/dist/engine/recipe-realization.js +6 -0
  630. package/dist/engine/section-operations.js +33 -8
  631. package/dist/engine/session-snapshot.js +14 -4
  632. package/dist/engine/session.js +10 -5
  633. package/dist/engine/shape-anchors.js +3 -3
  634. package/dist/engine/transform-operations.js +24 -24
  635. package/dist/geometry/anchors.js +40 -33
  636. package/dist/geometry/curves/sampling.js +14 -14
  637. package/dist/geometry/edge-finishing.js +1 -1
  638. package/dist/geometry/extrusion.js +13 -16
  639. package/dist/geometry/index.js +9 -10
  640. package/dist/geometry/loft/loft-simple-mesh.js +6 -6
  641. package/dist/geometry/loft/loft.js +22 -13
  642. package/dist/geometry/math/immutable-value.js +1 -1
  643. package/dist/geometry/mechanical/gear-motion.js +3 -3
  644. package/dist/geometry/mechanical/gears.js +38 -38
  645. package/dist/geometry/mechanical/index.js +3 -3
  646. package/dist/geometry/mechanical/standards.js +1 -1
  647. package/dist/geometry/mechanical/thread-helices.js +2 -3
  648. package/dist/geometry/mechanical/thread-mesh-plan.js +4 -5
  649. package/dist/geometry/mechanical/thread-mesh.js +7 -7
  650. package/dist/geometry/mechanical/thread-profiles.js +5 -5
  651. package/dist/geometry/mechanical/thread-solids.js +2 -2
  652. package/dist/geometry/mechanical/thread-surface.js +1 -1
  653. package/dist/geometry/mechanical/threads.js +8 -8
  654. package/dist/geometry/mesh/mesh-planar.js +25 -27
  655. package/dist/geometry/mesh/mesh-quality.js +5 -5
  656. package/dist/geometry/mesh/mesh-signature.js +13 -13
  657. package/dist/geometry/mesh/mesh-solid.js +7 -7
  658. package/dist/geometry/mesh/mesh.js +4 -15
  659. package/dist/geometry/paths/closest-point.js +8 -19
  660. package/dist/geometry/paths/frames.js +41 -11
  661. package/dist/geometry/paths/helix.js +16 -6
  662. package/dist/geometry/paths/path-value.js +252 -0
  663. package/dist/geometry/paths/planar.js +36 -23
  664. package/dist/geometry/paths/resampling.js +27 -5
  665. package/dist/geometry/patterns/placements.js +100 -27
  666. package/dist/geometry/patterns.js +2 -2
  667. package/dist/geometry/polygon-clipping.js +17 -0
  668. package/dist/geometry/profiles/contour.js +6 -6
  669. package/dist/geometry/profiles/matched.js +4 -4
  670. package/dist/geometry/profiles/profiles.js +4 -4
  671. package/dist/geometry/profiles/rectangle.js +4 -4
  672. package/dist/geometry/profiles/side-profile.js +7 -7
  673. package/dist/geometry/profiles/span-sampling.js +1 -1
  674. package/dist/geometry/resolution.js +34 -34
  675. package/dist/geometry/revolve/revolve-mesh.js +12 -7
  676. package/dist/geometry/stroke-path.js +12 -27
  677. package/dist/geometry/svg/fill.js +7 -21
  678. package/dist/geometry/svg-import.js +23 -23
  679. package/dist/geometry/sweeps/options.js +5 -4
  680. package/dist/geometry/sweeps/orientation.js +5 -5
  681. package/dist/geometry/sweeps/stations.js +10 -10
  682. package/dist/geometry/sweeps/sweep-closed.js +2 -2
  683. package/dist/geometry/sweeps/sweep-mesh.js +9 -3
  684. package/dist/geometry/sweeps/sweep-open.js +1 -1
  685. package/dist/geometry/sweeps/validation.js +4 -7
  686. package/dist/geometry/transform-geometry.js +7 -14
  687. package/dist/index.js +1 -0
  688. package/dist/model/execution-binding.js +3 -3
  689. package/dist/model/geometry-recipes.js +1 -1
  690. package/dist/model/immutable-generation-data.js +66 -6
  691. package/dist/model/operations.js +25 -26
  692. package/dist/model/recipe-declaration.js +13 -7
  693. package/dist/model/shape-handles.js +2 -1
  694. package/dist/text/index.js +15 -9
  695. package/dist/text/vector-text-layout.js +31 -26
  696. package/package.json +1 -1
  697. package/dist/docs/reference/geometry/ClosestPointOnPathOptions.md +0 -34
  698. package/dist/docs/reference/geometry/ClosestPointOnPathResult.md +0 -65
  699. package/dist/docs/reference/geometry/Path2.md +0 -14
  700. package/dist/docs/reference/geometry/Path3.md +0 -14
  701. package/dist/docs/reference/geometry/PrimitivePlacement.md +0 -31
  702. package/dist/docs/reference/geometry/PrimitivePlacementOptions.md +0 -83
  703. package/dist/docs/reference/geometry/StrokePathCap.md +0 -7
  704. package/dist/docs/reference/geometry/StrokePathJoin.md +0 -7
  705. package/dist/docs/reference/geometry/closestPointOnPath.md +0 -110
  706. package/dist/docs/reference/geometry/cumulativePathLengths.md +0 -33
  707. package/dist/docs/reference/geometry/measureTriangleMesh.md +0 -55
  708. package/dist/docs/reference/geometry/pathLength.md +0 -33
  709. package/dist/docs/reference/geometry/strokePathRegion.md +0 -63
  710. package/dist/docs/reference/geometry/transformContour.md +0 -42
  711. package/dist/docs/reference/geometry/transformPath2.md +0 -40
  712. package/dist/docs/reference/geometry/transformPath3.md +0 -33
  713. package/dist/docs/reference/model/Path2.md +0 -20
  714. package/dist/docs/reference/model/rayCast.md +0 -40
  715. package/dist/docs/reference/model/toTriangleMesh.md +0 -27
  716. package/dist/geometry/paths/path.js +0 -32
@@ -28,7 +28,7 @@ const loop = resamplePolyline2([[0,0],[5,0],[5,5],[0,5]], {closed: true, segment
28
28
 
29
29
  Millimetre sampling policy; circularSegments applies only to arcs.
30
30
 
31
- - [`maximumVertices`](PolylineResamplingOptions.md#maximumvertices) · `number` · Optional
31
+ - [`maxVertices`](PolylineResamplingOptions.md#maxvertices) · `number` · Optional
32
32
 
33
33
  Output vertex ceiling of at least two; may only lower limits.maxPathPoints.
34
34
 
@@ -61,4 +61,4 @@ Only final 2D output vectors are copied and frozen. No immutable 3D intermediate
61
61
  - [SampledCurve2](SampledCurve2.md)
62
62
  - [Vector2Tuple](Vector2Tuple.md)
63
63
 
64
- Package: `@metamesh/modeling@0.14.0`.
64
+ Package: `@metamesh/modeling@0.15.0`.
@@ -28,7 +28,7 @@ const path = resamplePolyline3([[0,0,0],[10,0,0],[10,10,0]], {segments: 8});
28
28
 
29
29
  Millimetre sampling policy; circularSegments applies only to arcs.
30
30
 
31
- - [`maximumVertices`](PolylineResamplingOptions.md#maximumvertices) · `number` · Optional
31
+ - [`maxVertices`](PolylineResamplingOptions.md#maxvertices) · `number` · Optional
32
32
 
33
33
  Output vertex ceiling of at least two; may only lower limits.maxPathPoints.
34
34
 
@@ -64,4 +64,4 @@ may bridge original corners. Sampling never silently lowers the requested detail
64
64
  - [SampledCurve3](SampledCurve3.md)
65
65
  - [Vector3Tuple](Vector3Tuple.md)
66
66
 
67
- Package: `@metamesh/modeling@0.14.0`.
67
+ Package: `@metamesh/modeling@0.15.0`.
@@ -15,7 +15,7 @@ const alignedSegments = resolveAlignedCircularSegments(20, { alignTo: [4, 6] });
15
15
  `alignTo` must be non-empty and contain only positive safe integers. Its checked least common
16
16
  multiple defines the alignment grid. An exact `segments` value wins over
17
17
  `resolution.circularSegments` and adaptive sampling, but is never rounded: it must already be
18
- aligned and meet `minimumSegments`. Adaptive counts are rounded upward and fail with
18
+ aligned and meet `minSegments`. Adaptive counts are rounded upward and fail with
19
19
  `COMPLEXITY_LIMIT` when the aligned result exceeds the configured safety cap.
20
20
 
21
21
  ## Parameters
@@ -47,7 +47,7 @@ Required alignment factors plus optional floor, exact count, and resolution.
47
47
 
48
48
  Explicit sampling allocation ceilings.
49
49
 
50
- - [`minimumSegments`](AlignedCircularSegmentsOptions.md#minimumsegments) · `number` · Optional · Default: `3`
50
+ - [`minSegments`](AlignedCircularSegmentsOptions.md#minsegments) · `number` · Optional · Default: `3`
51
51
 
52
52
  Additional full-circle segment floor, as a safe integer of at least three.
53
53
 
@@ -56,7 +56,7 @@ Required alignment factors plus optional floor, exact count, and resolution.
56
56
  Exact full-circle segment count.
57
57
 
58
58
  This takes precedence over `resolution.circularSegments` and adaptive sampling, and must
59
- already satisfy every alignment factor and `minimumSegments`.
59
+ already satisfy every alignment factor and `minSegments`.
60
60
 
61
61
  - [`resolution`](AlignedCircularSegmentsOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
62
62
 
@@ -80,4 +80,4 @@ An aligned full-circle segment count.
80
80
  - [AlignedCircularSegmentsOptions](AlignedCircularSegmentsOptions.md)
81
81
  - [resolveCircularSegments](resolveCircularSegments.md)
82
82
 
83
- Package: `@metamesh/modeling@0.14.0`.
83
+ Package: `@metamesh/modeling@0.15.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Resolves the number of segments needed for a circular arc.
4
4
 
5
- **resolveArcSegments**(`radius`: `number`, `angleDegrees`: `number`, `policy?`: [`CircularResolutionOptions`](CircularResolutionOptions.md), `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>): `number`
5
+ **resolveArcSegments**(`radius`: `number`, `angle`: `number`, `policy?`: [`CircularResolutionOptions`](CircularResolutionOptions.md), `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>): `number`
6
6
 
7
7
 
8
8
 
@@ -25,9 +25,9 @@ Arc radius in millimetres.
25
25
 
26
26
 
27
27
 
28
- <a id="angledegrees"></a>
28
+ <a id="angle"></a>
29
29
 
30
- **`angleDegrees`** · `number` · Required
30
+ **`angle`** · `number` · Required
31
31
 
32
32
  Non-zero signed sweep angle no greater than 360 degrees in magnitude.
33
33
 
@@ -64,4 +64,4 @@ Segment count for the requested arc span.
64
64
  - [GeometrySamplingLimits](GeometrySamplingLimits.md)
65
65
  - [resolveCircularSegments](resolveCircularSegments.md)
66
66
 
67
- Package: `@metamesh/modeling@0.14.0`.
67
+ Package: `@metamesh/modeling@0.15.0`.
@@ -59,4 +59,4 @@ Full-circle segment count.
59
59
  - [resolveAlignedCircularSegments](resolveAlignedCircularSegments.md)
60
60
  - [resolveArcSegments](resolveArcSegments.md)
61
61
 
62
- Package: `@metamesh/modeling@0.14.0`.
62
+ Package: `@metamesh/modeling@0.15.0`.
@@ -28,4 +28,4 @@ currently supported.
28
28
  - [CylindricalGearDimensions](CylindricalGearDimensions.md)
29
29
  - [CylindricalGearSpec](CylindricalGearSpec.md)
30
30
 
31
- Package: `@metamesh/modeling@0.14.0`.
31
+ Package: `@metamesh/modeling@0.15.0`.
@@ -28,4 +28,4 @@ the same hand. The function validates those conjugate pitch invariants.
28
28
  - [CylindricalGearPairDimensions](CylindricalGearPairDimensions.md)
29
29
  - [CylindricalGearPairSpec](CylindricalGearPairSpec.md)
30
30
 
31
- Package: `@metamesh/modeling@0.14.0`.
31
+ Package: `@metamesh/modeling@0.15.0`.
@@ -48,11 +48,11 @@ Twist, scale, exact divisions, and physical resolution controls.
48
48
 
49
49
  Operation-level physical policy over the nearest model scope.
50
50
 
51
- - [`scaleTop`](ExtrusionSamplingOptions.md#scaletop) · `number` \| [`Vector2Tuple`](Vector2Tuple.md) · Optional
51
+ - [`scaleTop`](ExtrusionSamplingOptions.md#scaletop) · `number` \| [`Vector2Input`](Vector2Input.md) · Optional
52
52
 
53
53
  Finite uniform or XY scale of the top profile; defaults to one.
54
54
 
55
- - [`twistDegrees`](ExtrusionSamplingOptions.md#twistdegrees) · `number` · Optional
55
+ - [`twist`](ExtrusionSamplingOptions.md#twist) · `number` · Optional
56
56
 
57
57
  Finite rotation of the top profile about +Z, in degrees; defaults to zero.
58
58
 
@@ -71,4 +71,4 @@ Number of intermediate copies, excluding the two end profiles.
71
71
  - [ExtrusionSamplingOptions](ExtrusionSamplingOptions.md)
72
72
  - [RegionData](RegionData.md)
73
73
 
74
- Package: `@metamesh/modeling@0.14.0`.
74
+ Package: `@metamesh/modeling@0.15.0`.
@@ -23,4 +23,4 @@ Resolves finite positive safe-integer allocation ceilings without ambient state.
23
23
 
24
24
  - [GeometrySamplingLimits](GeometrySamplingLimits.md)
25
25
 
26
- Package: `@metamesh/modeling@0.14.0`.
26
+ Package: `@metamesh/modeling@0.15.0`.
@@ -56,4 +56,4 @@ A complete tolerance policy including the scale-resolved distance.
56
56
  - [GeometryToleranceOptions](GeometryToleranceOptions.md)
57
57
  - [ResolvedGeometryTolerance](ResolvedGeometryTolerance.md)
58
58
 
59
- Package: `@metamesh/modeling@0.14.0`.
59
+ Package: `@metamesh/modeling@0.15.0`.
@@ -24,4 +24,4 @@ Resolves and validates a named or caller-defined print-fit policy.
24
24
  - [PrintableThreadFit](PrintableThreadFit.md)
25
25
  - [PrintableThreadFitPolicy](PrintableThreadFitPolicy.md)
26
26
 
27
- Package: `@metamesh/modeling@0.14.0`.
27
+ Package: `@metamesh/modeling@0.15.0`.
@@ -24,4 +24,4 @@ Resolves a rack segment that is conjugate with the same normal cylindrical pitch
24
24
  - [RackPitchDimensions](RackPitchDimensions.md)
25
25
  - [RackPitchSpec](RackPitchSpec.md)
26
26
 
27
- Package: `@metamesh/modeling@0.14.0`.
27
+ Package: `@metamesh/modeling@0.15.0`.
@@ -7,7 +7,7 @@ Resolves a role-independent, start-aligned facet count from the larger female ma
7
7
 
8
8
 
9
9
  An exact `circularSegments` value must already be divisible by `starts`; it is never silently
10
- raised. Adaptive policies align upward and fail if that would exceed `maximumSegments`.
10
+ raised. Adaptive policies align upward and fail if that would exceed `maxSegments`.
11
11
 
12
12
  ## Parameters
13
13
 
@@ -19,7 +19,7 @@ raised. Adaptive policies align upward and fail if that would exceed `maximumSeg
19
19
 
20
20
  Nominal major diameter before role-specific compensation.
21
21
 
22
- - [`profile`](ThreadCircularSegmentsOptions.md#profile) · [`ThreadProfile`](ThreadProfile.md) · Required
22
+ - [`profile`](ThreadCircularSegmentsOptions.md#profile) · [`ThreadProfile`](ThreadProfile-type.md) · Required
23
23
 
24
24
  Validated mating profile whose pitch and flank capacities govern tessellation.
25
25
 
@@ -31,7 +31,7 @@ raised. Adaptive policies align upward and fail if that would exceed `maximumSeg
31
31
 
32
32
  Printable fit whose larger compensated female envelope governs tessellation.
33
33
 
34
- - [`maximumRadialOutset`](ThreadCircularSegmentsOptions.md#maximumradialoutset) · `number` · Optional
34
+ - [`maxRadialOutset`](ThreadCircularSegmentsOptions.md#maxradialoutset) · `number` · Optional
35
35
 
36
36
  Maximum active female face outset beyond the compensated major envelope, in millimetres.
37
37
  This keeps a compensated male/female pair on one role-independent grid when an internal
@@ -56,4 +56,4 @@ raised. Adaptive policies align upward and fail if that would exceed `maximumSeg
56
56
 
57
57
  - [ThreadCircularSegmentsOptions](ThreadCircularSegmentsOptions.md)
58
58
 
59
- Package: `@metamesh/modeling@0.14.0`.
59
+ Package: `@metamesh/modeling@0.15.0`.
@@ -27,4 +27,4 @@ Fresh position and index buffers; the input remains unchanged.
27
27
 
28
28
  - [TriangleMesh](TriangleMesh.md)
29
29
 
30
- Package: `@metamesh/modeling@0.14.0`.
30
+ Package: `@metamesh/modeling@0.15.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Revolves a non-duplicated closed `[radius, z]` profile around +Z.
4
4
 
5
- `const` **revolveMesh**: (`profile`: readonly [`Vector2Tuple`](Vector2Tuple.md)[], `options?`: [`RevolveOptions`](RevolveOptions.md)) => [`TriangleMesh`](TriangleMesh.md)
5
+ `const` **revolveMesh**: (`input`: [`Path2Input`](Path2Input.md), `options?`: [`RevolveOptions`](RevolveOptions.md)) => [`TriangleMesh`](TriangleMesh.md)
6
6
 
7
7
 
8
8
 
@@ -12,21 +12,20 @@ axis is emitted once and joined as a triangle fan, avoiding coincident seam
12
12
  vertices and zero-area quads. Profile edges that lie entirely on the axis
13
13
  collapse to the solid's interior and are intentionally omitted.
14
14
  Profile coordinates must fit finite Float32 mesh storage.
15
+ Path2 profiles must be closed; raw point collections have an implicit closing edge.
15
16
 
16
17
  ## Example: Partial revolution with end caps
17
18
 
18
19
  ```ts
19
20
  // Each point is [radius, Z]; the profile seam is implicit.
20
- revolveMesh([[0, 0], [12, 0], [8, 20], [0, 20]], { revolveDegrees: 270 });
21
+ revolveMesh([[0, 0], [12, 0], [8, 20], [0, 20]], { degrees: 270 });
21
22
  ```
22
23
 
23
24
  ## Parameters
24
25
 
25
- <a id="profile"></a>
26
+ <a id="input"></a>
26
27
 
27
- **`profile`** · readonly [`Vector2Tuple`](Vector2Tuple.md)[] · Required
28
-
29
- Closed CCW `[radius, z]` profile without a duplicated seam point.
28
+ **`input`** · [`Path2Input`](Path2Input.md) · Required
30
29
 
31
30
 
32
31
 
@@ -47,9 +46,10 @@ Optional physical or exact circumferential sampling controls. Defaults to `{}`.
47
46
 
48
47
  Operation-level physical tessellation policy over the active model-wide policy.
49
48
 
50
- - [`revolveDegrees`](RevolveOptions.md#revolvedegrees) · `number` · Optional
49
+ - [`degrees`](RevolveOptions.md#degrees) · `number` · Optional · Default: `360`
51
50
 
52
- Positive angular sweep no greater than 360 degrees; partial revolutions have end caps.
51
+ Positive sweep in degrees, no greater than 360. Defaults to a full revolution;
52
+ smaller sweeps form partial revolutions with end caps.
53
53
  Segment counts describe a complete circle and scale to this angular span. Native filled
54
54
  revolutions require at least three sweep intervals: adaptive sampling refines to that floor,
55
55
  while exact counts that imply fewer intervals reject. Pure revolveMesh supports one interval.
@@ -69,8 +69,8 @@ A closed indexed triangle mesh revolved counter-clockwise around +Z.
69
69
 
70
70
  ## Related APIs
71
71
 
72
+ - [Path2Input](Path2Input.md)
72
73
  - [RevolveOptions](RevolveOptions.md)
73
74
  - [TriangleMesh](TriangleMesh.md)
74
- - [Vector2Tuple](Vector2Tuple.md)
75
75
 
76
- Package: `@metamesh/modeling@0.14.0`.
76
+ Package: `@metamesh/modeling@0.15.0`.
@@ -33,4 +33,4 @@ Rotates a finite vector counter-clockwise in XY by `degrees` about the origin. T
33
33
 
34
34
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
35
35
 
36
- Package: `@metamesh/modeling@0.14.0`.
36
+ Package: `@metamesh/modeling@0.15.0`.
@@ -50,4 +50,4 @@ A frozen row-major transform.
50
50
 
51
51
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
52
52
 
53
- Package: `@metamesh/modeling@0.14.0`.
53
+ Package: `@metamesh/modeling@0.15.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Replaces each vertex of a non-duplicated closed polyline with a sampled quadratic corner in the same coordinate system as the input.
4
4
 
5
- `const` **roundClosedPolylinePath**: (`points`: readonly [`Vector3Tuple`](Vector3Tuple.md)[], `radius`: `number`, `segmentsPerCorner`: `number`, `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>) => readonly [`Vector3Tuple`](Vector3Tuple.md)[]
5
+ `const` **roundClosedPolylinePath**: (`input`: [`Path3Input`](Path3Input.md), `radius`: `number`, `segmentsPerCorner`: `number`, `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>) => readonly [`Vector3Tuple`](Vector3Tuple.md)[]
6
6
 
7
7
 
8
8
 
@@ -10,12 +10,13 @@ Replaces each vertex of a non-duplicated closed polyline with a sampled quadrati
10
10
  45% of adjacent segment lengths to prevent neighboring corners from crossing.
11
11
  The returned path does not duplicate its closing point.
12
12
  Coordinates and radius must be finite; input and output are each limited by maxPathPoints (default 100000).
13
+ Requires a closed path value; raw tuples are interpreted as closed. Invalid inputs throw GeometryError.
13
14
 
14
15
  ## Parameters
15
16
 
16
- <a id="points"></a>
17
+ <a id="input"></a>
17
18
 
18
- **`points`** · readonly [`Vector3Tuple`](Vector3Tuple.md)[] · Required
19
+ **`input`** · [`Path3Input`](Path3Input.md) · Required
19
20
 
20
21
 
21
22
 
@@ -45,6 +46,7 @@ readonly [`Vector3Tuple`](Vector3Tuple.md)[]
45
46
  ## Related APIs
46
47
 
47
48
  - [GeometrySamplingLimits](GeometrySamplingLimits.md)
49
+ - [Path3Input](Path3Input.md)
48
50
  - [Vector3Tuple](Vector3Tuple.md)
49
51
 
50
- Package: `@metamesh/modeling@0.14.0`.
52
+ Package: `@metamesh/modeling@0.15.0`.
@@ -33,7 +33,7 @@ Closed contour in millimetres unless positive scales convert its coordinates.
33
33
 
34
34
  **`options`** · [`SampleContourOptions`](SampleContourOptions.md) · Optional
35
35
 
36
- Physical resolution and unique vertex budget; defaults to 4096 vertices.
36
+ Physical resolution and unique vertex budget; defaults to min(4096, maxProfilePoints).
37
37
 
38
38
  - [`widthScale`](SampleContourOptions.md#widthscale) · `number` · Optional
39
39
 
@@ -47,7 +47,7 @@ Physical resolution and unique vertex budget; defaults to 4096 vertices.
47
47
 
48
48
  Physical policy evaluated after scaling, using the shared curve sampler.
49
49
 
50
- - [`maximumVertices`](SampleContourOptions.md#maximumvertices) · `number` · Optional
50
+ - [`maxVertices`](SampleContourOptions.md#maxvertices) · `number` · Optional
51
51
 
52
52
  Unique output vertex ceiling, at least three, within maxProfilePoints. Defaults to min(4096, maxProfilePoints).
53
53
 
@@ -74,4 +74,4 @@ Frozen counterclockwise loop in millimetres, without a repeated seam endpoint.
74
74
  - [ContourCurve](ContourCurve.md)
75
75
  - [SampleContourOptions](SampleContourOptions.md)
76
76
 
77
- Package: `@metamesh/modeling@0.14.0`.
77
+ Package: `@metamesh/modeling@0.15.0`.
@@ -9,7 +9,7 @@ Samples a planar curve with the same guarantees and policy as spatial sampling.
9
9
  ## Example
10
10
 
11
11
  ```ts
12
- const turn = sampleCurve2({kind: "arc", center: [0,0], radius: 10, sweepDegrees: 90});
12
+ const turn = sampleCurve2({kind: "arc", center: [0,0], radius: 10, sweepAngle: 90});
13
13
  ```
14
14
 
15
15
  ## Parameters
@@ -32,7 +32,7 @@ const turn = sampleCurve2({kind: "arc", center: [0,0], radius: 10, sweepDegrees:
32
32
 
33
33
  Millimetre sampling policy; circularSegments applies only to arcs.
34
34
 
35
- - [`maximumVertices`](CurveSamplingOptions.md#maximumvertices) · `number` · Optional
35
+ - [`maxVertices`](CurveSamplingOptions.md#maxvertices) · `number` · Optional
36
36
 
37
37
  Output vertex ceiling of at least two; may only lower limits.maxPathPoints.
38
38
 
@@ -58,4 +58,4 @@ frozen. At stationary tangents, outgoing secants are preferred and endpoints use
58
58
  - [CurveSamplingOptions](CurveSamplingOptions.md)
59
59
  - [SampledCurve2](SampledCurve2.md)
60
60
 
61
- Package: `@metamesh/modeling@0.14.0`.
61
+ Package: `@metamesh/modeling@0.15.0`.
@@ -32,7 +32,7 @@ const path = sampleCurve3({kind: "cubic", start: [0,0,0], control1: [5,0,0], con
32
32
 
33
33
  Millimetre sampling policy; circularSegments applies only to arcs.
34
34
 
35
- - [`maximumVertices`](CurveSamplingOptions.md#maximumvertices) · `number` · Optional
35
+ - [`maxVertices`](CurveSamplingOptions.md#maxvertices) · `number` · Optional
36
36
 
37
37
  Output vertex ceiling of at least two; may only lower limits.maxPathPoints.
38
38
 
@@ -58,4 +58,4 @@ bound the full control hull. Full-circle arcs repeat their endpoint; closed poly
58
58
  - [CurveSamplingOptions](CurveSamplingOptions.md)
59
59
  - [SampledCurve3](SampledCurve3.md)
60
60
 
61
- Package: `@metamesh/modeling@0.14.0`.
61
+ Package: `@metamesh/modeling@0.15.0`.
@@ -55,4 +55,4 @@ seam point, and contains no holes. Its center is the origin and its axis is
55
55
  - [CylindricalGearOutlineOptions](CylindricalGearOutlineOptions.md)
56
56
  - [CylindricalGearSpec](CylindricalGearSpec.md)
57
57
 
58
- Package: `@metamesh/modeling@0.14.0`.
58
+ Package: `@metamesh/modeling@0.15.0`.
@@ -1,6 +1,6 @@
1
1
  # sampleHelix
2
2
 
3
- Creates `segments + 1` points including exact helix endpoints from finite positive dimensions. Integrated weights must remain finite. The maxPathPoints ceiling defaults to 100000; excessive exact counts reject before evaluating axial weights or allocating sample arrays.
3
+ Creates `segments + 1` points including exact helix endpoints from finite positive dimensions. Integrated weights must remain finite. The maxPathPoints ceiling defaults to 100000; excessive exact counts reject before evaluating axial weights or allocating sample arrays. Invalid inputs use GeometryError; exceptions thrown by axialWeight propagate unchanged.
4
4
 
5
5
  `const` **sampleHelix**: (`{
6
6
  turns,
@@ -38,4 +38,4 @@ readonly [`Vector3Tuple`](Vector3Tuple.md)[]
38
38
  - [SampleHelixOptions](SampleHelixOptions.md)
39
39
  - [Vector3Tuple](Vector3Tuple.md)
40
40
 
41
- Package: `@metamesh/modeling@0.14.0`.
41
+ Package: `@metamesh/modeling@0.15.0`.
@@ -56,4 +56,4 @@ when used as a region hole.
56
56
  - [CylindricalGearOutlineOptions](CylindricalGearOutlineOptions.md)
57
57
  - [CylindricalGearSpec](CylindricalGearSpec.md)
58
58
 
59
- Package: `@metamesh/modeling@0.14.0`.
59
+ Package: `@metamesh/modeling@0.15.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Samples the open top boundary of a finite rack in its XY pitch plane.
4
4
 
5
- **sampleRackToothPath**(`spec`: [`RackPitchSpec`](RackPitchSpec.md), `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>): [`Path2`](Path2.md)
5
+ **sampleRackToothPath**(`spec`: [`RackPitchSpec`](RackPitchSpec.md), `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>): [`Path2Data`](Path2Data.md)
6
6
 
7
7
 
8
8
 
@@ -27,13 +27,13 @@ the owning generator.
27
27
 
28
28
  ## Returns
29
29
 
30
- [`Path2`](Path2.md)
30
+ [`Path2Data`](Path2Data.md)
31
31
 
32
32
 
33
33
  ## Related APIs
34
34
 
35
35
  - [GeometrySamplingLimits](GeometrySamplingLimits.md)
36
- - [Path2](Path2.md)
36
+ - [Path2Data](Path2Data.md)
37
37
  - [RackPitchSpec](RackPitchSpec.md)
38
38
 
39
- Package: `@metamesh/modeling@0.14.0`.
39
+ Package: `@metamesh/modeling@0.15.0`.
@@ -29,7 +29,7 @@ Open outline in millimetres unless the positive scales convert its coordinates.
29
29
 
30
30
  **`options`** · [`SampleSideProfileOptions`](SampleSideProfileOptions.md) · Optional
31
31
 
32
- Physical resolution and output budget; defaults to 4096 vertices.
32
+ Physical resolution and output budget; defaults to min(4096, maxProfilePoints).
33
33
 
34
34
  - [`radiusScale`](SampleSideProfileOptions.md#radiusscale) · `number` · Optional
35
35
 
@@ -43,7 +43,7 @@ Physical resolution and output budget; defaults to 4096 vertices.
43
43
 
44
44
  Shared physical policy, evaluated after scaling; exact circular counts do not affect curves.
45
45
 
46
- - [`maximumVertices`](SampleSideProfileOptions.md#maximumvertices) · `number` · Optional
46
+ - [`maxVertices`](SampleSideProfileOptions.md#maxvertices) · `number` · Optional
47
47
 
48
48
  Maximum output vertex count within maxProfilePoints. Defaults to the smaller of 4096 and that ceiling.
49
49
 
@@ -70,4 +70,4 @@ Frozen open polyline in millimetres, ordered from lowest to highest anchor.
70
70
  - [SideProfileCurve](SideProfileCurve.md)
71
71
  - [Vector2Tuple](Vector2Tuple.md)
72
72
 
73
- Package: `@metamesh/modeling@0.14.0`.
73
+ Package: `@metamesh/modeling@0.15.0`.
@@ -50,4 +50,4 @@ Frozen contours with original glyph winding and no repeated closing vertex.
50
50
  - [GeometrySamplingLimits](GeometrySamplingLimits.md)
51
51
  - [VectorTextLayout](VectorTextLayout.md)
52
52
 
53
- Package: `@metamesh/modeling@0.14.0`.
53
+ Package: `@metamesh/modeling@0.15.0`.
@@ -32,7 +32,7 @@ Samples evenly phased thread helices with finite `lead = pitch * starts`. All st
32
32
 
33
33
  Explicit aggregate path allocation ceilings across all starts.
34
34
 
35
- - [`phaseDegrees`](ThreadHelixOptions.md#phasedegrees) · `number` · Optional
35
+ - [`phase`](ThreadHelixOptions.md#phase) · `number` · Optional
36
36
 
37
37
  Angular offset of the first start in degrees. Default: `0`.
38
38
 
@@ -60,4 +60,4 @@ Samples evenly phased thread helices with finite `lead = pitch * starts`. All st
60
60
  - [SampledThreadHelices](SampledThreadHelices.md)
61
61
  - [ThreadHelixOptions](ThreadHelixOptions.md)
62
62
 
63
- Package: `@metamesh/modeling@0.14.0`.
63
+ Package: `@metamesh/modeling@0.15.0`.
@@ -33,4 +33,4 @@ Multiplies a vector by a dimensionless scalar.
33
33
 
34
34
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
35
35
 
36
- Package: `@metamesh/modeling@0.14.0`.
36
+ Package: `@metamesh/modeling@0.15.0`.
@@ -39,4 +39,4 @@ scale3([1, 2, 3], 2); // [2, 4, 6]
39
39
 
40
40
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
41
41
 
42
- Package: `@metamesh/modeling@0.14.0`.
42
+ Package: `@metamesh/modeling@0.15.0`.
@@ -35,4 +35,4 @@ A frozen row-major transform.
35
35
 
36
36
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
37
37
 
38
- Package: `@metamesh/modeling@0.14.0`.
38
+ Package: `@metamesh/modeling@0.15.0`.
@@ -23,4 +23,4 @@ Returns the signed area of a non-duplicated loop; positive means CCW.
23
23
 
24
24
  - [Contour](Contour.md)
25
25
 
26
- Package: `@metamesh/modeling@0.14.0`.
26
+ Package: `@metamesh/modeling@0.15.0`.
@@ -48,4 +48,4 @@ readonly [`Vector2Tuple`](Vector2Tuple.md)[]
48
48
  - [GeometrySamplingLimits](GeometrySamplingLimits.md)
49
49
  - [Vector2Tuple](Vector2Tuple.md)
50
50
 
51
- Package: `@metamesh/modeling@0.14.0`.
51
+ Package: `@metamesh/modeling@0.15.0`.
@@ -0,0 +1,63 @@
1
+ # strokeRegionData
2
+
3
+ Converts a sampled millimetre path into the filled region covered by a centered stroke.
4
+
5
+ **strokeRegionData**(`path`: [`Path2Input`](Path2Input.md), `options`: [`StrokeOptions`](StrokeOptions.md)): [`RegionData`](RegionData.md)
6
+
7
+
8
+
9
+ Closed paths omit a duplicated seam point. Zero-length sampled segments are ignored, while the
10
+ effective path must still contain visible length. Round caps and joins use deterministic physical
11
+ resolution. Bevels fill the outer corner triangle; miters extend the outer edges to their
12
+ intersection, falling back to bevels above SVG's default miter limit of 4.
13
+
14
+ ## Parameters
15
+
16
+ <a id="path"></a>
17
+
18
+ **`path`** · [`Path2Input`](Path2Input.md) · Required
19
+
20
+
21
+
22
+ <a id="options"></a>
23
+
24
+ **`options`** · [`StrokeOptions`](StrokeOptions.md) · Required
25
+
26
+ - [`width`](StrokeOptions.md#width) · `number` · Required
27
+
28
+ Positive total stroke width in millimetres, centered on the sampled path.
29
+
30
+ - [`limits`](StrokeOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
31
+
32
+ Explicit path, circular and expanded-profile allocation ceilings.
33
+
34
+ - [`closed`](StrokeOptions.md#closed) · `boolean` · Optional
35
+
36
+ Raw point closure defaults to false; a Path2 supplies its closure and rejects conflicts.
37
+
38
+ - [`cap`](StrokeOptions.md#cap) · [`StrokeCap`](StrokeCap.md) · Optional
39
+
40
+ End-cap treatment for an open path. Ignored for closed paths. Default: `butt`.
41
+
42
+ - [`join`](StrokeOptions.md#join) · [`StrokeJoin`](StrokeJoin.md) · Optional
43
+
44
+ Corner treatment; miters exceeding SVG's default limit of 4 become bevels. Default: `miter`.
45
+
46
+ - [`resolution`](StrokeOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
47
+
48
+ Physical tessellation policy for round caps and joins.
49
+
50
+
51
+
52
+ ## Returns
53
+
54
+ [`RegionData`](RegionData.md)
55
+
56
+
57
+ ## Related APIs
58
+
59
+ - [Path2Input](Path2Input.md)
60
+ - [RegionData](RegionData.md)
61
+ - [StrokeOptions](StrokeOptions.md)
62
+
63
+ Package: `@metamesh/modeling@0.15.0`.
@@ -33,4 +33,4 @@ Subtracts `b` from `a` component-wise.
33
33
 
34
34
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
35
35
 
36
- Package: `@metamesh/modeling@0.14.0`.
36
+ Package: `@metamesh/modeling@0.15.0`.
@@ -39,4 +39,4 @@ subtract3([4, 5, 6], [1, 2, 3]); // [3, 3, 3]
39
39
 
40
40
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
41
41
 
42
- Package: `@metamesh/modeling@0.14.0`.
42
+ Package: `@metamesh/modeling@0.15.0`.