@metamesh/modeling 0.14.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (775) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/README.md +55 -13
  3. package/dist/api/engine.d.ts +15 -7
  4. package/dist/api/geometry.d.ts +853 -562
  5. package/dist/api/index.d.ts +604 -227
  6. package/dist/api/text.d.ts +9 -7
  7. package/dist/docs/guides/concepts.md +295 -91
  8. package/dist/docs/guides/fonts.md +9 -8
  9. package/dist/docs/guides/fundamentals.md +22 -23
  10. package/dist/docs/guides/generation.md +24 -23
  11. package/dist/docs/guides/hosting.md +26 -11
  12. package/dist/docs/guides/recipes.md +74 -48
  13. package/dist/docs/guides/standalone-model.md +42 -0
  14. package/dist/docs/manifest.json +1555 -749
  15. package/dist/docs/reference/engine/Export3mfOptions.md +1 -1
  16. package/dist/docs/reference/engine/ExportMeshPart.md +1 -1
  17. package/dist/docs/reference/engine/GenerationOptions.md +1 -1
  18. package/dist/docs/reference/engine/GeometryResource.md +1 -1
  19. package/dist/docs/reference/engine/ModelDependencies.md +1 -1
  20. package/dist/docs/reference/engine/ModelEngine.md +1 -1
  21. package/dist/docs/reference/engine/ModelEngineOptions.md +4 -8
  22. package/dist/docs/reference/engine/ModelSession.md +1 -1
  23. package/dist/docs/reference/engine/ModelSnapshot.md +21 -10
  24. package/dist/docs/reference/engine/SessionOptions.md +1 -1
  25. package/dist/docs/reference/engine/SnapshotPart.md +6 -3
  26. package/dist/docs/reference/engine/categories/host-lifecycle.md +7 -2
  27. package/dist/docs/reference/engine/createModelEngine.md +3 -3
  28. package/dist/docs/reference/engine/defaultModelingLimits.md +1 -1
  29. package/dist/docs/reference/engine/modelingWasmUrl.md +1 -1
  30. package/dist/docs/reference/engine/validateModel.md +1 -1
  31. package/dist/docs/reference/engine.md +6 -2
  32. package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +5 -1
  33. package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +4 -4
  34. package/dist/docs/reference/geometry/{Anchor3.md → Anchor3-type.md} +6 -5
  35. package/dist/docs/reference/geometry/ArcCurve2.md +11 -7
  36. package/dist/docs/reference/geometry/ArcCurve3.md +13 -9
  37. package/dist/docs/reference/geometry/{AttachTransformOptions.md → AttachOptions.md} +11 -5
  38. package/dist/docs/reference/geometry/AxisAngleRotation3.md +2 -1
  39. package/dist/docs/reference/geometry/Bounds2-type.md +127 -0
  40. package/dist/docs/reference/geometry/Bounds2Data.md +45 -0
  41. package/dist/docs/reference/geometry/Bounds2Input.md +21 -0
  42. package/dist/docs/reference/geometry/Bounds3-type.md +127 -0
  43. package/dist/docs/reference/geometry/Bounds3Data.md +45 -0
  44. package/dist/docs/reference/geometry/Bounds3Input.md +21 -0
  45. package/dist/docs/reference/geometry/BoundsFit2.md +6 -5
  46. package/dist/docs/reference/geometry/BoundsFit3.md +6 -5
  47. package/dist/docs/reference/geometry/BoundsFitOptions.md +2 -1
  48. package/dist/docs/reference/geometry/BoundsFromSizeOptions.md +2 -1
  49. package/dist/docs/reference/geometry/BoxAnchorFace.md +2 -1
  50. package/dist/docs/reference/geometry/BoxAnchorOptions.md +5 -4
  51. package/dist/docs/reference/geometry/BoxEdge.md +1 -1
  52. package/dist/docs/reference/geometry/BoxEdgeSelection.md +1 -1
  53. package/dist/docs/reference/geometry/BoxEdgeTreatments.md +1 -1
  54. package/dist/docs/reference/geometry/BoxOptions.md +10 -10
  55. package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +8 -1
  56. package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +5 -1
  57. package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +1 -1
  58. package/dist/docs/reference/geometry/CircleContourOptions.md +5 -1
  59. package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +1 -1
  60. package/dist/docs/reference/geometry/CircularResolutionOptions.md +7 -7
  61. package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +6 -1
  62. package/dist/docs/reference/geometry/ClearanceHoleFit.md +8 -1
  63. package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +6 -1
  64. package/dist/docs/reference/geometry/Contour.md +10 -4
  65. package/dist/docs/reference/geometry/ContourCurve.md +5 -1
  66. package/dist/docs/reference/geometry/ContourPoint.md +6 -1
  67. package/dist/docs/reference/geometry/ContourSegment.md +5 -1
  68. package/dist/docs/reference/geometry/CorrespondingComponent.md +5 -1
  69. package/dist/docs/reference/geometry/CorrespondingContour.md +5 -1
  70. package/dist/docs/reference/geometry/CorrespondingProfile.md +5 -1
  71. package/dist/docs/reference/geometry/CorrespondingProfileStation.md +5 -1
  72. package/dist/docs/reference/geometry/CubicBezierCurve2.md +10 -6
  73. package/dist/docs/reference/geometry/CubicBezierCurve3.md +10 -6
  74. package/dist/docs/reference/geometry/Curve2.md +5 -1
  75. package/dist/docs/reference/geometry/Curve3.md +5 -1
  76. package/dist/docs/reference/geometry/CurveSamplingOptions.md +9 -3
  77. package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +7 -3
  78. package/dist/docs/reference/geometry/CylinderAnchorFace.md +2 -1
  79. package/dist/docs/reference/geometry/CylinderAnchorOptions.md +6 -5
  80. package/dist/docs/reference/geometry/CylinderOptions.md +3 -3
  81. package/dist/docs/reference/geometry/CylindricalGearDimensions.md +8 -3
  82. package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +8 -1
  83. package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +5 -1
  84. package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +7 -3
  85. package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +5 -1
  86. package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +6 -1
  87. package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +5 -1
  88. package/dist/docs/reference/geometry/CylindricalGearSpec.md +11 -6
  89. package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +1 -1
  90. package/dist/docs/reference/geometry/EdgeTreatment.md +1 -1
  91. package/dist/docs/reference/geometry/EllipseContourOptions.md +7 -3
  92. package/dist/docs/reference/geometry/EndTreatments.md +1 -1
  93. package/dist/docs/reference/geometry/ExtrudeOptions.md +10 -6
  94. package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +9 -5
  95. package/dist/docs/reference/geometry/FittedTextLayout.md +7 -3
  96. package/dist/docs/reference/geometry/Frame3.md +10 -6
  97. package/dist/docs/reference/geometry/GeometryError.md +1 -1
  98. package/dist/docs/reference/geometry/GeometryErrorCode.md +1 -1
  99. package/dist/docs/reference/geometry/GeometryErrorContext.md +1 -1
  100. package/dist/docs/reference/geometry/GeometryResolution.md +5 -5
  101. package/dist/docs/reference/geometry/GeometrySamplingLimits.md +5 -1
  102. package/dist/docs/reference/geometry/GeometryToleranceOptions.md +1 -1
  103. package/dist/docs/reference/geometry/GridPatternOptions.md +11 -5
  104. package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +5 -1
  105. package/dist/docs/reference/geometry/HeightfieldOptions.md +9 -5
  106. package/dist/docs/reference/geometry/HeightfieldPreflight.md +9 -4
  107. package/dist/docs/reference/geometry/HelicalThreadRidgeMeshOptions.md +9 -5
  108. package/dist/docs/reference/geometry/HelicalThreadSolidMeshOptions.md +10 -6
  109. package/dist/docs/reference/geometry/HelicalThreadSolidMeshPreflight.md +7 -2
  110. package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +4 -3
  111. package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +10 -6
  112. package/dist/docs/reference/geometry/KnuckleHingeBaseSpec.md +82 -0
  113. package/dist/docs/reference/geometry/KnuckleHingeDimensions.md +148 -0
  114. package/dist/docs/reference/geometry/KnuckleHingeInterval.md +46 -0
  115. package/dist/docs/reference/geometry/KnuckleHingeSamplingOptions.md +51 -0
  116. package/dist/docs/reference/geometry/KnuckleHingeSpec.md +22 -0
  117. package/dist/docs/reference/geometry/LineCurve2.md +8 -4
  118. package/dist/docs/reference/geometry/LineCurve3.md +8 -4
  119. package/dist/docs/reference/geometry/LinearPatternOptions.md +12 -5
  120. package/dist/docs/reference/geometry/LoftCorrespondence.md +6 -1
  121. package/dist/docs/reference/geometry/LoftMeshStation.md +8 -4
  122. package/dist/docs/reference/geometry/LoftOptions.md +5 -1
  123. package/dist/docs/reference/geometry/LoftPlacement.md +5 -1
  124. package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +5 -1
  125. package/dist/docs/reference/geometry/MatchProfilesOptions.md +5 -1
  126. package/dist/docs/reference/geometry/MetricFastenerSize.md +9 -2
  127. package/dist/docs/reference/geometry/MetricFastenerStandard.md +5 -1
  128. package/dist/docs/reference/geometry/MetricHexNutDimensions.md +6 -1
  129. package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +6 -1
  130. package/dist/docs/reference/geometry/ModelingLimits.md +1 -1
  131. package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +5 -1
  132. package/dist/docs/reference/geometry/Path2-type.md +196 -0
  133. package/dist/docs/reference/geometry/Path2Data.md +50 -0
  134. package/dist/docs/reference/geometry/Path2Input.md +20 -0
  135. package/dist/docs/reference/geometry/Path3-type.md +196 -0
  136. package/dist/docs/reference/geometry/Path3Data.md +50 -0
  137. package/dist/docs/reference/geometry/Path3Input.md +20 -0
  138. package/dist/docs/reference/geometry/PathFrame.md +9 -5
  139. package/dist/docs/reference/geometry/PathLocation.md +69 -0
  140. package/dist/docs/reference/geometry/PathNormalGuide.md +10 -5
  141. package/dist/docs/reference/geometry/PathOptions.md +38 -0
  142. package/dist/docs/reference/geometry/PathPatternOptions.md +3 -3
  143. package/dist/docs/reference/geometry/PathPlacement.md +8 -4
  144. package/dist/docs/reference/geometry/PathResamplingOptions.md +84 -0
  145. package/dist/docs/reference/geometry/Pivot2Options.md +2 -1
  146. package/dist/docs/reference/geometry/Pivot3Options.md +2 -1
  147. package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +8 -1
  148. package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +26 -22
  149. package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +5 -1
  150. package/dist/docs/reference/geometry/PlanarPatchQuality.md +7 -3
  151. package/dist/docs/reference/geometry/PolygonData.md +7 -2
  152. package/dist/docs/reference/geometry/PolylineResamplingOptions.md +8 -4
  153. package/dist/docs/reference/geometry/PrimitiveAttachment.md +31 -0
  154. package/dist/docs/reference/geometry/PrimitiveAttachmentOptions.md +104 -0
  155. package/dist/docs/reference/geometry/PrintableThreadFit.md +8 -1
  156. package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +6 -1
  157. package/dist/docs/reference/geometry/Profile.md +8 -2
  158. package/dist/docs/reference/geometry/ProfileComponent2.md +5 -1
  159. package/dist/docs/reference/geometry/ProfileContour2.md +8 -2
  160. package/dist/docs/reference/geometry/ProfileSpan2.md +7 -3
  161. package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +3 -3
  162. package/dist/docs/reference/geometry/RackPitchDimensions.md +6 -1
  163. package/dist/docs/reference/geometry/RackPitchSpec.md +10 -5
  164. package/dist/docs/reference/geometry/RadialPatternOptions.md +17 -22
  165. package/dist/docs/reference/geometry/RadialSizing.md +1 -1
  166. package/dist/docs/reference/geometry/RadialSizingOptions.md +1 -1
  167. package/dist/docs/reference/geometry/RectangleContourOptions.md +7 -3
  168. package/dist/docs/reference/geometry/RectangleCornerTreatment.md +5 -1
  169. package/dist/docs/reference/geometry/RectangleCornerTreatments.md +5 -1
  170. package/dist/docs/reference/geometry/RectangleProfileOptions.md +7 -3
  171. package/dist/docs/reference/geometry/RegionData.md +6 -2
  172. package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +7 -3
  173. package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +1 -1
  174. package/dist/docs/reference/geometry/RevolveOptions.md +13 -4
  175. package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +1 -1
  176. package/dist/docs/reference/geometry/RowLayoutOptions.md +2 -1
  177. package/dist/docs/reference/geometry/SampleContourOptions.md +7 -3
  178. package/dist/docs/reference/geometry/SampleHelixOptions.md +5 -1
  179. package/dist/docs/reference/geometry/SampleSideProfileOptions.md +7 -3
  180. package/dist/docs/reference/geometry/SampledCurve2.md +8 -4
  181. package/dist/docs/reference/geometry/SampledCurve3.md +8 -4
  182. package/dist/docs/reference/geometry/SampledThreadHelices.md +7 -3
  183. package/dist/docs/reference/geometry/SideProfileCurve.md +5 -1
  184. package/dist/docs/reference/geometry/SideProfilePoint.md +6 -1
  185. package/dist/docs/reference/geometry/SideProfileSegment.md +5 -1
  186. package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +1 -1
  187. package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +7 -3
  188. package/dist/docs/reference/geometry/SphereOptions.md +3 -3
  189. package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +5 -1
  190. package/dist/docs/reference/geometry/StrokeCap.md +14 -0
  191. package/dist/docs/reference/geometry/StrokeJoin.md +14 -0
  192. package/dist/docs/reference/geometry/{StrokePathRegionOptions.md → StrokeOptions.md} +11 -7
  193. package/dist/docs/reference/geometry/SvgImportOptions.md +5 -1
  194. package/dist/docs/reference/geometry/SvgRegionPreflight.md +6 -2
  195. package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +19 -15
  196. package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +16 -11
  197. package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +14 -9
  198. package/dist/docs/reference/geometry/SweepOptions.md +10 -6
  199. package/dist/docs/reference/geometry/SweepOrientation.md +11 -7
  200. package/dist/docs/reference/geometry/ThreadBevelOptions.md +5 -1
  201. package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +9 -5
  202. package/dist/docs/reference/geometry/ThreadCompensationOptions.md +5 -1
  203. package/dist/docs/reference/geometry/ThreadEndStyle.md +8 -1
  204. package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +5 -1
  205. package/dist/docs/reference/geometry/ThreadHandedness.md +8 -1
  206. package/dist/docs/reference/geometry/ThreadHelixOptions.md +7 -3
  207. package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +8 -1
  208. package/dist/docs/reference/geometry/ThreadLeadInShape.md +8 -1
  209. package/dist/docs/reference/geometry/{ThreadProfile.md → ThreadProfile-type.md} +7 -3
  210. package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +5 -1
  211. package/dist/docs/reference/geometry/ThreadProfileSpec.md +5 -1
  212. package/dist/docs/reference/geometry/ThreadRole.md +8 -1
  213. package/dist/docs/reference/geometry/ThreadedNutBevel.md +8 -1
  214. package/dist/docs/reference/geometry/ThreadedNutOptions.md +10 -6
  215. package/dist/docs/reference/geometry/ThreadedNutPreflight.md +7 -3
  216. package/dist/docs/reference/geometry/ThreadedNutShape.md +8 -1
  217. package/dist/docs/reference/geometry/ThreadedRodOptions.md +10 -6
  218. package/dist/docs/reference/geometry/TorusOptions.md +8 -8
  219. package/dist/docs/reference/geometry/Transform2-type.md +6 -5
  220. package/dist/docs/reference/geometry/Transform2Data.md +15 -0
  221. package/dist/docs/reference/geometry/Transform2Input.md +4 -3
  222. package/dist/docs/reference/geometry/Transform3-type.md +6 -5
  223. package/dist/docs/reference/geometry/Transform3Data.md +18 -0
  224. package/dist/docs/reference/geometry/Transform3Input.md +4 -3
  225. package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +9 -4
  226. package/dist/docs/reference/geometry/TriangleMesh.md +6 -1
  227. package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +8 -4
  228. package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +5 -1
  229. package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +7 -3
  230. package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +7 -3
  231. package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +5 -1
  232. package/dist/docs/reference/geometry/TriangleMeshSignature.md +8 -4
  233. package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +8 -3
  234. package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +6 -1
  235. package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +5 -1
  236. package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +5 -1
  237. package/dist/docs/reference/geometry/TubeOptions.md +8 -8
  238. package/dist/docs/reference/geometry/Vector2-type.md +6 -5
  239. package/dist/docs/reference/geometry/Vector2Data.md +15 -0
  240. package/dist/docs/reference/geometry/Vector2Input.md +4 -3
  241. package/dist/docs/reference/geometry/Vector3-type.md +6 -5
  242. package/dist/docs/reference/geometry/Vector3Data.md +15 -0
  243. package/dist/docs/reference/geometry/Vector3Input.md +4 -3
  244. package/dist/docs/reference/geometry/VectorTextArcBaseline.md +8 -3
  245. package/dist/docs/reference/geometry/VectorTextLayout.md +5 -1
  246. package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +5 -1
  247. package/dist/docs/reference/geometry/VectorTextMetrics.md +7 -3
  248. package/dist/docs/reference/geometry/VectorTextOptions.md +5 -1
  249. package/dist/docs/reference/geometry/add2.md +7 -6
  250. package/dist/docs/reference/geometry/add3.md +7 -6
  251. package/dist/docs/reference/geometry/analyzeTriangleMesh.md +5 -1
  252. package/dist/docs/reference/geometry/analyzeTriangleMeshQuality.md +6 -2
  253. package/dist/docs/reference/geometry/{createAnchor3.md → anchor3.md} +10 -9
  254. package/dist/docs/reference/geometry/anchorFrame3.md +9 -5
  255. package/dist/docs/reference/geometry/applyTransformDirection3.md +8 -7
  256. package/dist/docs/reference/geometry/applyTransformPoint3.md +8 -7
  257. package/dist/docs/reference/geometry/{attachTransform.md → attachmentTransform3.md} +16 -15
  258. package/dist/docs/reference/geometry/bounds2.md +38 -0
  259. package/dist/docs/reference/geometry/bounds3.md +38 -0
  260. package/dist/docs/reference/geometry/boundsCenter.md +12 -11
  261. package/dist/docs/reference/geometry/boundsFromSize.md +12 -11
  262. package/dist/docs/reference/geometry/boundsSize.md +12 -11
  263. package/dist/docs/reference/geometry/boxAnchor3.md +7 -6
  264. package/dist/docs/reference/geometry/categories/bounds-layout.md +23 -6
  265. package/dist/docs/reference/geometry/categories/curves-paths.md +27 -13
  266. package/dist/docs/reference/geometry/categories/mechanical.md +27 -15
  267. package/dist/docs/reference/geometry/categories/meshes.md +18 -10
  268. package/dist/docs/reference/geometry/categories/pattern-placement.md +11 -9
  269. package/dist/docs/reference/geometry/categories/primitive-options.md +10 -4
  270. package/dist/docs/reference/geometry/categories/profiles-regions.md +21 -13
  271. package/dist/docs/reference/geometry/categories/resolution-errors.md +5 -3
  272. package/dist/docs/reference/geometry/categories/transforms-math.md +25 -16
  273. package/dist/docs/reference/geometry/categories/vector-import.md +15 -9
  274. package/dist/docs/reference/geometry/circleContour.md +5 -1
  275. package/dist/docs/reference/geometry/closeToAxis.md +14 -5
  276. package/dist/docs/reference/geometry/compensateThreadDiameters.md +5 -1
  277. package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +9 -5
  278. package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +9 -5
  279. package/dist/docs/reference/geometry/composeTransform3.md +7 -6
  280. package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +14 -6
  281. package/dist/docs/reference/geometry/computeParallelTransportFrames.md +17 -7
  282. package/dist/docs/reference/geometry/computeTriangleMeshCentroid.md +13 -5
  283. package/dist/docs/reference/geometry/{createTriangleMeshSignature.md → computeTriangleMeshSignature.md} +8 -4
  284. package/dist/docs/reference/geometry/containsBounds.md +10 -9
  285. package/dist/docs/reference/geometry/contourContainsPoint.md +8 -4
  286. package/dist/docs/reference/geometry/cross2.md +6 -5
  287. package/dist/docs/reference/geometry/cross3.md +7 -6
  288. package/dist/docs/reference/geometry/cylinderAnchor3.md +7 -6
  289. package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +5 -1
  290. package/dist/docs/reference/geometry/distance2.md +6 -5
  291. package/dist/docs/reference/geometry/distance3.md +6 -5
  292. package/dist/docs/reference/geometry/distributeAlongPath.md +12 -6
  293. package/dist/docs/reference/geometry/dot2.md +6 -5
  294. package/dist/docs/reference/geometry/dot3.md +6 -5
  295. package/dist/docs/reference/geometry/ellipseContour.md +5 -1
  296. package/dist/docs/reference/geometry/eulerTransform3.md +7 -6
  297. package/dist/docs/reference/geometry/extrudeMesh.md +12 -8
  298. package/dist/docs/reference/geometry/fitBounds.md +10 -9
  299. package/dist/docs/reference/geometry/fitTextLayout.md +13 -5
  300. package/dist/docs/reference/geometry/frameTransform3.md +5 -4
  301. package/dist/docs/reference/geometry/{getMetricClearanceHole.md → getMetricClearanceHoleDiameter.md} +7 -3
  302. package/dist/docs/reference/geometry/getMetricFastenerStandard.md +5 -1
  303. package/dist/docs/reference/geometry/gridPatternTransforms.md +5 -5
  304. package/dist/docs/reference/geometry/heightfieldMesh.md +11 -2
  305. package/dist/docs/reference/geometry/{buildHelicalThreadRidgeMesh.md → helicalThreadRidgeMesh.md} +9 -5
  306. package/dist/docs/reference/geometry/{buildHelicalThreadSolidMesh.md → helicalThreadSolidMesh.md} +9 -5
  307. package/dist/docs/reference/geometry/inverseTransform3.md +6 -5
  308. package/dist/docs/reference/geometry/isGeometryError.md +5 -2
  309. package/dist/docs/reference/geometry/joinTriangleMeshes.md +5 -1
  310. package/dist/docs/reference/geometry/layoutRow.md +11 -7
  311. package/dist/docs/reference/geometry/length2.md +5 -4
  312. package/dist/docs/reference/geometry/length3.md +5 -4
  313. package/dist/docs/reference/geometry/lerp2.md +7 -6
  314. package/dist/docs/reference/geometry/lerp3.md +7 -6
  315. package/dist/docs/reference/geometry/linearPatternTransforms.md +5 -5
  316. package/dist/docs/reference/geometry/loftMesh.md +6 -1
  317. package/dist/docs/reference/geometry/matchProfiles.md +11 -2
  318. package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +5 -1
  319. package/dist/docs/reference/geometry/meshBounds.md +8 -4
  320. package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +7 -3
  321. package/dist/docs/reference/geometry/normalize2.md +10 -6
  322. package/dist/docs/reference/geometry/normalize3.md +10 -6
  323. package/dist/docs/reference/geometry/normalizeContour.md +8 -4
  324. package/dist/docs/reference/geometry/normalizePolygon.md +5 -1
  325. package/dist/docs/reference/geometry/normalizeRegion.md +5 -1
  326. package/dist/docs/reference/geometry/optimizePlanarPatches.md +15 -11
  327. package/dist/docs/reference/geometry/path2.md +54 -0
  328. package/dist/docs/reference/geometry/path3.md +49 -0
  329. package/dist/docs/reference/geometry/pathPatternTransforms.md +13 -9
  330. package/dist/docs/reference/geometry/preflightHeightfield.md +11 -2
  331. package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +13 -4
  332. package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +15 -4
  333. package/dist/docs/reference/geometry/preflightSvgRegion.md +15 -2
  334. package/dist/docs/reference/geometry/preflightThreadedNut.md +14 -4
  335. package/dist/docs/reference/geometry/preflightThreadedRod.md +14 -4
  336. package/dist/docs/reference/geometry/projectOntoPlane3.md +7 -6
  337. package/dist/docs/reference/geometry/radialPatternTransforms.md +4 -20
  338. package/dist/docs/reference/geometry/rectangleContour.md +10 -3
  339. package/dist/docs/reference/geometry/rectangleProfile.md +10 -2
  340. package/dist/docs/reference/geometry/regionArea.md +5 -1
  341. package/dist/docs/reference/geometry/regionBounds.md +8 -4
  342. package/dist/docs/reference/geometry/regularPolygonContour.md +9 -5
  343. package/dist/docs/reference/geometry/resamplePolyline2.md +9 -5
  344. package/dist/docs/reference/geometry/resamplePolyline3.md +9 -5
  345. package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +4 -4
  346. package/dist/docs/reference/geometry/resolveArcSegments.md +4 -4
  347. package/dist/docs/reference/geometry/resolveCircularSegments.md +1 -1
  348. package/dist/docs/reference/geometry/resolveCylindricalGear.md +5 -1
  349. package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +5 -1
  350. package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +7 -3
  351. package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +5 -1
  352. package/dist/docs/reference/geometry/resolveGeometryTolerance.md +1 -1
  353. package/dist/docs/reference/geometry/resolveKnuckleHinge.md +59 -0
  354. package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +5 -1
  355. package/dist/docs/reference/geometry/resolveRackPitch.md +5 -1
  356. package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +8 -4
  357. package/dist/docs/reference/geometry/reverseTriangleMesh.md +5 -1
  358. package/dist/docs/reference/geometry/revolveMesh.md +14 -10
  359. package/dist/docs/reference/geometry/rotate2.md +6 -5
  360. package/dist/docs/reference/geometry/rotationTransform3.md +7 -6
  361. package/dist/docs/reference/geometry/roundClosedPolylinePath.md +12 -6
  362. package/dist/docs/reference/geometry/sampleContour.md +14 -4
  363. package/dist/docs/reference/geometry/sampleCurve2.md +8 -5
  364. package/dist/docs/reference/geometry/sampleCurve3.md +6 -2
  365. package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +5 -1
  366. package/dist/docs/reference/geometry/sampleHelix.md +13 -5
  367. package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +5 -1
  368. package/dist/docs/reference/geometry/sampleRackToothPath.md +8 -4
  369. package/dist/docs/reference/geometry/sampleSideProfile.md +17 -7
  370. package/dist/docs/reference/geometry/sampleTextContours.md +5 -1
  371. package/dist/docs/reference/geometry/sampleThreadHelices.md +6 -2
  372. package/dist/docs/reference/geometry/scale2.md +6 -5
  373. package/dist/docs/reference/geometry/scale3.md +6 -5
  374. package/dist/docs/reference/geometry/scaleTransform3.md +7 -6
  375. package/dist/docs/reference/geometry/signedContourArea.md +5 -1
  376. package/dist/docs/reference/geometry/starContour.md +8 -4
  377. package/dist/docs/reference/geometry/strokeRegionData.md +67 -0
  378. package/dist/docs/reference/geometry/subtract2.md +7 -6
  379. package/dist/docs/reference/geometry/subtract3.md +7 -6
  380. package/dist/docs/reference/geometry/sweepMesh.md +13 -9
  381. package/dist/docs/reference/geometry/{createThreadProfile.md → threadProfile.md} +10 -6
  382. package/dist/docs/reference/geometry/transform2.md +14 -7
  383. package/dist/docs/reference/geometry/transform3.md +16 -7
  384. package/dist/docs/reference/geometry/transformDeterminant3.md +5 -4
  385. package/dist/docs/reference/geometry/transformRegionData.md +5 -1
  386. package/dist/docs/reference/geometry/transformTriangleMesh.md +10 -6
  387. package/dist/docs/reference/geometry/translationTransform3.md +7 -6
  388. package/dist/docs/reference/geometry/triangulateContour.md +5 -1
  389. package/dist/docs/reference/geometry/validateSolidMesh.md +10 -3
  390. package/dist/docs/reference/geometry/validateTransform3.md +6 -5
  391. package/dist/docs/reference/geometry/validateTriangleMesh.md +5 -1
  392. package/dist/docs/reference/geometry/vector2.md +10 -2
  393. package/dist/docs/reference/geometry/vector3.md +10 -2
  394. package/dist/docs/reference/geometry.md +8 -6
  395. package/dist/docs/reference/model/Anchor3.md +6 -5
  396. package/dist/docs/reference/model/AttachOptions.md +11 -5
  397. package/dist/docs/reference/model/Bounds2-type.md +125 -0
  398. package/dist/docs/reference/model/Bounds2Data.md +44 -0
  399. package/dist/docs/reference/model/Bounds2Input.md +19 -0
  400. package/dist/docs/reference/model/Bounds3-type.md +125 -0
  401. package/dist/docs/reference/model/Bounds3Data.md +44 -0
  402. package/dist/docs/reference/model/Bounds3Input.md +19 -0
  403. package/dist/docs/reference/model/BoxEdge.md +1 -1
  404. package/dist/docs/reference/model/BoxEdgeSelection.md +1 -1
  405. package/dist/docs/reference/model/BoxEdgeTreatments.md +1 -1
  406. package/dist/docs/reference/model/BoxOptions.md +10 -10
  407. package/dist/docs/reference/model/ChamferedEdgeTreatment.md +1 -1
  408. package/dist/docs/reference/model/CircleContourOptions.md +1 -1
  409. package/dist/docs/reference/model/CircleOptions.md +3 -3
  410. package/dist/docs/reference/model/CircularPrimitiveOptions.md +1 -1
  411. package/dist/docs/reference/model/Computed.md +6 -1
  412. package/dist/docs/reference/model/ComputedValue.md +5 -1
  413. package/dist/docs/reference/model/Contour.md +6 -4
  414. package/dist/docs/reference/model/CorrespondingComponent.md +1 -1
  415. package/dist/docs/reference/model/CorrespondingContour.md +1 -1
  416. package/dist/docs/reference/model/CorrespondingProfile.md +1 -1
  417. package/dist/docs/reference/model/CorrespondingProfileStation.md +1 -1
  418. package/dist/docs/reference/model/CylinderOptions.md +3 -3
  419. package/dist/docs/reference/model/DiagnosticOptions.md +6 -1
  420. package/dist/docs/reference/model/EdgeTreatment.md +1 -1
  421. package/dist/docs/reference/model/EllipseContourOptions.md +3 -3
  422. package/dist/docs/reference/model/EllipseOptions.md +3 -3
  423. package/dist/docs/reference/model/EndTreatments.md +1 -1
  424. package/dist/docs/reference/model/ExtrudeOptions.md +6 -6
  425. package/dist/docs/reference/model/FinalizedModel.md +20 -10
  426. package/dist/docs/reference/model/FinalizedPart.md +1 -1
  427. package/dist/docs/reference/model/Frame3.md +6 -6
  428. package/dist/docs/reference/model/GenerateCallback.md +5 -1
  429. package/dist/docs/reference/model/GenerateContext.md +5 -1
  430. package/dist/docs/reference/model/GeneratedPart.md +5 -1
  431. package/dist/docs/reference/model/GenerationDiagnostic.md +6 -1
  432. package/dist/docs/reference/model/GenerationError.md +5 -1
  433. package/dist/docs/reference/model/GeometryResolution.md +5 -5
  434. package/dist/docs/reference/model/GeometrySamplingLimits.md +1 -1
  435. package/dist/docs/reference/model/GeometryToleranceOptions.md +1 -1
  436. package/dist/docs/reference/model/GridPatternOptions.md +12 -5
  437. package/dist/docs/reference/model/HeightfieldOptions.md +5 -5
  438. package/dist/docs/reference/model/HelicalThreadRidgeMeshOptions.md +4 -3
  439. package/dist/docs/reference/model/HelicalThreadSolidMeshPreflight.md +3 -2
  440. package/dist/docs/reference/model/HullOptions.md +5 -5
  441. package/dist/docs/reference/model/ImmutableBuffer-type.md +5 -1
  442. package/dist/docs/reference/model/ImmutableTriangleMesh.md +5 -1
  443. package/dist/docs/reference/model/ImplicitOptions.md +6 -6
  444. package/dist/docs/reference/model/InternalThreadCutterOptions.md +5 -4
  445. package/dist/docs/reference/model/KnuckleHinge-type.md +47 -0
  446. package/dist/docs/reference/model/KnuckleHingeBaseSpec.md +77 -0
  447. package/dist/docs/reference/model/KnuckleHingeHalfOptions.md +34 -0
  448. package/dist/docs/reference/model/KnuckleHingeOptions.md +38 -0
  449. package/dist/docs/reference/model/KnuckleHingeSamplingOptions.md +47 -0
  450. package/dist/docs/reference/model/KnuckleHingeSpec.md +18 -0
  451. package/dist/docs/reference/model/KnuckleHingeWeb.md +53 -0
  452. package/dist/docs/reference/model/LinearPatternOptions.md +13 -5
  453. package/dist/docs/reference/model/LoftCorrespondence.md +1 -1
  454. package/dist/docs/reference/model/LoftOptions.md +1 -1
  455. package/dist/docs/reference/model/LoftPlacement.md +1 -1
  456. package/dist/docs/reference/model/LoftStation.md +3 -3
  457. package/dist/docs/reference/model/MatchProfilesOptions.md +1 -1
  458. package/dist/docs/reference/model/ModelProgram.md +5 -1
  459. package/dist/docs/reference/model/ModelingLimits.md +1 -1
  460. package/dist/docs/reference/model/NumericArray.md +8 -1
  461. package/dist/docs/reference/model/PartGeometry.md +5 -1
  462. package/dist/docs/reference/model/PartOptions.md +5 -1
  463. package/dist/docs/reference/model/Path2-type.md +196 -0
  464. package/dist/docs/reference/model/Path2Data.md +50 -0
  465. package/dist/docs/reference/model/Path2Input.md +20 -0
  466. package/dist/docs/reference/model/Path3-type.md +196 -0
  467. package/dist/docs/reference/model/Path3Data.md +50 -0
  468. package/dist/docs/reference/model/Path3Input.md +20 -0
  469. package/dist/docs/reference/model/PathLocation.md +69 -0
  470. package/dist/docs/reference/model/PathNormalGuide.md +6 -5
  471. package/dist/docs/reference/model/PathOptions.md +38 -0
  472. package/dist/docs/reference/model/PathPatternOptions.md +4 -3
  473. package/dist/docs/reference/model/PathResamplingOptions.md +83 -0
  474. package/dist/docs/reference/model/PatternSource.md +2 -1
  475. package/dist/docs/reference/model/Pivot2Options.md +2 -1
  476. package/dist/docs/reference/model/Pivot3Options.md +2 -1
  477. package/dist/docs/reference/model/PlaneOptions.md +3 -3
  478. package/dist/docs/reference/model/PolygonData.md +3 -2
  479. package/dist/docs/reference/model/PolygonOptions.md +8 -8
  480. package/dist/docs/reference/model/{PrimitivePlacement.md → PrimitiveAttachment.md} +8 -7
  481. package/dist/docs/reference/model/{PrimitivePlacementOptions.md → PrimitiveAttachmentOptions.md} +42 -20
  482. package/dist/docs/reference/model/PrintableThreadFit.md +2 -1
  483. package/dist/docs/reference/model/PrintableThreadFitPolicy.md +2 -1
  484. package/dist/docs/reference/model/Profile.md +4 -2
  485. package/dist/docs/reference/model/ProfileComponent2.md +1 -1
  486. package/dist/docs/reference/model/ProfileContour2.md +4 -2
  487. package/dist/docs/reference/model/ProfileSpan2.md +3 -3
  488. package/dist/docs/reference/model/ProfiledEdgeTreatment.md +3 -3
  489. package/dist/docs/reference/model/RadialPatternOptions.md +18 -22
  490. package/dist/docs/reference/model/RadialSizing.md +1 -1
  491. package/dist/docs/reference/model/RadialSizingOptions.md +1 -1
  492. package/dist/docs/reference/model/RectangleContourOptions.md +3 -3
  493. package/dist/docs/reference/model/RectangleCornerTreatment.md +1 -1
  494. package/dist/docs/reference/model/RectangleCornerTreatments.md +1 -1
  495. package/dist/docs/reference/model/RectangleOptions.md +10 -10
  496. package/dist/docs/reference/model/RegionData.md +2 -2
  497. package/dist/docs/reference/model/RegularPolygonOptions.md +5 -5
  498. package/dist/docs/reference/model/RevolveOptions.md +9 -4
  499. package/dist/docs/reference/model/RoundedEdgeTreatment.md +1 -1
  500. package/dist/docs/reference/model/Section.md +20 -12
  501. package/dist/docs/reference/model/SectionHullOptions.md +5 -5
  502. package/dist/docs/reference/model/SectionInspection.md +10 -10
  503. package/dist/docs/reference/model/SectionOffsetJoin.md +1 -1
  504. package/dist/docs/reference/model/SectionOffsetOptions.md +1 -1
  505. package/dist/docs/reference/model/SmoothEdgeTreatment.md +1 -1
  506. package/dist/docs/reference/model/Solid.md +31 -7
  507. package/dist/docs/reference/model/SolidInspection.md +7 -7
  508. package/dist/docs/reference/model/{SolidRayHit.md → SolidSegmentHit.md} +6 -6
  509. package/dist/docs/reference/model/SphereOptions.md +3 -3
  510. package/dist/docs/reference/model/StarOptions.md +10 -10
  511. package/dist/docs/reference/model/{StrokePathCap.md → StrokeCap.md} +3 -3
  512. package/dist/docs/reference/model/{StrokePathJoin.md → StrokeJoin.md} +3 -3
  513. package/dist/docs/reference/model/StrokeOptions.md +6 -6
  514. package/dist/docs/reference/model/SvgOrigin.md +1 -1
  515. package/dist/docs/reference/model/SvgPathSectionOptions.md +1 -1
  516. package/dist/docs/reference/model/SvgSectionOptions.md +1 -1
  517. package/dist/docs/reference/model/SweepOptions.md +6 -6
  518. package/dist/docs/reference/model/SweepOrientation.md +7 -7
  519. package/dist/docs/reference/model/TextSectionOptions.md +1 -1
  520. package/dist/docs/reference/model/ThreadEndStyle.md +2 -1
  521. package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +2 -1
  522. package/dist/docs/reference/model/ThreadHandedness.md +2 -1
  523. package/dist/docs/reference/model/ThreadLeadInEnvelope.md +2 -1
  524. package/dist/docs/reference/model/ThreadLeadInShape.md +2 -1
  525. package/dist/docs/reference/model/ThreadProfile.md +4 -3
  526. package/dist/docs/reference/model/ThreadRidgeOptions.md +2 -1
  527. package/dist/docs/reference/model/ThreadedNutBevel.md +2 -1
  528. package/dist/docs/reference/model/ThreadedNutOptions.md +5 -4
  529. package/dist/docs/reference/model/ThreadedNutPreflight.md +4 -3
  530. package/dist/docs/reference/model/ThreadedNutShape.md +2 -1
  531. package/dist/docs/reference/model/ThreadedRodOptions.md +5 -4
  532. package/dist/docs/reference/model/TorusOptions.md +8 -8
  533. package/dist/docs/reference/model/Transform2-type.md +6 -5
  534. package/dist/docs/reference/model/Transform2Data.md +16 -0
  535. package/dist/docs/reference/model/Transform2Input.md +4 -3
  536. package/dist/docs/reference/model/Transform3-type.md +6 -5
  537. package/dist/docs/reference/model/Transform3Data.md +19 -0
  538. package/dist/docs/reference/model/Transform3Input.md +4 -3
  539. package/dist/docs/reference/model/TriangleMesh.md +1 -1
  540. package/dist/docs/reference/model/TriangleMeshAnalysis.md +4 -4
  541. package/dist/docs/reference/model/TriangleMeshMeasurements.md +3 -3
  542. package/dist/docs/reference/model/TubeOptions.md +8 -8
  543. package/dist/docs/reference/model/Vector2-type.md +6 -5
  544. package/dist/docs/reference/model/{Vector2Tuple.md → Vector2Data.md} +3 -3
  545. package/dist/docs/reference/model/Vector2Input.md +4 -3
  546. package/dist/docs/reference/model/Vector3-type.md +6 -5
  547. package/dist/docs/reference/model/{Vector3Tuple.md → Vector3Data.md} +3 -3
  548. package/dist/docs/reference/model/Vector3Input.md +4 -3
  549. package/dist/docs/reference/model/VectorTextLayout.md +1 -1
  550. package/dist/docs/reference/model/VectorTextMetrics.md +3 -3
  551. package/dist/docs/reference/model/anchor.md +2 -1
  552. package/dist/docs/reference/model/bounds2.md +36 -0
  553. package/dist/docs/reference/model/bounds3.md +36 -0
  554. package/dist/docs/reference/model/box.md +4 -4
  555. package/dist/docs/reference/model/castSegment.md +40 -0
  556. package/dist/docs/reference/model/categories/boolean-operations.md +10 -3
  557. package/dist/docs/reference/model/categories/bounded-surfaces.md +5 -3
  558. package/dist/docs/reference/model/categories/bounds.md +36 -0
  559. package/dist/docs/reference/model/categories/contracts.md +4 -2
  560. package/dist/docs/reference/model/categories/core-values-errors.md +11 -11
  561. package/dist/docs/reference/model/categories/explicit-profiles.md +7 -5
  562. package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +12 -3
  563. package/dist/docs/reference/model/categories/generation.md +11 -2
  564. package/dist/docs/reference/model/categories/hinges.md +38 -0
  565. package/dist/docs/reference/model/categories/inspection.md +12 -6
  566. package/dist/docs/reference/model/categories/mesh-inspection.md +5 -3
  567. package/dist/docs/reference/model/categories/paths.md +41 -0
  568. package/dist/docs/reference/model/categories/primitives.md +10 -4
  569. package/dist/docs/reference/model/categories/resolution.md +4 -2
  570. package/dist/docs/reference/model/categories/sections.md +12 -8
  571. package/dist/docs/reference/model/categories/threads.md +11 -8
  572. package/dist/docs/reference/model/categories/transforms-placement.md +23 -15
  573. package/dist/docs/reference/model/circle.md +1 -1
  574. package/dist/docs/reference/model/components.md +6 -6
  575. package/dist/docs/reference/model/compose.md +1 -1
  576. package/dist/docs/reference/model/cylinder.md +1 -1
  577. package/dist/docs/reference/model/distance.md +1 -1
  578. package/dist/docs/reference/model/ellipse.md +1 -1
  579. package/dist/docs/reference/model/extrude.md +3 -3
  580. package/dist/docs/reference/model/generate.md +5 -1
  581. package/dist/docs/reference/model/gridPattern.md +5 -4
  582. package/dist/docs/reference/model/heightfield.md +5 -2
  583. package/dist/docs/reference/model/hull.md +1 -1
  584. package/dist/docs/reference/model/immutableBuffer.md +5 -1
  585. package/dist/docs/reference/model/immutableMesh.md +5 -1
  586. package/dist/docs/reference/model/implicit.md +3 -3
  587. package/dist/docs/reference/model/inspectSection.md +1 -1
  588. package/dist/docs/reference/model/inspectSolid.md +1 -1
  589. package/dist/docs/reference/model/internalThreadCutter.md +5 -4
  590. package/dist/docs/reference/model/intersect.md +1 -1
  591. package/dist/docs/reference/model/isEmpty.md +1 -1
  592. package/dist/docs/reference/model/knuckleHinge.md +47 -0
  593. package/dist/docs/reference/model/linearPattern.md +5 -4
  594. package/dist/docs/reference/model/loft.md +1 -1
  595. package/dist/docs/reference/model/matchProfiles.md +2 -2
  596. package/dist/docs/reference/model/minkowskiSum.md +1 -1
  597. package/dist/docs/reference/model/path2.md +54 -0
  598. package/dist/docs/reference/model/path3.md +49 -0
  599. package/dist/docs/reference/model/pathPattern.md +14 -12
  600. package/dist/docs/reference/model/polygon.md +8 -5
  601. package/dist/docs/reference/model/preflightInternalThreadCutter.md +9 -3
  602. package/dist/docs/reference/model/preflightThreadedNut.md +9 -3
  603. package/dist/docs/reference/model/preflightThreadedRod.md +9 -3
  604. package/dist/docs/reference/model/radialPattern.md +6 -37
  605. package/dist/docs/reference/model/rectangle.md +7 -4
  606. package/dist/docs/reference/model/regularPolygon.md +1 -1
  607. package/dist/docs/reference/model/revolve.md +5 -4
  608. package/dist/docs/reference/model/solidFromMesh.md +1 -1
  609. package/dist/docs/reference/model/sphere.md +1 -1
  610. package/dist/docs/reference/model/split.md +1 -1
  611. package/dist/docs/reference/model/splitByPlane.md +1 -1
  612. package/dist/docs/reference/model/star.md +4 -4
  613. package/dist/docs/reference/model/stroke.md +8 -8
  614. package/dist/docs/reference/model/svgPathSection.md +1 -1
  615. package/dist/docs/reference/model/svgSection.md +1 -1
  616. package/dist/docs/reference/model/sweep.md +7 -7
  617. package/dist/docs/reference/model/textSection.md +1 -1
  618. package/dist/docs/reference/model/threadRidge.md +3 -2
  619. package/dist/docs/reference/model/threadedNut.md +5 -4
  620. package/dist/docs/reference/model/threadedRod.md +5 -4
  621. package/dist/docs/reference/model/torus.md +3 -3
  622. package/dist/docs/reference/model/transform2.md +14 -7
  623. package/dist/docs/reference/model/transform3.md +16 -7
  624. package/dist/docs/reference/model/tube.md +3 -3
  625. package/dist/docs/reference/model/union.md +1 -1
  626. package/dist/docs/reference/model/vector2.md +10 -2
  627. package/dist/docs/reference/model/vector3.md +10 -2
  628. package/dist/docs/reference/model.md +17 -9
  629. package/dist/docs/reference/text/Bounds2Data.md +34 -0
  630. package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +1 -1
  631. package/dist/docs/reference/text/Vector2Data.md +7 -0
  632. package/dist/docs/reference/text/VectorFont.md +2 -2
  633. package/dist/docs/reference/text/VectorFontOptions.md +1 -1
  634. package/dist/docs/reference/text/VectorTextArcBaseline.md +3 -3
  635. package/dist/docs/reference/text/VectorTextLayout.md +1 -1
  636. package/dist/docs/reference/text/VectorTextLayoutOptions.md +1 -1
  637. package/dist/docs/reference/text/VectorTextMetrics.md +3 -3
  638. package/dist/docs/reference/text/VectorTextOptions.md +1 -1
  639. package/dist/docs/reference/text/categories/font-preparation.md +8 -6
  640. package/dist/docs/reference/text/prepareVectorFont.md +2 -2
  641. package/dist/docs/reference/text.md +4 -2
  642. package/dist/engine/construction-operations.js +31 -14
  643. package/dist/engine/execution.js +39 -8
  644. package/dist/engine/extrusion-finishing.js +1 -1
  645. package/dist/engine/index.js +6 -1
  646. package/dist/engine/inspection-operations.js +13 -11
  647. package/dist/engine/knuckle-hinge-operation.js +85 -0
  648. package/dist/engine/loft-operations.js +35 -14
  649. package/dist/engine/mechanical-operations.js +3 -1
  650. package/dist/engine/model-summary.js +8 -5
  651. package/dist/engine/modeling-context.js +8 -1
  652. package/dist/engine/native/material-components.js +305 -0
  653. package/dist/engine/native/regions.js +2 -1
  654. package/dist/engine/native/threads.js +3 -3
  655. package/dist/engine/native/transforms.js +5 -7
  656. package/dist/engine/operation-environment.js +2 -2
  657. package/dist/engine/pattern-operations.js +1 -1
  658. package/dist/engine/placement.js +2 -2
  659. package/dist/engine/primitive-anchors.js +17 -17
  660. package/dist/engine/primitive-operations.js +1 -1
  661. package/dist/engine/primitive-profiles.js +7 -7
  662. package/dist/engine/profile-mesh.js +7 -7
  663. package/dist/engine/recipe-realization.js +10 -2
  664. package/dist/engine/section-operations.js +33 -8
  665. package/dist/engine/session-snapshot.js +14 -4
  666. package/dist/engine/session.js +10 -5
  667. package/dist/engine/shape-anchors.js +3 -3
  668. package/dist/engine/transform-operations.js +27 -27
  669. package/dist/geometry/anchors.js +40 -33
  670. package/dist/geometry/bounds-value.js +93 -0
  671. package/dist/geometry/bounds.js +10 -8
  672. package/dist/geometry/curves/sampling.js +15 -16
  673. package/dist/geometry/edge-finishing.js +1 -1
  674. package/dist/geometry/errors.js +1 -0
  675. package/dist/geometry/extrusion.js +13 -16
  676. package/dist/geometry/heightfield.js +12 -1
  677. package/dist/geometry/index.js +12 -11
  678. package/dist/geometry/loft/loft-simple-mesh.js +6 -6
  679. package/dist/geometry/loft/loft.js +22 -13
  680. package/dist/geometry/math/immutable-value.js +1 -1
  681. package/dist/geometry/math/vector-value.js +11 -3
  682. package/dist/geometry/math/vector2.js +1 -0
  683. package/dist/geometry/math/vector3.js +1 -0
  684. package/dist/geometry/mechanical/gear-motion.js +3 -3
  685. package/dist/geometry/mechanical/gears.js +38 -38
  686. package/dist/geometry/mechanical/index.js +4 -3
  687. package/dist/geometry/mechanical/knuckle-hinge.js +110 -0
  688. package/dist/geometry/mechanical/standards.js +1 -1
  689. package/dist/geometry/mechanical/thread-helices.js +2 -3
  690. package/dist/geometry/mechanical/thread-mesh-plan.js +11 -7
  691. package/dist/geometry/mechanical/thread-mesh.js +7 -7
  692. package/dist/geometry/mechanical/thread-profiles.js +5 -5
  693. package/dist/geometry/mechanical/thread-solids.js +31 -6
  694. package/dist/geometry/mechanical/thread-surface.js +1 -1
  695. package/dist/geometry/mechanical/threads.js +8 -8
  696. package/dist/geometry/mesh/mesh-centroid.js +1 -0
  697. package/dist/geometry/mesh/mesh-planar.js +25 -27
  698. package/dist/geometry/mesh/mesh-quality.js +5 -5
  699. package/dist/geometry/mesh/mesh-signature.js +13 -13
  700. package/dist/geometry/mesh/mesh-solid.js +8 -7
  701. package/dist/geometry/mesh/mesh.js +4 -15
  702. package/dist/geometry/paths/closest-point.js +8 -19
  703. package/dist/geometry/paths/frames.js +42 -11
  704. package/dist/geometry/paths/helix.js +17 -6
  705. package/dist/geometry/paths/path-value.js +268 -0
  706. package/dist/geometry/paths/planar.js +36 -23
  707. package/dist/geometry/paths/resampling.js +27 -5
  708. package/dist/geometry/patterns/placements.js +100 -27
  709. package/dist/geometry/patterns.js +5 -3
  710. package/dist/geometry/polygon-clipping.js +17 -0
  711. package/dist/geometry/profiles/contour.js +7 -6
  712. package/dist/geometry/profiles/matched.js +5 -4
  713. package/dist/geometry/profiles/profiles.js +4 -4
  714. package/dist/geometry/profiles/rectangle.js +14 -5
  715. package/dist/geometry/profiles/side-profile.js +9 -7
  716. package/dist/geometry/profiles/span-sampling.js +1 -1
  717. package/dist/geometry/resolution.js +34 -34
  718. package/dist/geometry/revolve/revolve-mesh.js +12 -7
  719. package/dist/geometry/stroke-path.js +12 -27
  720. package/dist/geometry/svg/fill.js +7 -21
  721. package/dist/geometry/svg-import.js +31 -25
  722. package/dist/geometry/sweeps/options.js +5 -4
  723. package/dist/geometry/sweeps/orientation.js +5 -5
  724. package/dist/geometry/sweeps/stations.js +10 -10
  725. package/dist/geometry/sweeps/sweep-closed.js +2 -2
  726. package/dist/geometry/sweeps/sweep-mesh.js +9 -3
  727. package/dist/geometry/sweeps/sweep-open.js +1 -1
  728. package/dist/geometry/sweeps/validation.js +4 -7
  729. package/dist/geometry/text-fitting.js +1 -0
  730. package/dist/geometry/transform-geometry.js +7 -14
  731. package/dist/geometry/transform-matrix.js +1 -1
  732. package/dist/geometry/{transform-chain.js → transform-value.js} +24 -15
  733. package/dist/index.js +3 -1
  734. package/dist/model/execution-binding.js +3 -3
  735. package/dist/model/geometry-recipes.js +1 -1
  736. package/dist/model/immutable-generation-data.js +62 -10
  737. package/dist/model/knuckle-hinge.js +1 -0
  738. package/dist/model/operations.js +79 -26
  739. package/dist/model/recipe-declaration.js +21 -7
  740. package/dist/model/shape-handles.js +2 -1
  741. package/dist/text/index.js +15 -9
  742. package/dist/text/vector-text-layout.js +31 -26
  743. package/package.json +1 -1
  744. package/dist/docs/reference/geometry/Bounds2.md +0 -39
  745. package/dist/docs/reference/geometry/Bounds3.md +0 -39
  746. package/dist/docs/reference/geometry/ClosestPointOnPathOptions.md +0 -34
  747. package/dist/docs/reference/geometry/ClosestPointOnPathResult.md +0 -65
  748. package/dist/docs/reference/geometry/Path2.md +0 -14
  749. package/dist/docs/reference/geometry/Path3.md +0 -14
  750. package/dist/docs/reference/geometry/PrimitivePlacement.md +0 -31
  751. package/dist/docs/reference/geometry/PrimitivePlacementOptions.md +0 -83
  752. package/dist/docs/reference/geometry/StrokePathCap.md +0 -7
  753. package/dist/docs/reference/geometry/StrokePathJoin.md +0 -7
  754. package/dist/docs/reference/geometry/Transform2Matrix.md +0 -14
  755. package/dist/docs/reference/geometry/Transform3Matrix.md +0 -17
  756. package/dist/docs/reference/geometry/Vector2Tuple.md +0 -14
  757. package/dist/docs/reference/geometry/Vector3Tuple.md +0 -14
  758. package/dist/docs/reference/geometry/closestPointOnPath.md +0 -110
  759. package/dist/docs/reference/geometry/cumulativePathLengths.md +0 -33
  760. package/dist/docs/reference/geometry/measureTriangleMesh.md +0 -55
  761. package/dist/docs/reference/geometry/pathLength.md +0 -33
  762. package/dist/docs/reference/geometry/strokePathRegion.md +0 -63
  763. package/dist/docs/reference/geometry/transformContour.md +0 -42
  764. package/dist/docs/reference/geometry/transformPath2.md +0 -40
  765. package/dist/docs/reference/geometry/transformPath3.md +0 -33
  766. package/dist/docs/reference/model/Bounds2.md +0 -39
  767. package/dist/docs/reference/model/Bounds3.md +0 -39
  768. package/dist/docs/reference/model/Path2.md +0 -20
  769. package/dist/docs/reference/model/Transform2Matrix.md +0 -15
  770. package/dist/docs/reference/model/Transform3Matrix.md +0 -18
  771. package/dist/docs/reference/model/rayCast.md +0 -40
  772. package/dist/docs/reference/model/toTriangleMesh.md +0 -27
  773. package/dist/docs/reference/text/Bounds2.md +0 -34
  774. package/dist/docs/reference/text/Vector2Tuple.md +0 -7
  775. package/dist/geometry/paths/path.js +0 -32
@@ -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
 
@@ -48,8 +48,7 @@ const turn = sampleCurve2({kind: "arc", center: [0,0], radius: 10, sweepDegrees:
48
48
 
49
49
  ## Remarks
50
50
 
51
- Private spatial scratch math is shared, while only final planar vectors are copied and
52
- frozen. At stationary tangents, outgoing secants are preferred and endpoints use a backward fallback.
51
+ Returned planar points and tangents are copied and frozen. At stationary tangents, outgoing secants are preferred and endpoints use a backward fallback.
53
52
 
54
53
 
55
54
  ## Related APIs
@@ -58,4 +57,8 @@ frozen. At stationary tangents, outgoing secants are preferred and endpoints use
58
57
  - [CurveSamplingOptions](CurveSamplingOptions.md)
59
58
  - [SampledCurve2](SampledCurve2.md)
60
59
 
61
- Package: `@metamesh/modeling@0.14.0`.
60
+ ## Guides
61
+
62
+ - [Path queries and closure-preserving interchange](../../guides/concepts.md#query-paths-and-preserve-closure)
63
+
64
+ Package: `@metamesh/modeling@0.16.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,8 @@ 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
+ ## Guides
62
+
63
+ - [Path queries and closure-preserving interchange](../../guides/concepts.md#query-paths-and-preserve-closure)
64
+
65
+ Package: `@metamesh/modeling@0.16.0`.
@@ -55,4 +55,8 @@ 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
+ ## Guides
59
+
60
+ - [Conservative estimates and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
61
+
62
+ Package: `@metamesh/modeling@0.16.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.
4
4
 
5
5
  `const` **sampleHelix**: (`{
6
6
  turns,
@@ -9,10 +9,14 @@ Creates `segments + 1` points including exact helix endpoints from finite positi
9
9
  segments,
10
10
  limits,
11
11
  axialWeight,
12
- }`: [`SampleHelixOptions`](SampleHelixOptions.md)) => readonly [`Vector3Tuple`](Vector3Tuple.md)[]
12
+ }`: [`SampleHelixOptions`](SampleHelixOptions.md)) => readonly [`Vector3Data`](Vector3Data.md)[]
13
13
 
14
14
 
15
15
 
16
+ Integrated weights must remain finite. The maxPathPoints ceiling defaults to 100000; excessive
17
+ exact counts reject before evaluating axial weights or allocating sample arrays.
18
+ Invalid inputs use GeometryError; exceptions thrown by axialWeight propagate unchanged.
19
+
16
20
  ## Parameters
17
21
 
18
22
 
@@ -30,12 +34,16 @@ Creates `segments + 1` points including exact helix endpoints from finite positi
30
34
 
31
35
  ## Returns
32
36
 
33
- readonly [`Vector3Tuple`](Vector3Tuple.md)[]
37
+ readonly [`Vector3Data`](Vector3Data.md)[]
34
38
 
35
39
 
36
40
  ## Related APIs
37
41
 
38
42
  - [SampleHelixOptions](SampleHelixOptions.md)
39
- - [Vector3Tuple](Vector3Tuple.md)
43
+ - [Vector3Data](Vector3Data.md)
44
+
45
+ ## Guides
46
+
47
+ - [Path queries and closure-preserving interchange](../../guides/concepts.md#query-paths-and-preserve-closure)
40
48
 
41
- Package: `@metamesh/modeling@0.14.0`.
49
+ Package: `@metamesh/modeling@0.16.0`.
@@ -56,4 +56,8 @@ 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
+ ## Guides
60
+
61
+ - [Conservative estimates and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
62
+
63
+ Package: `@metamesh/modeling@0.16.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)\>): readonly [`Vector2Data`](Vector2Data.md)[]
6
6
 
7
7
 
8
8
 
@@ -27,13 +27,17 @@ the owning generator.
27
27
 
28
28
  ## Returns
29
29
 
30
- [`Path2`](Path2.md)
30
+ readonly [`Vector2Data`](Vector2Data.md)[]
31
31
 
32
32
 
33
33
  ## Related APIs
34
34
 
35
35
  - [GeometrySamplingLimits](GeometrySamplingLimits.md)
36
- - [Path2](Path2.md)
37
36
  - [RackPitchSpec](RackPitchSpec.md)
37
+ - [Vector2Data](Vector2Data.md)
38
38
 
39
- Package: `@metamesh/modeling@0.14.0`.
39
+ ## Guides
40
+
41
+ - [Conservative estimates and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
42
+
43
+ Package: `@metamesh/modeling@0.16.0`.
@@ -1,8 +1,8 @@
1
1
  # sampleSideProfile
2
2
 
3
- Samples 1–31 line/cubic segments into a deeply immutable open [radius,height] polyline. Anchors must progress strictly upward; nonnegative-radius cubic controls must have ordered heights between their endpoints. Cubics use de Casteljau subdivision with a conservative control-hull chord-error bound. Lines also obey the optional physical edge-length ceiling. Neither normalized coordinates nor editor metadata are required. Endpoints are retained once; no axis closure, winding normalization, or manufacturing repair is performed.
3
+ Samples 1–31 line/cubic segments into a deeply immutable open [radius,height] polyline.
4
4
 
5
- **sampleSideProfile**(`curve`: [`SideProfileCurve`](SideProfileCurve.md), `options?`: [`SampleSideProfileOptions`](SampleSideProfileOptions.md)): readonly [`Vector2Tuple`](Vector2Tuple.md)[]
5
+ **sampleSideProfile**(`curve`: [`SideProfileCurve`](SideProfileCurve.md), `options?`: [`SampleSideProfileOptions`](SampleSideProfileOptions.md)): readonly [`Vector2Data`](Vector2Data.md)[]
6
6
 
7
7
 
8
8
 
@@ -15,6 +15,12 @@ const side = sampleSideProfile({
15
15
  }, { radiusScale: 12, heightScale: 30 });
16
16
  ```
17
17
 
18
+ Anchors must progress strictly upward; nonnegative-radius cubic controls must have ordered
19
+ heights between their endpoints. Cubics use de Casteljau subdivision with a conservative
20
+ control-hull chord-error bound. Lines also obey the optional physical edge-length ceiling.
21
+ Neither normalized coordinates nor editor metadata are required. Endpoints are retained once;
22
+ no axis closure, winding normalization, or manufacturing repair is performed.
23
+
18
24
  ## Parameters
19
25
 
20
26
  <a id="curve"></a>
@@ -29,7 +35,7 @@ Open outline in millimetres unless the positive scales convert its coordinates.
29
35
 
30
36
  **`options`** · [`SampleSideProfileOptions`](SampleSideProfileOptions.md) · Optional
31
37
 
32
- Physical resolution and output budget; defaults to 4096 vertices.
38
+ Physical resolution and output budget; defaults to min(4096, maxProfilePoints).
33
39
 
34
40
  - [`radiusScale`](SampleSideProfileOptions.md#radiusscale) · `number` · Optional
35
41
 
@@ -43,7 +49,7 @@ Physical resolution and output budget; defaults to 4096 vertices.
43
49
 
44
50
  Shared physical policy, evaluated after scaling; exact circular counts do not affect curves.
45
51
 
46
- - [`maximumVertices`](SampleSideProfileOptions.md#maximumvertices) · `number` · Optional
52
+ - [`maxVertices`](SampleSideProfileOptions.md#maxvertices) · `number` · Optional
47
53
 
48
54
  Maximum output vertex count within maxProfilePoints. Defaults to the smaller of 4096 and that ceiling.
49
55
 
@@ -55,7 +61,7 @@ Physical resolution and output budget; defaults to 4096 vertices.
55
61
 
56
62
  ## Returns
57
63
 
58
- readonly [`Vector2Tuple`](Vector2Tuple.md)[]
64
+ readonly [`Vector2Data`](Vector2Data.md)[]
59
65
 
60
66
  Frozen open polyline in millimetres, ordered from lowest to highest anchor.
61
67
 
@@ -68,6 +74,10 @@ Frozen open polyline in millimetres, ordered from lowest to highest anchor.
68
74
 
69
75
  - [SampleSideProfileOptions](SampleSideProfileOptions.md)
70
76
  - [SideProfileCurve](SideProfileCurve.md)
71
- - [Vector2Tuple](Vector2Tuple.md)
77
+ - [Vector2Data](Vector2Data.md)
78
+
79
+ ## Guides
80
+
81
+ - [Choose a geometry representation](../../guides/concepts.md#geometry-vocabulary)
72
82
 
73
- Package: `@metamesh/modeling@0.14.0`.
83
+ Package: `@metamesh/modeling@0.16.0`.
@@ -50,4 +50,8 @@ 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
+ ## Guides
54
+
55
+ - [SVG preflight work and guarantees](../../guides/concepts.md#check-preflight-guarantees)
56
+
57
+ Package: `@metamesh/modeling@0.16.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,8 @@ 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
+ ## Guides
64
+
65
+ - [Conservative estimates and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
66
+
67
+ Package: `@metamesh/modeling@0.16.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Multiplies a vector by a dimensionless scalar.
4
4
 
5
- `const` **scale2**: (`vector`: [`Vector2Tuple`](Vector2Tuple.md), `scale`: `number`) => [`Vector2Tuple`](Vector2Tuple.md)
5
+ `const` **scale2**: (`vector`: [`Vector2Data`](Vector2Data.md), `scale`: `number`) => [`Vector2Data`](Vector2Data.md)
6
6
 
7
7
 
8
8
 
@@ -10,7 +10,7 @@ Multiplies a vector by a dimensionless scalar.
10
10
 
11
11
  <a id="vector"></a>
12
12
 
13
- **`vector`** · [`Vector2Tuple`](Vector2Tuple.md) · Required
13
+ **`vector`** · [`Vector2Data`](Vector2Data.md) · Required
14
14
 
15
15
 
16
16
 
@@ -22,15 +22,16 @@ Multiplies a vector by a dimensionless scalar.
22
22
 
23
23
  ## Returns
24
24
 
25
- [`Vector2Tuple`](Vector2Tuple.md)
25
+ [`Vector2Data`](Vector2Data.md)
26
26
 
27
27
 
28
28
  ## Related APIs
29
29
 
30
- - [Vector2Tuple](Vector2Tuple.md)
30
+ - [Vector2Data](Vector2Data.md)
31
31
 
32
32
  ## Guides
33
33
 
34
34
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
35
+ - [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
35
36
 
36
- Package: `@metamesh/modeling@0.14.0`.
37
+ Package: `@metamesh/modeling@0.16.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Multiplies a vector by a dimensionless scalar.
4
4
 
5
- `const` **scale3**: (`vector`: [`Vector3Tuple`](Vector3Tuple.md), `scale`: `number`) => [`Vector3Tuple`](Vector3Tuple.md)
5
+ `const` **scale3**: (`vector`: [`Vector3Data`](Vector3Data.md), `scale`: `number`) => [`Vector3Data`](Vector3Data.md)
6
6
 
7
7
 
8
8
 
@@ -16,7 +16,7 @@ scale3([1, 2, 3], 2); // [2, 4, 6]
16
16
 
17
17
  <a id="vector"></a>
18
18
 
19
- **`vector`** · [`Vector3Tuple`](Vector3Tuple.md) · Required
19
+ **`vector`** · [`Vector3Data`](Vector3Data.md) · Required
20
20
 
21
21
 
22
22
 
@@ -28,15 +28,16 @@ scale3([1, 2, 3], 2); // [2, 4, 6]
28
28
 
29
29
  ## Returns
30
30
 
31
- [`Vector3Tuple`](Vector3Tuple.md)
31
+ [`Vector3Data`](Vector3Data.md)
32
32
 
33
33
 
34
34
  ## Related APIs
35
35
 
36
- - [Vector3Tuple](Vector3Tuple.md)
36
+ - [Vector3Data](Vector3Data.md)
37
37
 
38
38
  ## Guides
39
39
 
40
40
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
41
+ - [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
41
42
 
42
- Package: `@metamesh/modeling@0.14.0`.
43
+ Package: `@metamesh/modeling@0.16.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Creates an immutable axis-aligned scale transform.
4
4
 
5
- **scaleTransform3**(`factors`: [`Vector3Tuple`](Vector3Tuple.md)): [`Transform3Matrix`](Transform3Matrix.md)
5
+ **scaleTransform3**(`factors`: [`Vector3Data`](Vector3Data.md)): [`Transform3Data`](Transform3Data.md)
6
6
 
7
7
 
8
8
 
@@ -13,7 +13,7 @@ they collapse volume and cannot be inverted.
13
13
 
14
14
  <a id="factors"></a>
15
15
 
16
- **`factors`** · [`Vector3Tuple`](Vector3Tuple.md) · Required
16
+ **`factors`** · [`Vector3Data`](Vector3Data.md) · Required
17
17
 
18
18
  Finite, non-zero XYZ scale factors.
19
19
 
@@ -21,18 +21,19 @@ Finite, non-zero XYZ scale factors.
21
21
 
22
22
  ## Returns
23
23
 
24
- [`Transform3Matrix`](Transform3Matrix.md)
24
+ [`Transform3Data`](Transform3Data.md)
25
25
 
26
26
  A frozen row-major transform.
27
27
 
28
28
 
29
29
  ## Related APIs
30
30
 
31
- - [Transform3Matrix](Transform3Matrix.md)
32
- - [Vector3Tuple](Vector3Tuple.md)
31
+ - [Transform3Data](Transform3Data.md)
32
+ - [Vector3Data](Vector3Data.md)
33
33
 
34
34
  ## Guides
35
35
 
36
36
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
37
+ - [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
37
38
 
38
- Package: `@metamesh/modeling@0.14.0`.
39
+ Package: `@metamesh/modeling@0.16.0`.
@@ -23,4 +23,8 @@ 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
+ ## Guides
27
+
28
+ - [Choose a geometry representation](../../guides/concepts.md#geometry-vocabulary)
29
+
30
+ Package: `@metamesh/modeling@0.16.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Creates a centered CCW alternating-radius star within the selected profile sampling ceiling.
4
4
 
5
- `const` **starContour**: (`outerRadius`: `number`, `points`: `number`, `innerRadius?`: `number`, `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>) => readonly [`Vector2Tuple`](Vector2Tuple.md)[]
5
+ `const` **starContour**: (`outerRadius`: `number`, `points`: `number`, `innerRadius?`: `number`, `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>) => readonly [`Vector2Data`](Vector2Data.md)[]
6
6
 
7
7
 
8
8
 
@@ -40,12 +40,16 @@ starContour(12, 5, 6);
40
40
 
41
41
  ## Returns
42
42
 
43
- readonly [`Vector2Tuple`](Vector2Tuple.md)[]
43
+ readonly [`Vector2Data`](Vector2Data.md)[]
44
44
 
45
45
 
46
46
  ## Related APIs
47
47
 
48
48
  - [GeometrySamplingLimits](GeometrySamplingLimits.md)
49
- - [Vector2Tuple](Vector2Tuple.md)
49
+ - [Vector2Data](Vector2Data.md)
50
50
 
51
- Package: `@metamesh/modeling@0.14.0`.
51
+ ## Guides
52
+
53
+ - [Choose a geometry representation](../../guides/concepts.md#geometry-vocabulary)
54
+
55
+ Package: `@metamesh/modeling@0.16.0`.
@@ -0,0 +1,67 @@
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
+ ## Guides
64
+
65
+ - [SVG preflight work and guarantees](../../guides/concepts.md#check-preflight-guarantees)
66
+
67
+ Package: `@metamesh/modeling@0.16.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Subtracts `b` from `a` component-wise.
4
4
 
5
- `const` **subtract2**: (`a`: [`Vector2Tuple`](Vector2Tuple.md), `b`: [`Vector2Tuple`](Vector2Tuple.md)) => [`Vector2Tuple`](Vector2Tuple.md)
5
+ `const` **subtract2**: (`a`: [`Vector2Data`](Vector2Data.md), `b`: [`Vector2Data`](Vector2Data.md)) => [`Vector2Data`](Vector2Data.md)
6
6
 
7
7
 
8
8
 
@@ -10,27 +10,28 @@ Subtracts `b` from `a` component-wise.
10
10
 
11
11
  <a id="a"></a>
12
12
 
13
- **`a`** · [`Vector2Tuple`](Vector2Tuple.md) · Required
13
+ **`a`** · [`Vector2Data`](Vector2Data.md) · Required
14
14
 
15
15
 
16
16
 
17
17
  <a id="b"></a>
18
18
 
19
- **`b`** · [`Vector2Tuple`](Vector2Tuple.md) · Required
19
+ **`b`** · [`Vector2Data`](Vector2Data.md) · Required
20
20
 
21
21
 
22
22
 
23
23
  ## Returns
24
24
 
25
- [`Vector2Tuple`](Vector2Tuple.md)
25
+ [`Vector2Data`](Vector2Data.md)
26
26
 
27
27
 
28
28
  ## Related APIs
29
29
 
30
- - [Vector2Tuple](Vector2Tuple.md)
30
+ - [Vector2Data](Vector2Data.md)
31
31
 
32
32
  ## Guides
33
33
 
34
34
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
35
+ - [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
35
36
 
36
- Package: `@metamesh/modeling@0.14.0`.
37
+ Package: `@metamesh/modeling@0.16.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Subtracts `b` from `a`.
4
4
 
5
- `const` **subtract3**: (`a`: [`Vector3Tuple`](Vector3Tuple.md), `b`: [`Vector3Tuple`](Vector3Tuple.md)) => [`Vector3Tuple`](Vector3Tuple.md)
5
+ `const` **subtract3**: (`a`: [`Vector3Data`](Vector3Data.md), `b`: [`Vector3Data`](Vector3Data.md)) => [`Vector3Data`](Vector3Data.md)
6
6
 
7
7
 
8
8
 
@@ -16,27 +16,28 @@ subtract3([4, 5, 6], [1, 2, 3]); // [3, 3, 3]
16
16
 
17
17
  <a id="a"></a>
18
18
 
19
- **`a`** · [`Vector3Tuple`](Vector3Tuple.md) · Required
19
+ **`a`** · [`Vector3Data`](Vector3Data.md) · Required
20
20
 
21
21
 
22
22
 
23
23
  <a id="b"></a>
24
24
 
25
- **`b`** · [`Vector3Tuple`](Vector3Tuple.md) · Required
25
+ **`b`** · [`Vector3Data`](Vector3Data.md) · Required
26
26
 
27
27
 
28
28
 
29
29
  ## Returns
30
30
 
31
- [`Vector3Tuple`](Vector3Tuple.md)
31
+ [`Vector3Data`](Vector3Data.md)
32
32
 
33
33
 
34
34
  ## Related APIs
35
35
 
36
- - [Vector3Tuple](Vector3Tuple.md)
36
+ - [Vector3Data](Vector3Data.md)
37
37
 
38
38
  ## Guides
39
39
 
40
40
  - [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
41
+ - [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
41
42
 
42
- Package: `@metamesh/modeling@0.14.0`.
43
+ Package: `@metamesh/modeling@0.16.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Sweeps one explicitly ordered point loop, with caps or a geometrically matching closed seam.
4
4
 
5
- **sweepMesh**(`profile`: [`Contour`](Contour.md), `path`: readonly [`Vector3Tuple`](Vector3Tuple.md)[], `options?`: [`SweepOptions`](SweepOptions.md)): [`TriangleMesh`](TriangleMesh.md)
5
+ **sweepMesh**(`profile`: [`Path2Input`](Path2Input.md), `path`: [`Path3Input`](Path3Input.md), `options?`: [`SweepOptions`](SweepOptions.md)): [`TriangleMesh`](TriangleMesh.md)
6
6
 
7
7
 
8
8
 
@@ -19,13 +19,13 @@ sweepMesh(profile, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
19
19
 
20
20
  <a id="profile"></a>
21
21
 
22
- **`profile`** · [`Contour`](Contour.md) · Required
22
+ **`profile`** · [`Path2Input`](Path2Input.md) · Required
23
23
 
24
24
 
25
25
 
26
26
  <a id="path"></a>
27
27
 
28
- **`path`** · readonly [`Vector3Tuple`](Vector3Tuple.md)[] · Required
28
+ **`path`** · [`Path3Input`](Path3Input.md) · Required
29
29
 
30
30
 
31
31
 
@@ -35,7 +35,7 @@ sweepMesh(profile, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
35
35
 
36
36
  - [`closed`](SweepOptions.md#closed) · `boolean` · Optional
37
37
 
38
- Join the path's last station to its first. Open paths retain watertight end caps.
38
+ Raw point closure defaults to false; a Path3 supplies its closure and rejects conflicts.
39
39
 
40
40
  - [`limits`](SweepOptions.md#limits) · `Partial`\<[`ModelingLimits`](ModelingLimits.md)\> · Optional
41
41
 
@@ -49,7 +49,7 @@ sweepMesh(profile, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
49
49
 
50
50
  Physical sampling of nonzero twist; inserted stations retain authored station controls.
51
51
 
52
- - [`twistDegrees`](SweepOptions.md#twistdegrees) · `number` · Optional
52
+ - [`twist`](SweepOptions.md#twist) · `number` · Optional
53
53
 
54
54
  Total additional profile rotation in degrees, with progression selected by twistBy.
55
55
 
@@ -57,7 +57,7 @@ sweepMesh(profile, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
57
57
 
58
58
  Twist advances by physical path length (default), or normalized authored station position, including a closed seam gap.
59
59
 
60
- - [`scale`](SweepOptions.md#scale) · `number` \| [`Vector2Tuple`](Vector2Tuple.md) \| readonly [`Vector2Tuple`](Vector2Tuple.md)[] · Optional
60
+ - [`scale`](SweepOptions.md#scale) · `number` \| [`Vector2Input`](Vector2Input.md) \| readonly [`Vector2Input`](Vector2Input.md)[] · Optional
61
61
 
62
62
  Positive uniform/XY scale, or one XY pair per path station. Defaults to one.
63
63
 
@@ -74,9 +74,13 @@ sweepMesh(profile, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
74
74
 
75
75
  ## Related APIs
76
76
 
77
- - [Contour](Contour.md)
77
+ - [Path2Input](Path2Input.md)
78
+ - [Path3Input](Path3Input.md)
78
79
  - [SweepOptions](SweepOptions.md)
79
80
  - [TriangleMesh](TriangleMesh.md)
80
- - [Vector3Tuple](Vector3Tuple.md)
81
81
 
82
- Package: `@metamesh/modeling@0.14.0`.
82
+ ## Guides
83
+
84
+ - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
85
+
86
+ Package: `@metamesh/modeling@0.16.0`.
@@ -1,15 +1,15 @@
1
- # createThreadProfile
1
+ # threadProfile
2
2
 
3
3
  Creates a periodic thread profile for the shaft-locked helical mesher.
4
4
 
5
- **createThreadProfile**(`spec`: [`ThreadProfileSpec`](ThreadProfileSpec.md)): [`ThreadProfile`](ThreadProfile.md)
5
+ **threadProfile**(`spec`: [`ThreadProfileSpec`](ThreadProfileSpec.md)): [`ThreadProfile`](ThreadProfile-type.md)
6
6
 
7
7
 
8
8
 
9
9
  ## Example: Printable triangular thread profile
10
10
 
11
11
  ```ts
12
- createThreadProfile({ kind: "triangular", pitch: 1.75 });
12
+ threadProfile({ kind: "triangular", pitch: 1.75 });
13
13
  ```
14
14
 
15
15
  The open path spans one pitch. Radial zero is the major envelope; negative
@@ -26,12 +26,16 @@ non-decreasing, periodic at their endpoints, and reach radial zero.
26
26
 
27
27
  ## Returns
28
28
 
29
- [`ThreadProfile`](ThreadProfile.md)
29
+ [`ThreadProfile`](ThreadProfile-type.md)
30
30
 
31
31
 
32
32
  ## Related APIs
33
33
 
34
- - [ThreadProfile](ThreadProfile.md)
34
+ - [ThreadProfile](ThreadProfile-type.md)
35
35
  - [ThreadProfileSpec](ThreadProfileSpec.md)
36
36
 
37
- Package: `@metamesh/modeling@0.14.0`.
37
+ ## Guides
38
+
39
+ - [Conservative estimates and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
40
+
41
+ Package: `@metamesh/modeling@0.16.0`.