@metamesh/modeling 0.16.0 → 0.18.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 (881) hide show
  1. package/CHANGELOG.md +193 -0
  2. package/README.md +137 -142
  3. package/dist/api/engine.d.ts +128 -65
  4. package/dist/api/geometry.d.ts +327 -483
  5. package/dist/api/index.d.ts +537 -415
  6. package/dist/api/mesh.d.ts +460 -0
  7. package/dist/api/text.d.ts +1 -1
  8. package/dist/docs/guides/concepts.md +130 -87
  9. package/dist/docs/guides/fonts.md +11 -10
  10. package/dist/docs/guides/fundamentals.md +30 -29
  11. package/dist/docs/guides/generation.md +44 -31
  12. package/dist/docs/guides/hosting.md +122 -46
  13. package/dist/docs/guides/recipes.md +94 -56
  14. package/dist/docs/guides/standalone-model.md +8 -7
  15. package/dist/docs/manifest.json +2941 -968
  16. package/dist/docs/reference/engine/Export3mfOptions.md +19 -2
  17. package/dist/docs/reference/engine/ExportMeshPart.md +5 -39
  18. package/dist/docs/reference/engine/GenerationOptions.md +4 -3
  19. package/dist/docs/reference/engine/GeometryResource.md +13 -13
  20. package/dist/docs/reference/engine/ModelDependencies.md +1 -1
  21. package/dist/docs/reference/engine/ModelEngine.md +26 -23
  22. package/dist/docs/reference/engine/ModelEngineOptions.md +6 -1
  23. package/dist/docs/reference/engine/ModelPart.md +108 -0
  24. package/dist/docs/reference/engine/ModelResult.md +175 -0
  25. package/dist/docs/reference/engine/ModelRunArguments.md +28 -0
  26. package/dist/docs/reference/engine/ModelRunOptions.md +104 -0
  27. package/dist/docs/reference/engine/ModelSession.md +16 -16
  28. package/dist/docs/reference/engine/ModelingLimits.md +121 -0
  29. package/dist/docs/reference/engine/SessionOptions.md +13 -8
  30. package/dist/docs/reference/engine/categories/host-lifecycle.md +25 -15
  31. package/dist/docs/reference/engine/checkModel.md +43 -0
  32. package/dist/docs/reference/engine/createModelEngine.md +4 -13
  33. package/dist/docs/reference/engine/defaultModelingLimits.md +8 -1
  34. package/dist/docs/reference/engine/export3mf.md +55 -0
  35. package/dist/docs/reference/engine/modelingWasmUrl.md +1 -1
  36. package/dist/docs/reference/engine.md +8 -15
  37. package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +1 -1
  38. package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +1 -1
  39. package/dist/docs/reference/geometry/Anchor3-type.md +1 -1
  40. package/dist/docs/reference/geometry/ArcCurve2.md +1 -1
  41. package/dist/docs/reference/geometry/ArcCurve3.md +1 -1
  42. package/dist/docs/reference/geometry/AttachOptions.md +1 -1
  43. package/dist/docs/reference/geometry/AxisAngleRotation3.md +1 -1
  44. package/dist/docs/reference/geometry/Bevel.md +18 -0
  45. package/dist/docs/reference/geometry/BevelSize.md +14 -0
  46. package/dist/docs/reference/geometry/Bounds2-type.md +1 -1
  47. package/dist/docs/reference/geometry/Bounds2Data.md +1 -1
  48. package/dist/docs/reference/geometry/Bounds2Input.md +1 -1
  49. package/dist/docs/reference/geometry/Bounds2Options.md +112 -0
  50. package/dist/docs/reference/geometry/Bounds3-type.md +1 -1
  51. package/dist/docs/reference/geometry/Bounds3Data.md +1 -1
  52. package/dist/docs/reference/geometry/Bounds3Input.md +1 -1
  53. package/dist/docs/reference/geometry/Bounds3Options.md +112 -0
  54. package/dist/docs/reference/geometry/BoundsFit2.md +1 -1
  55. package/dist/docs/reference/geometry/BoundsFit3.md +1 -1
  56. package/dist/docs/reference/geometry/BoundsFitOptions.md +1 -1
  57. package/dist/docs/reference/geometry/BoxAnchorFace.md +1 -1
  58. package/dist/docs/reference/geometry/BoxAnchorOptions.md +4 -4
  59. package/dist/docs/reference/geometry/BoxEdge.md +1 -1
  60. package/dist/docs/reference/geometry/BoxEdgeSelection.md +1 -1
  61. package/dist/docs/reference/geometry/BoxEdgeTreatments.md +1 -1
  62. package/dist/docs/reference/geometry/BoxOptions.md +3 -3
  63. package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +1 -1
  64. package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +1 -1
  65. package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +1 -1
  66. package/dist/docs/reference/geometry/CircleContourOptions.md +1 -1
  67. package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +1 -3
  68. package/dist/docs/reference/geometry/CircularResolutionOptions.md +1 -1
  69. package/dist/docs/reference/geometry/CircularSampling.md +41 -0
  70. package/dist/docs/reference/geometry/CircularSamplingOptions.md +14 -0
  71. package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +1 -1
  72. package/dist/docs/reference/geometry/ClearanceHoleFit.md +1 -1
  73. package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +1 -1
  74. package/dist/docs/reference/geometry/Contour.md +1 -1
  75. package/dist/docs/reference/geometry/ContourCurve.md +1 -1
  76. package/dist/docs/reference/geometry/ContourPoint.md +1 -1
  77. package/dist/docs/reference/geometry/ContourSegment.md +1 -1
  78. package/dist/docs/reference/geometry/CorrespondingComponent.md +1 -1
  79. package/dist/docs/reference/geometry/CorrespondingContour.md +1 -1
  80. package/dist/docs/reference/geometry/CorrespondingProfile.md +1 -1
  81. package/dist/docs/reference/geometry/CorrespondingProfileStation.md +1 -1
  82. package/dist/docs/reference/geometry/CubicBezierCurve2.md +1 -1
  83. package/dist/docs/reference/geometry/CubicBezierCurve3.md +1 -1
  84. package/dist/docs/reference/geometry/Curve2.md +1 -1
  85. package/dist/docs/reference/geometry/Curve3.md +1 -1
  86. package/dist/docs/reference/geometry/CurveSamplingOptions.md +1 -1
  87. package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +1 -1
  88. package/dist/docs/reference/geometry/CylinderAnchorFace.md +1 -1
  89. package/dist/docs/reference/geometry/CylinderAnchorOptions.md +3 -3
  90. package/dist/docs/reference/geometry/CylinderOptions.md +1 -1
  91. package/dist/docs/reference/geometry/CylindricalGearDimensions.md +1 -1
  92. package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +1 -1
  93. package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +1 -1
  94. package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +1 -1
  95. package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +1 -1
  96. package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +1 -1
  97. package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +1 -1
  98. package/dist/docs/reference/geometry/CylindricalGearSpec.md +1 -1
  99. package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +1 -1
  100. package/dist/docs/reference/geometry/EdgeTreatment.md +1 -1
  101. package/dist/docs/reference/geometry/EllipseContourOptions.md +3 -3
  102. package/dist/docs/reference/geometry/EndTreatments.md +1 -1
  103. package/dist/docs/reference/geometry/ExtrudeMeshOptions.md +130 -0
  104. package/dist/docs/reference/geometry/ExtrudeOptions.md +17 -9
  105. package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +3 -3
  106. package/dist/docs/reference/geometry/FittedTextLayout.md +1 -1
  107. package/dist/docs/reference/geometry/Frame3.md +1 -1
  108. package/dist/docs/reference/geometry/GeometryError.md +1 -1
  109. package/dist/docs/reference/geometry/GeometryErrorCode.md +1 -1
  110. package/dist/docs/reference/geometry/GeometryErrorContext.md +1 -1
  111. package/dist/docs/reference/geometry/GeometryResolution.md +1 -1
  112. package/dist/docs/reference/geometry/GeometrySamplingLimits.md +1 -1
  113. package/dist/docs/reference/geometry/GeometryToleranceOptions.md +1 -1
  114. package/dist/docs/reference/geometry/GridPatternOptions.md +1 -1
  115. package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +1 -1
  116. package/dist/docs/reference/geometry/HeightfieldOptions.md +3 -2
  117. package/dist/docs/reference/geometry/HeightfieldPreflight.md +1 -1
  118. package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +1 -1
  119. package/dist/docs/reference/geometry/ImmutableBuffer-type.md +108 -0
  120. package/dist/docs/reference/geometry/ImmutableTriangleMesh.md +43 -0
  121. package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +52 -83
  122. package/dist/docs/reference/geometry/KnuckleHingeBaseSpec.md +1 -1
  123. package/dist/docs/reference/geometry/KnuckleHingeDimensions.md +1 -1
  124. package/dist/docs/reference/geometry/KnuckleHingeInterval.md +1 -1
  125. package/dist/docs/reference/geometry/KnuckleHingeSamplingOptions.md +1 -1
  126. package/dist/docs/reference/geometry/KnuckleHingeSpec.md +1 -1
  127. package/dist/docs/reference/geometry/LineCurve2.md +1 -1
  128. package/dist/docs/reference/geometry/LineCurve3.md +1 -1
  129. package/dist/docs/reference/geometry/LinearPatternOptions.md +1 -1
  130. package/dist/docs/reference/geometry/LoftCorrespondence.md +1 -1
  131. package/dist/docs/reference/geometry/LoftMeshStation.md +1 -1
  132. package/dist/docs/reference/geometry/LoftOptions.md +3 -3
  133. package/dist/docs/reference/geometry/LoftPlacement.md +1 -1
  134. package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +1 -1
  135. package/dist/docs/reference/geometry/MatchProfilesOptions.md +1 -1
  136. package/dist/docs/reference/geometry/MetricFastenerSize.md +1 -1
  137. package/dist/docs/reference/geometry/MetricFastenerStandard.md +1 -1
  138. package/dist/docs/reference/geometry/MetricHexNutDimensions.md +1 -1
  139. package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +1 -1
  140. package/dist/docs/reference/geometry/ModelingLimits.md +1 -1
  141. package/dist/docs/reference/geometry/NumericArray.md +14 -0
  142. package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +1 -1
  143. package/dist/docs/reference/geometry/Path2-type.md +1 -1
  144. package/dist/docs/reference/geometry/Path2Data.md +1 -1
  145. package/dist/docs/reference/geometry/Path2Input.md +1 -1
  146. package/dist/docs/reference/geometry/Path3-type.md +1 -1
  147. package/dist/docs/reference/geometry/Path3Data.md +1 -1
  148. package/dist/docs/reference/geometry/Path3Input.md +1 -1
  149. package/dist/docs/reference/geometry/PathFrame.md +1 -1
  150. package/dist/docs/reference/geometry/PathLocation.md +1 -1
  151. package/dist/docs/reference/geometry/PathNormalGuide.md +1 -1
  152. package/dist/docs/reference/geometry/PathOptions.md +1 -1
  153. package/dist/docs/reference/geometry/PathPatternOptions.md +1 -1
  154. package/dist/docs/reference/geometry/PathPlacement.md +1 -1
  155. package/dist/docs/reference/geometry/PathResamplingOptions.md +1 -1
  156. package/dist/docs/reference/geometry/Pivot2Options.md +1 -1
  157. package/dist/docs/reference/geometry/Pivot3Options.md +1 -1
  158. package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +1 -1
  159. package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +1 -1
  160. package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +1 -1
  161. package/dist/docs/reference/geometry/PlanarPatchQuality.md +1 -1
  162. package/dist/docs/reference/geometry/PolygonData.md +1 -1
  163. package/dist/docs/reference/geometry/PolylineResamplingOptions.md +1 -1
  164. package/dist/docs/reference/geometry/PrimitiveAttachment.md +1 -3
  165. package/dist/docs/reference/geometry/PrimitiveAttachmentOptions.md +1 -1
  166. package/dist/docs/reference/geometry/PrintableThreadFit.md +1 -1
  167. package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +1 -1
  168. package/dist/docs/reference/geometry/Profile.md +1 -1
  169. package/dist/docs/reference/geometry/ProfileComponent2.md +1 -1
  170. package/dist/docs/reference/geometry/ProfileContour2.md +1 -1
  171. package/dist/docs/reference/geometry/ProfileSpan2.md +1 -1
  172. package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +1 -1
  173. package/dist/docs/reference/geometry/RackPitchDimensions.md +1 -1
  174. package/dist/docs/reference/geometry/RackPitchSpec.md +1 -1
  175. package/dist/docs/reference/geometry/RadialPatternOptions.md +1 -1
  176. package/dist/docs/reference/geometry/RadialSizing.md +1 -1
  177. package/dist/docs/reference/geometry/RadialSizingOptions.md +1 -1
  178. package/dist/docs/reference/geometry/RectangleContourOptions.md +3 -3
  179. package/dist/docs/reference/geometry/RectangleCornerTreatment.md +1 -1
  180. package/dist/docs/reference/geometry/RectangleCornerTreatments.md +1 -1
  181. package/dist/docs/reference/geometry/RectangleProfileOptions.md +3 -3
  182. package/dist/docs/reference/geometry/RegionData.md +1 -1
  183. package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +1 -1
  184. package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +1 -1
  185. package/dist/docs/reference/geometry/RevolveOptions.md +2 -2
  186. package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +1 -1
  187. package/dist/docs/reference/geometry/RowLayoutOptions.md +1 -1
  188. package/dist/docs/reference/geometry/SampleContourOptions.md +1 -1
  189. package/dist/docs/reference/geometry/SampleHelixOptions.md +1 -1
  190. package/dist/docs/reference/geometry/SampleSideProfileOptions.md +1 -1
  191. package/dist/docs/reference/geometry/SampledCurve2.md +1 -1
  192. package/dist/docs/reference/geometry/SampledCurve3.md +1 -1
  193. package/dist/docs/reference/geometry/SampledThreadHelices.md +1 -1
  194. package/dist/docs/reference/geometry/SideProfileCurve.md +1 -1
  195. package/dist/docs/reference/geometry/SideProfilePoint.md +1 -1
  196. package/dist/docs/reference/geometry/SideProfileSegment.md +1 -1
  197. package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +1 -1
  198. package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +1 -1
  199. package/dist/docs/reference/geometry/SphereOptions.md +1 -1
  200. package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +1 -1
  201. package/dist/docs/reference/geometry/StarContourOptions.md +74 -0
  202. package/dist/docs/reference/geometry/StrokeCap.md +1 -1
  203. package/dist/docs/reference/geometry/StrokeJoin.md +1 -1
  204. package/dist/docs/reference/geometry/StrokeOptions.md +1 -1
  205. package/dist/docs/reference/geometry/SvgImportOptions.md +16 -1
  206. package/dist/docs/reference/geometry/SvgRegionPreflight.md +16 -1
  207. package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +1 -1
  208. package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +1 -1
  209. package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +1 -1
  210. package/dist/docs/reference/geometry/SweepOptions.md +1 -1
  211. package/dist/docs/reference/geometry/SweepOrientation.md +1 -1
  212. package/dist/docs/reference/geometry/ThreadBevelOptions.md +7 -30
  213. package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +1 -1
  214. package/dist/docs/reference/geometry/ThreadCompensationOptions.md +1 -1
  215. package/dist/docs/reference/geometry/ThreadEndStyle.md +1 -1
  216. package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +1 -1
  217. package/dist/docs/reference/geometry/ThreadHandedness.md +1 -1
  218. package/dist/docs/reference/geometry/ThreadHelixOptions.md +1 -1
  219. package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +1 -1
  220. package/dist/docs/reference/geometry/ThreadLeadInShape.md +1 -1
  221. package/dist/docs/reference/geometry/ThreadProfile-type.md +2 -2
  222. package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +1 -1
  223. package/dist/docs/reference/geometry/ThreadProfileSpec.md +1 -1
  224. package/dist/docs/reference/geometry/{HelicalThreadRidgeMeshOptions.md → ThreadRidgeOptions.md} +4 -4
  225. package/dist/docs/reference/geometry/ThreadRole.md +1 -1
  226. package/dist/docs/reference/geometry/{HelicalThreadSolidMeshOptions.md → ThreadSolidOptions.md} +18 -65
  227. package/dist/docs/reference/geometry/{HelicalThreadSolidMeshPreflight.md → ThreadSolidPreflight.md} +2 -2
  228. package/dist/docs/reference/geometry/ThreadedNutOptions.md +75 -86
  229. package/dist/docs/reference/geometry/ThreadedNutPreflight.md +18 -6
  230. package/dist/docs/reference/geometry/ThreadedNutShape.md +1 -1
  231. package/dist/docs/reference/geometry/ThreadedRodOptions.md +52 -83
  232. package/dist/docs/reference/geometry/TorusOptions.md +1 -1
  233. package/dist/docs/reference/geometry/Transform2-type.md +1 -1
  234. package/dist/docs/reference/geometry/Transform2Data.md +1 -1
  235. package/dist/docs/reference/geometry/Transform2Input.md +1 -1
  236. package/dist/docs/reference/geometry/Transform3-type.md +1 -1
  237. package/dist/docs/reference/geometry/Transform3Data.md +1 -1
  238. package/dist/docs/reference/geometry/Transform3Input.md +1 -1
  239. package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +1 -1
  240. package/dist/docs/reference/geometry/TriangleMesh.md +3 -8
  241. package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +10 -4
  242. package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +2 -2
  243. package/dist/docs/reference/geometry/TriangleMeshInput.md +19 -0
  244. package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +1 -1
  245. package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +1 -1
  246. package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +1 -1
  247. package/dist/docs/reference/geometry/TriangleMeshSignature.md +3 -3
  248. package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +1 -1
  249. package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +1 -1
  250. package/dist/docs/reference/geometry/TriangleMeshTopologyAnalysis.md +131 -0
  251. package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +1 -1
  252. package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +1 -1
  253. package/dist/docs/reference/geometry/TubeOptions.md +10 -86
  254. package/dist/docs/reference/geometry/Vector2-type.md +1 -1
  255. package/dist/docs/reference/geometry/Vector2Data.md +1 -1
  256. package/dist/docs/reference/geometry/Vector2Input.md +1 -1
  257. package/dist/docs/reference/geometry/Vector3-type.md +1 -1
  258. package/dist/docs/reference/geometry/Vector3Data.md +1 -1
  259. package/dist/docs/reference/geometry/Vector3Input.md +1 -1
  260. package/dist/docs/reference/geometry/VectorTextArcBaseline.md +1 -1
  261. package/dist/docs/reference/geometry/VectorTextLayout.md +1 -1
  262. package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +1 -1
  263. package/dist/docs/reference/geometry/VectorTextMetrics.md +1 -1
  264. package/dist/docs/reference/geometry/VectorTextOptions.md +1 -1
  265. package/dist/docs/reference/geometry/add2.md +1 -1
  266. package/dist/docs/reference/geometry/add3.md +1 -1
  267. package/dist/docs/reference/geometry/anchor3.md +1 -1
  268. package/dist/docs/reference/geometry/anchorFrame3.md +1 -1
  269. package/dist/docs/reference/geometry/applyTransformDirection3.md +1 -1
  270. package/dist/docs/reference/geometry/applyTransformPoint3.md +1 -1
  271. package/dist/docs/reference/geometry/attachmentTransform3.md +1 -1
  272. package/dist/docs/reference/geometry/bounds2.md +7 -6
  273. package/dist/docs/reference/geometry/bounds3.md +7 -6
  274. package/dist/docs/reference/geometry/boundsCenter.md +1 -1
  275. package/dist/docs/reference/geometry/boundsSize.md +1 -1
  276. package/dist/docs/reference/geometry/boxAnchor3.md +3 -3
  277. package/dist/docs/reference/geometry/categories/bounds-layout.md +8 -9
  278. package/dist/docs/reference/geometry/categories/curves-paths.md +2 -2
  279. package/dist/docs/reference/geometry/categories/mechanical.md +8 -10
  280. package/dist/docs/reference/geometry/categories/meshes.md +19 -32
  281. package/dist/docs/reference/geometry/categories/pattern-placement.md +2 -2
  282. package/dist/docs/reference/geometry/categories/primitive-options.md +3 -3
  283. package/dist/docs/reference/geometry/categories/profiles-regions.md +5 -4
  284. package/dist/docs/reference/geometry/categories/resolution-errors.md +7 -4
  285. package/dist/docs/reference/geometry/categories/transforms-math.md +3 -2
  286. package/dist/docs/reference/geometry/categories/vector-import.md +3 -3
  287. package/dist/docs/reference/geometry/circleContour.md +1 -1
  288. package/dist/docs/reference/geometry/closeToAxis.md +1 -1
  289. package/dist/docs/reference/geometry/compensateThreadDiameters.md +1 -1
  290. package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +1 -1
  291. package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +1 -1
  292. package/dist/docs/reference/geometry/composeTransform3.md +1 -1
  293. package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +1 -1
  294. package/dist/docs/reference/geometry/computeParallelTransportFrames.md +1 -1
  295. package/dist/docs/reference/geometry/contourContainsPoint.md +1 -1
  296. package/dist/docs/reference/geometry/cross2.md +1 -1
  297. package/dist/docs/reference/geometry/cross3.md +1 -1
  298. package/dist/docs/reference/geometry/cylinderAnchor3.md +2 -2
  299. package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +1 -1
  300. package/dist/docs/reference/geometry/distance2.md +1 -1
  301. package/dist/docs/reference/geometry/distance3.md +1 -1
  302. package/dist/docs/reference/geometry/distributeAlongPath.md +1 -1
  303. package/dist/docs/reference/geometry/dot2.md +1 -1
  304. package/dist/docs/reference/geometry/dot3.md +1 -1
  305. package/dist/docs/reference/geometry/ellipseContour.md +1 -1
  306. package/dist/docs/reference/geometry/eulerTransform3.md +1 -1
  307. package/dist/docs/reference/geometry/fitBounds.md +1 -1
  308. package/dist/docs/reference/geometry/fitTextLayout.md +1 -1
  309. package/dist/docs/reference/geometry/frameTransform3.md +1 -1
  310. package/dist/docs/reference/geometry/getMetricClearanceHoleDiameter.md +1 -1
  311. package/dist/docs/reference/geometry/getMetricFastenerStandard.md +1 -1
  312. package/dist/docs/reference/geometry/gridPatternTransforms.md +1 -1
  313. package/dist/docs/reference/geometry/immutableBuffer.md +49 -0
  314. package/dist/docs/reference/geometry/inverseTransform3.md +1 -1
  315. package/dist/docs/reference/geometry/isGeometryError.md +1 -1
  316. package/dist/docs/reference/geometry/layoutRow.md +1 -1
  317. package/dist/docs/reference/geometry/length2.md +1 -1
  318. package/dist/docs/reference/geometry/length3.md +1 -1
  319. package/dist/docs/reference/geometry/lerp2.md +1 -1
  320. package/dist/docs/reference/geometry/lerp3.md +1 -1
  321. package/dist/docs/reference/geometry/linearPatternTransforms.md +1 -1
  322. package/dist/docs/reference/geometry/matchProfiles.md +1 -1
  323. package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +1 -1
  324. package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +1 -1
  325. package/dist/docs/reference/geometry/normalize2.md +1 -1
  326. package/dist/docs/reference/geometry/normalize3.md +1 -1
  327. package/dist/docs/reference/geometry/normalizeContour.md +1 -1
  328. package/dist/docs/reference/geometry/normalizePolygon.md +1 -1
  329. package/dist/docs/reference/geometry/normalizeRegion.md +1 -1
  330. package/dist/docs/reference/geometry/path2.md +1 -1
  331. package/dist/docs/reference/geometry/path3.md +1 -1
  332. package/dist/docs/reference/geometry/pathPatternTransforms.md +1 -1
  333. package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +18 -25
  334. package/dist/docs/reference/geometry/preflightSvgRegion.md +12 -3
  335. package/dist/docs/reference/geometry/preflightThreadedNut.md +24 -26
  336. package/dist/docs/reference/geometry/preflightThreadedRod.md +18 -25
  337. package/dist/docs/reference/geometry/projectOntoPlane3.md +1 -1
  338. package/dist/docs/reference/geometry/radialPatternTransforms.md +1 -1
  339. package/dist/docs/reference/geometry/rectangleContour.md +10 -5
  340. package/dist/docs/reference/geometry/rectangleProfile.md +2 -2
  341. package/dist/docs/reference/geometry/regionArea.md +1 -1
  342. package/dist/docs/reference/geometry/regionBounds.md +1 -1
  343. package/dist/docs/reference/geometry/regularPolygonContour.md +2 -2
  344. package/dist/docs/reference/geometry/resamplePolyline2.md +1 -1
  345. package/dist/docs/reference/geometry/resamplePolyline3.md +1 -1
  346. package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +1 -1
  347. package/dist/docs/reference/geometry/resolveArcSegments.md +1 -1
  348. package/dist/docs/reference/geometry/resolveCircularSampling.md +40 -0
  349. package/dist/docs/reference/geometry/resolveCircularSegments.md +1 -1
  350. package/dist/docs/reference/geometry/resolveCylindricalGear.md +1 -1
  351. package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +1 -1
  352. package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +1 -1
  353. package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +1 -1
  354. package/dist/docs/reference/geometry/resolveGeometryTolerance.md +1 -1
  355. package/dist/docs/reference/geometry/resolveKnuckleHinge.md +1 -1
  356. package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +1 -1
  357. package/dist/docs/reference/geometry/resolveRackPitch.md +1 -1
  358. package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +1 -1
  359. package/dist/docs/reference/geometry/rotate2.md +1 -1
  360. package/dist/docs/reference/geometry/rotationTransform3.md +1 -1
  361. package/dist/docs/reference/geometry/roundClosedPolylinePath.md +1 -1
  362. package/dist/docs/reference/geometry/sampleContour.md +1 -1
  363. package/dist/docs/reference/geometry/sampleCurve2.md +1 -1
  364. package/dist/docs/reference/geometry/sampleCurve3.md +1 -1
  365. package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +1 -1
  366. package/dist/docs/reference/geometry/sampleHelix.md +1 -1
  367. package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +1 -1
  368. package/dist/docs/reference/geometry/sampleRackToothPath.md +1 -1
  369. package/dist/docs/reference/geometry/sampleSideProfile.md +1 -1
  370. package/dist/docs/reference/geometry/sampleTextContours.md +1 -1
  371. package/dist/docs/reference/geometry/sampleThreadHelices.md +1 -1
  372. package/dist/docs/reference/geometry/scale2.md +1 -1
  373. package/dist/docs/reference/geometry/scale3.md +1 -1
  374. package/dist/docs/reference/geometry/scaleTransform3.md +1 -1
  375. package/dist/docs/reference/geometry/signedContourArea.md +1 -1
  376. package/dist/docs/reference/geometry/starContour.md +17 -15
  377. package/dist/docs/reference/geometry/strokeRegionData.md +1 -1
  378. package/dist/docs/reference/geometry/subtract2.md +1 -1
  379. package/dist/docs/reference/geometry/subtract3.md +1 -1
  380. package/dist/docs/reference/geometry/threadProfile.md +1 -1
  381. package/dist/docs/reference/geometry/transform2.md +1 -1
  382. package/dist/docs/reference/geometry/transform3.md +1 -1
  383. package/dist/docs/reference/geometry/transformDeterminant3.md +1 -1
  384. package/dist/docs/reference/geometry/transformRegionData.md +1 -1
  385. package/dist/docs/reference/geometry/translationTransform3.md +1 -1
  386. package/dist/docs/reference/geometry/triangulateContour.md +1 -1
  387. package/dist/docs/reference/geometry/validateRigidTransform3.md +35 -0
  388. package/dist/docs/reference/geometry/validateTransform3.md +1 -1
  389. package/dist/docs/reference/geometry/vector2.md +1 -1
  390. package/dist/docs/reference/geometry/vector3.md +1 -1
  391. package/dist/docs/reference/geometry.md +9 -9
  392. package/dist/docs/reference/mesh/AcmeThreadProfileSpec.md +79 -0
  393. package/dist/docs/reference/mesh/Bevel.md +18 -0
  394. package/dist/docs/reference/mesh/BevelSize.md +14 -0
  395. package/dist/docs/reference/mesh/Bounds2.md +125 -0
  396. package/dist/docs/reference/mesh/Bounds2Data.md +43 -0
  397. package/dist/docs/reference/mesh/Bounds2Input.md +19 -0
  398. package/dist/docs/reference/mesh/Bounds3.md +125 -0
  399. package/dist/docs/reference/mesh/Bounds3Data.md +43 -0
  400. package/dist/docs/reference/mesh/Bounds3Input.md +19 -0
  401. package/dist/docs/reference/mesh/ButtressPressureFlankSide.md +14 -0
  402. package/dist/docs/reference/mesh/ButtressThreadProfileSpec.md +97 -0
  403. package/dist/docs/reference/mesh/CircularPrimitiveOptions.md +60 -0
  404. package/dist/docs/reference/mesh/CurveSamplingOptions.md +69 -0
  405. package/dist/docs/reference/mesh/CustomThreadProfileSpec.md +77 -0
  406. package/dist/docs/reference/mesh/ExtrudeMeshOptions.md +129 -0
  407. package/dist/docs/reference/mesh/ExtrusionSamplingOptions.md +81 -0
  408. package/dist/docs/reference/mesh/Frame3.md +62 -0
  409. package/dist/docs/reference/mesh/GeometryResolution.md +74 -0
  410. package/dist/docs/reference/mesh/GeometrySamplingLimits.md +66 -0
  411. package/dist/docs/reference/mesh/GeometryToleranceOptions.md +46 -0
  412. package/dist/docs/reference/mesh/HeightfieldMeshLimits.md +18 -0
  413. package/dist/docs/reference/mesh/HeightfieldOptions.md +72 -0
  414. package/dist/docs/reference/mesh/HeightfieldPreflight.md +58 -0
  415. package/dist/docs/reference/mesh/ImmutableBuffer.md +108 -0
  416. package/dist/docs/reference/mesh/ImmutableTriangleMesh.md +43 -0
  417. package/dist/docs/reference/mesh/LoftCorrespondence.md +24 -0
  418. package/dist/docs/reference/mesh/LoftMeshStation.md +31 -0
  419. package/dist/docs/reference/mesh/LoftOptions.md +88 -0
  420. package/dist/docs/reference/mesh/LoftPlacement.md +70 -0
  421. package/dist/docs/reference/mesh/ModelingLimits.md +130 -0
  422. package/dist/docs/reference/mesh/NumericArray.md +14 -0
  423. package/dist/docs/reference/mesh/Path2.md +197 -0
  424. package/dist/docs/reference/mesh/Path2Data.md +50 -0
  425. package/dist/docs/reference/mesh/Path2Input.md +20 -0
  426. package/dist/docs/reference/mesh/Path3.md +197 -0
  427. package/dist/docs/reference/mesh/Path3Data.md +50 -0
  428. package/dist/docs/reference/mesh/Path3Input.md +20 -0
  429. package/dist/docs/reference/mesh/PathLocation.md +69 -0
  430. package/dist/docs/reference/mesh/PathNormalGuide.md +43 -0
  431. package/dist/docs/reference/mesh/PathResamplingOptions.md +84 -0
  432. package/dist/docs/reference/mesh/Pivot2Options.md +26 -0
  433. package/dist/docs/reference/mesh/Pivot3Options.md +26 -0
  434. package/dist/docs/reference/mesh/PlanarMeshOptimizationFallbackReason.md +14 -0
  435. package/dist/docs/reference/mesh/PlanarMeshOptimizationOptions.md +160 -0
  436. package/dist/docs/reference/mesh/PlanarMeshOptimizationResult.md +124 -0
  437. package/dist/docs/reference/mesh/PlanarPatchQuality.md +194 -0
  438. package/dist/docs/reference/mesh/RevolveOptions.md +91 -0
  439. package/dist/docs/reference/mesh/SolidMeshValidationOptions.md +38 -0
  440. package/dist/docs/reference/mesh/SquareThreadProfileSpec.md +79 -0
  441. package/dist/docs/reference/mesh/SweepOptions.md +113 -0
  442. package/dist/docs/reference/mesh/SweepOrientation.md +113 -0
  443. package/dist/docs/reference/mesh/ThreadEndStyle.md +14 -0
  444. package/dist/docs/reference/mesh/ThreadEndTreatmentOptions.md +117 -0
  445. package/dist/docs/reference/mesh/ThreadHandedness.md +14 -0
  446. package/dist/docs/reference/mesh/ThreadLeadInEnvelope.md +14 -0
  447. package/dist/docs/reference/mesh/ThreadLeadInShape.md +14 -0
  448. package/dist/docs/reference/mesh/ThreadProfile.md +86 -0
  449. package/dist/docs/reference/mesh/ThreadProfileBaseSpec.md +53 -0
  450. package/dist/docs/reference/mesh/ThreadProfileSpec.md +23 -0
  451. package/dist/docs/reference/{model/HelicalThreadRidgeMeshOptions.md → mesh/ThreadRidgeOptions.md} +14 -10
  452. package/dist/docs/reference/mesh/ThreadSolidOptions.md +222 -0
  453. package/dist/docs/reference/mesh/ThreadSolidPreflight.md +58 -0
  454. package/dist/docs/reference/mesh/Transform2.md +256 -0
  455. package/dist/docs/reference/mesh/Transform2Data.md +14 -0
  456. package/dist/docs/reference/mesh/Transform2Input.md +19 -0
  457. package/dist/docs/reference/mesh/Transform3.md +296 -0
  458. package/dist/docs/reference/mesh/Transform3Data.md +17 -0
  459. package/dist/docs/reference/mesh/Transform3Input.md +19 -0
  460. package/dist/docs/reference/mesh/TrapezoidalThreadProfileSpec.md +96 -0
  461. package/dist/docs/reference/mesh/TriangleMesh.md +34 -0
  462. package/dist/docs/reference/mesh/TriangleMeshAnalysis.md +129 -0
  463. package/dist/docs/reference/mesh/TriangleMeshAnalysisOptions.md +79 -0
  464. package/dist/docs/reference/mesh/TriangleMeshInput.md +19 -0
  465. package/dist/docs/reference/mesh/TriangleMeshMeasurements.md +79 -0
  466. package/dist/docs/reference/mesh/TriangleMeshQualityOptions.md +43 -0
  467. package/dist/docs/reference/mesh/TriangleMeshQualityReport.md +194 -0
  468. package/dist/docs/reference/mesh/TriangleMeshSignature.md +111 -0
  469. package/dist/docs/reference/mesh/TriangleMeshSignatureOptions.md +46 -0
  470. package/dist/docs/reference/mesh/TriangleMeshSignatureTolerances.md +34 -0
  471. package/dist/docs/reference/mesh/TriangleMeshTopologyAnalysis.md +131 -0
  472. package/dist/docs/reference/mesh/TriangleMeshValidationOptions.md +55 -0
  473. package/dist/docs/reference/mesh/TriangularThreadProfileSpec.md +95 -0
  474. package/dist/docs/reference/mesh/Vector2.md +270 -0
  475. package/dist/docs/reference/mesh/Vector2Data.md +14 -0
  476. package/dist/docs/reference/mesh/Vector2Input.md +19 -0
  477. package/dist/docs/reference/mesh/Vector3.md +282 -0
  478. package/dist/docs/reference/mesh/Vector3Data.md +14 -0
  479. package/dist/docs/reference/mesh/Vector3Input.md +19 -0
  480. package/dist/docs/reference/mesh/analyze.md +96 -0
  481. package/dist/docs/reference/{geometry/analyzeTriangleMeshQuality.md → mesh/analyzeQuality.md} +9 -9
  482. package/dist/docs/reference/mesh/bounds.md +39 -0
  483. package/dist/docs/reference/mesh/categories/operations.md +147 -0
  484. package/dist/docs/reference/{geometry/computeTriangleMeshCentroid.md → mesh/centroid.md} +7 -7
  485. package/dist/docs/reference/mesh/extrude.md +73 -0
  486. package/dist/docs/reference/{geometry/heightfieldMesh.md → mesh/heightfield.md} +7 -8
  487. package/dist/docs/reference/mesh/immutable.md +47 -0
  488. package/dist/docs/reference/{geometry/joinTriangleMeshes.md → mesh/join.md} +7 -6
  489. package/dist/docs/reference/{geometry/loftMesh.md → mesh/loft.md} +15 -15
  490. package/dist/docs/reference/mesh/optimizePlanarPatches.md +96 -0
  491. package/dist/docs/reference/{geometry → mesh}/preflightHeightfield.md +5 -6
  492. package/dist/docs/reference/mesh/preflightThreadSolid.md +90 -0
  493. package/dist/docs/reference/{geometry/reverseTriangleMesh.md → mesh/reverse.md} +6 -5
  494. package/dist/docs/reference/{geometry/revolveMesh.md → mesh/revolve.md} +13 -13
  495. package/dist/docs/reference/{geometry/computeTriangleMeshSignature.md → mesh/signature.md} +11 -11
  496. package/dist/docs/reference/mesh/sweep.md +86 -0
  497. package/dist/docs/reference/mesh/threadRidge.md +72 -0
  498. package/dist/docs/reference/mesh/threadSolid.md +90 -0
  499. package/dist/docs/reference/{geometry/transformTriangleMesh.md → mesh/transform.md} +7 -6
  500. package/dist/docs/reference/{geometry/validateTriangleMesh.md → mesh/validate.md} +17 -11
  501. package/dist/docs/reference/{geometry/validateSolidMesh.md → mesh/validateSolid.md} +15 -9
  502. package/dist/docs/reference/mesh.md +21 -0
  503. package/dist/docs/reference/model/AcmeThreadProfileSpec.md +80 -0
  504. package/dist/docs/reference/model/Anchor3.md +1 -1
  505. package/dist/docs/reference/model/AttachOptions.md +1 -1
  506. package/dist/docs/reference/model/Bevel.md +19 -0
  507. package/dist/docs/reference/model/{ThreadedNutBevel.md → BevelSize.md} +4 -4
  508. package/dist/docs/reference/model/Bounds2-type.md +1 -1
  509. package/dist/docs/reference/model/Bounds2Data.md +1 -1
  510. package/dist/docs/reference/model/Bounds2Input.md +1 -1
  511. package/dist/docs/reference/model/Bounds2Options.md +110 -0
  512. package/dist/docs/reference/model/Bounds3-type.md +1 -1
  513. package/dist/docs/reference/model/Bounds3Data.md +1 -1
  514. package/dist/docs/reference/model/Bounds3Input.md +1 -1
  515. package/dist/docs/reference/model/Bounds3Options.md +110 -0
  516. package/dist/docs/reference/model/BoxEdge.md +1 -1
  517. package/dist/docs/reference/model/BoxEdgeSelection.md +1 -1
  518. package/dist/docs/reference/model/BoxEdgeTreatments.md +1 -1
  519. package/dist/docs/reference/model/BoxOptions.md +3 -3
  520. package/dist/docs/reference/model/ButtressPressureFlankSide.md +15 -0
  521. package/dist/docs/reference/model/ButtressThreadProfileSpec.md +98 -0
  522. package/dist/docs/reference/model/ChamferedEdgeTreatment.md +1 -1
  523. package/dist/docs/reference/model/CircleContourOptions.md +1 -1
  524. package/dist/docs/reference/model/CircleOptions.md +1 -1
  525. package/dist/docs/reference/model/CircularPrimitiveOptions.md +1 -3
  526. package/dist/docs/reference/model/Computed.md +7 -3
  527. package/dist/docs/reference/model/ComputedValue.md +1 -1
  528. package/dist/docs/reference/model/Contour.md +1 -1
  529. package/dist/docs/reference/model/CorrespondingComponent.md +1 -1
  530. package/dist/docs/reference/model/CorrespondingContour.md +1 -1
  531. package/dist/docs/reference/model/CorrespondingProfile.md +1 -1
  532. package/dist/docs/reference/model/CorrespondingProfileStation.md +1 -1
  533. package/dist/docs/reference/model/CurveSamplingOptions.md +68 -0
  534. package/dist/docs/reference/model/CustomThreadProfileSpec.md +78 -0
  535. package/dist/docs/reference/model/CylinderOptions.md +1 -1
  536. package/dist/docs/reference/model/DiagnosticOptions.md +15 -1
  537. package/dist/docs/reference/model/EdgeTreatment.md +1 -1
  538. package/dist/docs/reference/model/EllipseContourOptions.md +3 -3
  539. package/dist/docs/reference/model/EllipseOptions.md +1 -1
  540. package/dist/docs/reference/model/EndTreatments.md +1 -1
  541. package/dist/docs/reference/model/ExtrudeMeshOptions.md +133 -0
  542. package/dist/docs/reference/model/ExtrudeOptions.md +17 -8
  543. package/dist/docs/reference/model/ExtrusionSamplingOptions.md +84 -0
  544. package/dist/docs/reference/model/Frame3.md +1 -1
  545. package/dist/docs/reference/model/GenerateCallback.md +5 -5
  546. package/dist/docs/reference/model/GenerateContext.md +15 -63
  547. package/dist/docs/reference/model/GenerationDiagnostic.md +13 -1
  548. package/dist/docs/reference/model/GenerationError.md +1 -1
  549. package/dist/docs/reference/model/GeometryError.md +102 -0
  550. package/dist/docs/reference/model/GeometryErrorCode.md +15 -0
  551. package/dist/docs/reference/model/GeometryErrorContext.md +35 -0
  552. package/dist/docs/reference/model/GeometryResolution.md +1 -1
  553. package/dist/docs/reference/model/GeometrySamplingLimits.md +1 -1
  554. package/dist/docs/reference/model/GeometryToleranceOptions.md +1 -1
  555. package/dist/docs/reference/model/GridPatternOptions.md +1 -1
  556. package/dist/docs/reference/model/HeightfieldOptions.md +3 -2
  557. package/dist/docs/reference/model/HoleCutterOptions.md +77 -0
  558. package/dist/docs/reference/model/HoleCutterOverrun.md +35 -0
  559. package/dist/docs/reference/model/HoleCutterRecess.md +87 -0
  560. package/dist/docs/reference/model/HullOptions.md +1 -1
  561. package/dist/docs/reference/model/ImmutableBuffer-type.md +27 -3
  562. package/dist/docs/reference/model/ImmutableTriangleMesh.md +8 -3
  563. package/dist/docs/reference/model/ImmutableValue.md +20 -0
  564. package/dist/docs/reference/model/ImplicitOptions.md +1 -1
  565. package/dist/docs/reference/model/InternalThreadCutterOptions.md +54 -84
  566. package/dist/docs/reference/model/KnuckleHinge-type.md +1 -1
  567. package/dist/docs/reference/model/KnuckleHingeBaseSpec.md +1 -1
  568. package/dist/docs/reference/model/KnuckleHingeHalfOptions.md +9 -5
  569. package/dist/docs/reference/model/KnuckleHingeOptions.md +3 -3
  570. package/dist/docs/reference/model/KnuckleHingeSamplingOptions.md +1 -1
  571. package/dist/docs/reference/model/KnuckleHingeSpec.md +1 -1
  572. package/dist/docs/reference/model/KnuckleHingeWeb.md +2 -2
  573. package/dist/docs/reference/model/LinearPatternOptions.md +1 -1
  574. package/dist/docs/reference/model/LoftCorrespondence.md +1 -1
  575. package/dist/docs/reference/model/LoftOptions.md +3 -3
  576. package/dist/docs/reference/model/LoftPlacement.md +1 -1
  577. package/dist/docs/reference/model/LoftStation.md +1 -1
  578. package/dist/docs/reference/model/MatchProfilesOptions.md +1 -1
  579. package/dist/docs/reference/model/ModelProgram.md +2 -2
  580. package/dist/docs/reference/model/ModelingLimits.md +1 -1
  581. package/dist/docs/reference/model/NumericArray.md +1 -1
  582. package/dist/docs/reference/model/{GeneratedPart.md → PartDeclaration.md} +8 -23
  583. package/dist/docs/reference/model/PartGeometry.md +2 -2
  584. package/dist/docs/reference/model/PartOptions.md +8 -19
  585. package/dist/docs/reference/model/Path2-type.md +1 -1
  586. package/dist/docs/reference/model/Path2Data.md +1 -1
  587. package/dist/docs/reference/model/Path2Input.md +1 -1
  588. package/dist/docs/reference/model/Path3-type.md +1 -1
  589. package/dist/docs/reference/model/Path3Data.md +1 -1
  590. package/dist/docs/reference/model/Path3Input.md +1 -1
  591. package/dist/docs/reference/model/PathLocation.md +1 -1
  592. package/dist/docs/reference/model/PathNormalGuide.md +1 -1
  593. package/dist/docs/reference/model/PathOptions.md +1 -1
  594. package/dist/docs/reference/model/PathPatternOptions.md +1 -1
  595. package/dist/docs/reference/model/PathResamplingOptions.md +7 -6
  596. package/dist/docs/reference/model/PatternSource.md +1 -1
  597. package/dist/docs/reference/model/Pivot2Options.md +1 -1
  598. package/dist/docs/reference/model/Pivot3Options.md +1 -1
  599. package/dist/docs/reference/model/PlaneOptions.md +1 -1
  600. package/dist/docs/reference/model/PolygonData.md +1 -1
  601. package/dist/docs/reference/model/PolygonOptions.md +1 -1
  602. package/dist/docs/reference/model/PrimitiveAttachment.md +1 -3
  603. package/dist/docs/reference/model/PrimitiveAttachmentOptions.md +1 -1
  604. package/dist/docs/reference/model/PrintableThreadFit.md +1 -1
  605. package/dist/docs/reference/model/PrintableThreadFitPolicy.md +1 -1
  606. package/dist/docs/reference/model/Profile.md +1 -1
  607. package/dist/docs/reference/model/ProfileComponent2.md +1 -1
  608. package/dist/docs/reference/model/ProfileContour2.md +1 -1
  609. package/dist/docs/reference/model/ProfileSpan2.md +1 -1
  610. package/dist/docs/reference/model/ProfiledEdgeTreatment.md +1 -1
  611. package/dist/docs/reference/model/RadialPatternOptions.md +1 -1
  612. package/dist/docs/reference/model/RadialSizing.md +1 -1
  613. package/dist/docs/reference/model/RadialSizingOptions.md +1 -1
  614. package/dist/docs/reference/model/RectangleContourOptions.md +3 -3
  615. package/dist/docs/reference/model/RectangleCornerTreatment.md +1 -1
  616. package/dist/docs/reference/model/RectangleCornerTreatments.md +1 -1
  617. package/dist/docs/reference/model/RectangleOptions.md +3 -3
  618. package/dist/docs/reference/model/RegionData.md +1 -1
  619. package/dist/docs/reference/model/RegularPolygonOptions.md +1 -1
  620. package/dist/docs/reference/model/RevolveOptions.md +2 -2
  621. package/dist/docs/reference/model/RoundedEdgeTreatment.md +1 -1
  622. package/dist/docs/reference/model/Section.md +131 -6
  623. package/dist/docs/reference/model/SectionHullOptions.md +1 -1
  624. package/dist/docs/reference/model/SectionInspection.md +5 -17
  625. package/dist/docs/reference/model/SectionOffsetJoin.md +1 -1
  626. package/dist/docs/reference/model/SectionOffsetOptions.md +1 -1
  627. package/dist/docs/reference/model/SmoothEdgeTreatment.md +1 -1
  628. package/dist/docs/reference/model/Solid.md +245 -8
  629. package/dist/docs/reference/model/SolidInspection.md +5 -17
  630. package/dist/docs/reference/model/SolidSegmentHit.md +5 -1
  631. package/dist/docs/reference/model/SphereOptions.md +1 -1
  632. package/dist/docs/reference/model/SquareThreadProfileSpec.md +80 -0
  633. package/dist/docs/reference/model/StarContourOptions.md +81 -0
  634. package/dist/docs/reference/model/StarOptions.md +38 -16
  635. package/dist/docs/reference/model/StrokeCap.md +1 -1
  636. package/dist/docs/reference/model/StrokeJoin.md +1 -1
  637. package/dist/docs/reference/model/StrokeOptions.md +1 -1
  638. package/dist/docs/reference/model/SvgOrigin.md +1 -1
  639. package/dist/docs/reference/model/SvgPathSectionOptions.md +1 -1
  640. package/dist/docs/reference/model/SvgSectionOptions.md +14 -1
  641. package/dist/docs/reference/model/SweepOptions.md +1 -1
  642. package/dist/docs/reference/model/SweepOrientation.md +1 -1
  643. package/dist/docs/reference/model/TextSectionOptions.md +1 -1
  644. package/dist/docs/reference/model/ThreadBevelOptions.md +35 -0
  645. package/dist/docs/reference/model/ThreadEndStyle.md +1 -1
  646. package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +1 -1
  647. package/dist/docs/reference/model/ThreadHandedness.md +1 -1
  648. package/dist/docs/reference/model/ThreadLeadInEnvelope.md +1 -1
  649. package/dist/docs/reference/model/ThreadLeadInShape.md +1 -1
  650. package/dist/docs/reference/model/ThreadProfile.md +2 -2
  651. package/dist/docs/reference/model/ThreadProfileBaseSpec.md +54 -0
  652. package/dist/docs/reference/model/ThreadProfileSpec.md +24 -0
  653. package/dist/docs/reference/model/ThreadRidgeOptions.md +126 -4
  654. package/dist/docs/reference/model/{HelicalThreadSolidMeshPreflight.md → ThreadSolidPreflight.md} +2 -2
  655. package/dist/docs/reference/model/ThreadedNutOptions.md +75 -86
  656. package/dist/docs/reference/model/ThreadedNutPreflight.md +18 -6
  657. package/dist/docs/reference/model/ThreadedNutShape.md +1 -1
  658. package/dist/docs/reference/model/ThreadedRodOptions.md +54 -84
  659. package/dist/docs/reference/model/TorusOptions.md +1 -1
  660. package/dist/docs/reference/model/Transform2-type.md +1 -1
  661. package/dist/docs/reference/model/Transform2Data.md +1 -1
  662. package/dist/docs/reference/model/Transform2Input.md +1 -1
  663. package/dist/docs/reference/model/Transform3-type.md +1 -1
  664. package/dist/docs/reference/model/Transform3Data.md +1 -1
  665. package/dist/docs/reference/model/Transform3Input.md +1 -1
  666. package/dist/docs/reference/model/TrapezoidalThreadProfileSpec.md +97 -0
  667. package/dist/docs/reference/model/TriangleMesh.md +3 -11
  668. package/dist/docs/reference/model/TriangleMeshAnalysis.md +10 -4
  669. package/dist/docs/reference/model/TriangleMeshMeasurements.md +1 -1
  670. package/dist/docs/reference/model/TriangleMeshTopologyAnalysis.md +131 -0
  671. package/dist/docs/reference/model/TriangularThreadProfileSpec.md +96 -0
  672. package/dist/docs/reference/model/TubeOptions.md +10 -86
  673. package/dist/docs/reference/model/Vector2-type.md +1 -1
  674. package/dist/docs/reference/model/Vector2Data.md +1 -1
  675. package/dist/docs/reference/model/Vector2Input.md +1 -1
  676. package/dist/docs/reference/model/Vector3-type.md +1 -1
  677. package/dist/docs/reference/model/Vector3Data.md +1 -1
  678. package/dist/docs/reference/model/Vector3Input.md +1 -1
  679. package/dist/docs/reference/model/VectorTextLayout.md +1 -1
  680. package/dist/docs/reference/model/VectorTextMetrics.md +1 -1
  681. package/dist/docs/reference/model/bounds2.md +7 -6
  682. package/dist/docs/reference/model/bounds3.md +7 -6
  683. package/dist/docs/reference/model/box.md +2 -2
  684. package/dist/docs/reference/model/categories/boolean-operations.md +6 -10
  685. package/dist/docs/reference/model/categories/bounded-surfaces.md +1 -1
  686. package/dist/docs/reference/model/categories/bounds.md +6 -4
  687. package/dist/docs/reference/model/categories/contracts.md +3 -5
  688. package/dist/docs/reference/model/categories/core-values-errors.md +17 -3
  689. package/dist/docs/reference/model/categories/explicit-profiles.md +1 -1
  690. package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +10 -8
  691. package/dist/docs/reference/model/categories/generation.md +8 -8
  692. package/dist/docs/reference/model/categories/hinges.md +2 -2
  693. package/dist/docs/reference/model/categories/mesh-inspection.md +15 -6
  694. package/dist/docs/reference/model/categories/paths.md +4 -3
  695. package/dist/docs/reference/model/categories/primitives.md +8 -4
  696. package/dist/docs/reference/model/categories/resolution.md +1 -1
  697. package/dist/docs/reference/model/categories/sections.md +4 -3
  698. package/dist/docs/reference/model/categories/threads.md +16 -6
  699. package/dist/docs/reference/model/categories/transforms-placement.md +2 -3
  700. package/dist/docs/reference/model/circle.md +1 -1
  701. package/dist/docs/reference/model/cylinder.md +1 -1
  702. package/dist/docs/reference/model/ellipse.md +1 -1
  703. package/dist/docs/reference/model/extrude.md +5 -4
  704. package/dist/docs/reference/model/generate.md +4 -4
  705. package/dist/docs/reference/model/gridPattern.md +1 -1
  706. package/dist/docs/reference/model/heightfield.md +1 -1
  707. package/dist/docs/reference/model/holeCutter.md +55 -0
  708. package/dist/docs/reference/model/hull.md +1 -1
  709. package/dist/docs/reference/model/immutableBuffer.md +5 -4
  710. package/dist/docs/reference/model/implicit.md +1 -1
  711. package/dist/docs/reference/model/internalThreadCutter.md +12 -20
  712. package/dist/docs/reference/model/intersect.md +3 -3
  713. package/dist/docs/reference/model/isGeometryError.md +34 -0
  714. package/dist/docs/reference/model/knuckleHinge.md +3 -3
  715. package/dist/docs/reference/model/linearPattern.md +1 -1
  716. package/dist/docs/reference/model/loft.md +6 -5
  717. package/dist/docs/reference/model/matchProfiles.md +1 -1
  718. package/dist/docs/reference/model/minkowskiSum.md +1 -1
  719. package/dist/docs/reference/model/path2.md +1 -1
  720. package/dist/docs/reference/model/path3.md +1 -1
  721. package/dist/docs/reference/model/pathPattern.md +1 -1
  722. package/dist/docs/reference/model/polygon.md +1 -1
  723. package/dist/docs/reference/model/preflightInternalThreadCutter.md +15 -23
  724. package/dist/docs/reference/model/preflightThreadedNut.md +22 -25
  725. package/dist/docs/reference/model/preflightThreadedRod.md +15 -23
  726. package/dist/docs/reference/model/radialPattern.md +1 -1
  727. package/dist/docs/reference/model/rectangle.md +2 -2
  728. package/dist/docs/reference/model/regularPolygon.md +1 -1
  729. package/dist/docs/reference/model/revolve.md +6 -5
  730. package/dist/docs/reference/model/solidFromMesh.md +7 -6
  731. package/dist/docs/reference/model/sphere.md +1 -1
  732. package/dist/docs/reference/model/star.md +7 -7
  733. package/dist/docs/reference/model/stroke.md +1 -1
  734. package/dist/docs/reference/model/svgPathSection.md +1 -1
  735. package/dist/docs/reference/model/svgSection.md +5 -1
  736. package/dist/docs/reference/model/sweep.md +5 -4
  737. package/dist/docs/reference/model/textSection.md +1 -1
  738. package/dist/docs/reference/model/threadRidge.md +14 -14
  739. package/dist/docs/reference/model/threadedNut.md +22 -25
  740. package/dist/docs/reference/model/threadedRod.md +12 -20
  741. package/dist/docs/reference/model/torus.md +1 -1
  742. package/dist/docs/reference/model/transform2.md +1 -1
  743. package/dist/docs/reference/model/transform3.md +1 -1
  744. package/dist/docs/reference/model/tube.md +1 -36
  745. package/dist/docs/reference/model/union.md +3 -3
  746. package/dist/docs/reference/model/vector2.md +1 -1
  747. package/dist/docs/reference/model/vector3.md +1 -1
  748. package/dist/docs/reference/model.md +15 -19
  749. package/dist/docs/reference/text/Bounds2Data.md +1 -1
  750. package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +2 -2
  751. package/dist/docs/reference/text/Vector2Data.md +1 -1
  752. package/dist/docs/reference/text/VectorFont.md +1 -1
  753. package/dist/docs/reference/text/VectorFontOptions.md +1 -1
  754. package/dist/docs/reference/text/VectorTextArcBaseline.md +1 -1
  755. package/dist/docs/reference/text/VectorTextLayout.md +1 -1
  756. package/dist/docs/reference/text/VectorTextLayoutOptions.md +1 -1
  757. package/dist/docs/reference/text/VectorTextMetrics.md +1 -1
  758. package/dist/docs/reference/text/VectorTextOptions.md +1 -1
  759. package/dist/docs/reference/text/categories/font-preparation.md +3 -3
  760. package/dist/docs/reference/text/prepareVectorFont.md +1 -1
  761. package/dist/docs/reference/text.md +4 -4
  762. package/dist/engine/execution.js +10 -6
  763. package/dist/engine/export-3mf.js +22 -115
  764. package/dist/engine/finalization.js +10 -10
  765. package/dist/engine/index.js +25 -31
  766. package/dist/engine/model-parts.js +8 -0
  767. package/dist/engine/model-summary.js +5 -5
  768. package/dist/engine/native/index.js +1 -1
  769. package/dist/engine/native/material-components.js +3 -3
  770. package/dist/engine/native/operations.js +0 -7
  771. package/dist/engine/native/scoped-primitives.js +5 -4
  772. package/dist/engine/native/threads.js +14 -14
  773. package/dist/engine/{construction-operations.js → operations/construction.js} +25 -23
  774. package/dist/engine/{modeling-context.js → operations/context.js} +21 -9
  775. package/dist/engine/{operation-environment.js → operations/environment.js} +2 -2
  776. package/dist/engine/{extrusion-finishing.js → operations/extrusion-finishing.js} +8 -35
  777. package/dist/engine/operations/hole-cutter.js +148 -0
  778. package/dist/engine/{inspection-operations.js → operations/inspection.js} +6 -6
  779. package/dist/engine/operations/knuckle-hinge.js +128 -0
  780. package/dist/engine/{loft-operations.js → operations/loft.js} +13 -12
  781. package/dist/engine/{mechanical-operations.js → operations/mechanical.js} +2 -2
  782. package/dist/engine/{pattern-operations.js → operations/patterns.js} +4 -4
  783. package/dist/engine/{primitive-anchors.js → operations/primitives/anchors.js} +9 -4
  784. package/dist/engine/{primitive-operations.js → operations/primitives/construction.js} +36 -24
  785. package/dist/engine/{primitive-correspondence.js → operations/primitives/correspondence.js} +4 -4
  786. package/dist/engine/{profile-mesh.js → operations/primitives/profile-mesh.js} +12 -12
  787. package/dist/engine/{primitive-profiles.js → operations/primitives/profiles.js} +7 -7
  788. package/dist/engine/{section-operations.js → operations/sections.js} +9 -9
  789. package/dist/engine/{transform-operations.js → operations/transforms.js} +8 -8
  790. package/dist/engine/placement.js +3 -4
  791. package/dist/engine/recipe-realization.js +1 -1
  792. package/dist/engine/serialize-3mf.js +116 -0
  793. package/dist/engine/{deferred-context.js → session/deferred-context.js} +4 -4
  794. package/dist/engine/{model-dependencies.js → session/dependencies.js} +1 -1
  795. package/dist/engine/{session-graph.js → session/graph.js} +13 -11
  796. package/dist/engine/{session-native.js → session/native-cache.js} +1 -1
  797. package/dist/engine/{session.js → session/session.js} +16 -10
  798. package/dist/engine/{session-snapshot.js → session/snapshot-cache.js} +29 -59
  799. package/dist/geometry/anchors.js +4 -11
  800. package/dist/geometry/bounds-value.js +49 -11
  801. package/dist/geometry/bounds.js +0 -17
  802. package/dist/geometry/circular-sampling.js +45 -0
  803. package/dist/geometry/convex-offset.js +41 -0
  804. package/dist/geometry/heightfield.js +10 -12
  805. package/dist/{model → geometry}/immutable-buffer.js +28 -7
  806. package/dist/geometry/index.js +18 -23
  807. package/dist/geometry/loft/loft.js +11 -6
  808. package/dist/geometry/math/immutable-value.js +1 -1
  809. package/dist/geometry/mechanical/index.js +5 -5
  810. package/dist/geometry/mechanical/threads/bevel.js +24 -0
  811. package/dist/geometry/mechanical/{threads.js → threads/fit.js} +4 -4
  812. package/dist/geometry/mechanical/{thread-helices.js → threads/helices.js} +3 -3
  813. package/dist/geometry/mechanical/{thread-mesh-plan.js → threads/mesh-plan.js} +38 -53
  814. package/dist/geometry/mechanical/{thread-mesh.js → threads/mesh.js} +9 -9
  815. package/dist/geometry/mechanical/{thread-profiles.js → threads/profiles.js} +3 -3
  816. package/dist/geometry/mechanical/{thread-solids.js → threads/solids.js} +58 -89
  817. package/dist/geometry/mechanical/{thread-surface.js → threads/surface.js} +7 -8
  818. package/dist/geometry/mesh/mesh-centroid.js +3 -2
  819. package/dist/geometry/mesh/mesh-planar.js +27 -8
  820. package/dist/geometry/mesh/mesh-quality.js +2 -1
  821. package/dist/geometry/mesh/mesh-signature.js +7 -6
  822. package/dist/geometry/mesh/mesh-solid.js +2 -3
  823. package/dist/geometry/mesh/mesh-types.js +1 -0
  824. package/dist/geometry/mesh/mesh.js +13 -22
  825. package/dist/geometry/mesh-api.js +14 -0
  826. package/dist/geometry/primitive-resolvers.js +42 -14
  827. package/dist/geometry/profiles/primitives/circle.js +19 -0
  828. package/dist/geometry/profiles/{shapes.js → primitives/ellipse.js} +6 -10
  829. package/dist/geometry/profiles/{rectangle.js → primitives/rectangle.js} +14 -12
  830. package/dist/geometry/profiles/primitives/regular-polygon.js +33 -0
  831. package/dist/geometry/profiles/primitives/star.js +28 -0
  832. package/dist/geometry/revolve/revolve-mesh.js +1 -1
  833. package/dist/geometry/{svg-import.js → svg/import.js} +141 -59
  834. package/dist/geometry/svg/matrix.js +21 -0
  835. package/dist/geometry/sweeps/sweep-mesh.js +1 -1
  836. package/dist/geometry/transform3.js +29 -0
  837. package/dist/index.js +2 -1
  838. package/dist/model/diagnostic-path.js +26 -0
  839. package/dist/model/execution-binding.js +3 -3
  840. package/dist/model/generation.js +8 -2
  841. package/dist/model/geometry-recipes.js +1 -1
  842. package/dist/model/hole-cutter.js +1 -0
  843. package/dist/model/immutable-generation-data.js +33 -2
  844. package/dist/model/operations.js +35 -144
  845. package/dist/model/recipe-declaration.js +7 -2
  846. package/dist/model/shape-handles.js +30 -7
  847. package/dist/text/index.js +1 -1
  848. package/package.json +21 -11
  849. package/dist/docs/reference/engine/ModelSnapshot.md +0 -184
  850. package/dist/docs/reference/engine/SnapshotPart.md +0 -133
  851. package/dist/docs/reference/engine/validateModel.md +0 -48
  852. package/dist/docs/reference/geometry/BoundsFromSizeOptions.md +0 -24
  853. package/dist/docs/reference/geometry/ThreadedNutBevel.md +0 -14
  854. package/dist/docs/reference/geometry/analyzeTriangleMesh.md +0 -61
  855. package/dist/docs/reference/geometry/boundsFromSize.md +0 -84
  856. package/dist/docs/reference/geometry/containsBounds.md +0 -73
  857. package/dist/docs/reference/geometry/extrudeMesh.md +0 -77
  858. package/dist/docs/reference/geometry/helicalThreadRidgeMesh.md +0 -72
  859. package/dist/docs/reference/geometry/helicalThreadSolidMesh.md +0 -106
  860. package/dist/docs/reference/geometry/meshBounds.md +0 -39
  861. package/dist/docs/reference/geometry/optimizePlanarPatches.md +0 -95
  862. package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +0 -105
  863. package/dist/docs/reference/geometry/sweepMesh.md +0 -86
  864. package/dist/docs/reference/model/FinalizedModel.md +0 -131
  865. package/dist/docs/reference/model/FinalizedPart.md +0 -87
  866. package/dist/docs/reference/model/anchor.md +0 -47
  867. package/dist/docs/reference/model/castSegment.md +0 -40
  868. package/dist/docs/reference/model/categories/inspection.md +0 -29
  869. package/dist/docs/reference/model/components.md +0 -71
  870. package/dist/docs/reference/model/compose.md +0 -31
  871. package/dist/docs/reference/model/distance.md +0 -45
  872. package/dist/docs/reference/model/immutableMesh.md +0 -44
  873. package/dist/docs/reference/model/inspectSection.md +0 -38
  874. package/dist/docs/reference/model/inspectSolid.md +0 -38
  875. package/dist/docs/reference/model/isEmpty.md +0 -39
  876. package/dist/docs/reference/model/split.md +0 -54
  877. package/dist/docs/reference/model/splitByPlane.md +0 -66
  878. package/dist/engine/knuckle-hinge-operation.js +0 -85
  879. package/dist/geometry/profiles/profiles.js +0 -91
  880. /package/dist/engine/{primitive-profile-types.js → operations/primitives/profile-types.js} +0 -0
  881. /package/dist/geometry/profiles/{matched.js → match-profiles.js} +0 -0
@@ -1,20 +1,20 @@
1
- # computeTriangleMeshCentroid
1
+ # centroid
2
2
 
3
3
  Computes the uniform-density volume centroid of an oriented closed solid, including cavity shells.
4
4
 
5
- **computeTriangleMeshCentroid**(`mesh`: [`TriangleMesh`](TriangleMesh.md)): [`Vector3Data`](Vector3Data.md)
5
+ **centroid**(`mesh`: [`TriangleMeshInput`](../geometry/TriangleMeshInput.md)): [`Vector3Data`](../geometry/Vector3Data.md)
6
6
 
7
7
 
8
8
 
9
9
  Coordinates are millimetres. Indexed closure and positive aggregate volume are required; callers
10
- may use validateSolidMesh first when geometric intersections and shell orientation are untrusted.
10
+ may use mesh.validateSolid first when geometric intersections and shell orientation are untrusted.
11
11
  Fresh mutable input is inspected on every call, and buffers are never changed.
12
12
 
13
13
  ## Parameters
14
14
 
15
15
  <a id="mesh"></a>
16
16
 
17
- **`mesh`** · [`TriangleMesh`](TriangleMesh.md) · Required
17
+ **`mesh`** · [`TriangleMeshInput`](../geometry/TriangleMeshInput.md) · Required
18
18
 
19
19
  Consistently oriented closed mesh with positive enclosed volume.
20
20
 
@@ -22,18 +22,18 @@ Consistently oriented closed mesh with positive enclosed volume.
22
22
 
23
23
  ## Returns
24
24
 
25
- [`Vector3Data`](Vector3Data.md)
25
+ [`Vector3Data`](../geometry/Vector3Data.md)
26
26
 
27
27
  A fresh immutable XYZ volume centroid.
28
28
 
29
29
 
30
30
  ## Related APIs
31
31
 
32
- - [TriangleMesh](TriangleMesh.md)
32
+ - [TriangleMeshInput](TriangleMeshInput.md)
33
33
  - [Vector3Data](Vector3Data.md)
34
34
 
35
35
  ## Guides
36
36
 
37
37
  - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
38
38
 
39
- Package: `@metamesh/modeling@0.16.0`.
39
+ Package: `@metamesh/modeling@0.18.0`.
@@ -0,0 +1,73 @@
1
+ # extrude
2
+
3
+ Linearly extrudes one simple profile along +Z with robust ear-clipped caps. Path2 profiles must be closed; raw point collections have an implicit closing edge. End treatments are unsupported and reject at runtime. Use Section.extrude for finished ends.
4
+
5
+ **extrude**(`input`: [`Path2Input`](../geometry/Path2Input.md), `options`: [`ExtrudeMeshOptions`](../geometry/ExtrudeMeshOptions.md)): [`TriangleMesh`](../geometry/TriangleMesh.md)
6
+
7
+
8
+
9
+ ## Example: Extrude point data without an engine
10
+
11
+ ```ts
12
+ const outline = rectangleContour({ size: [30, 20], treatment: { kind: "round", radius: 3 } });
13
+ mesh.extrude(outline, { height: 8 });
14
+ ```
15
+
16
+ ## Parameters
17
+
18
+ <a id="input"></a>
19
+
20
+ **`input`** · [`Path2Input`](../geometry/Path2Input.md) · Required
21
+
22
+
23
+
24
+ <a id="options"></a>
25
+
26
+ **`options`** · [`ExtrudeMeshOptions`](../geometry/ExtrudeMeshOptions.md) · Required
27
+
28
+ - [`height`](../geometry/ExtrudeMeshOptions.md#height) · `number` · Required
29
+
30
+ Positive extrusion height in millimetres.
31
+
32
+ - [`center`](../geometry/ExtrudeMeshOptions.md#center) · `boolean` · Optional
33
+
34
+ Center the extrusion on Z; otherwise its bottom is at zero. Defaults to false.
35
+
36
+ - [`divisions`](../geometry/ExtrudeMeshOptions.md#divisions) · `number` · Optional
37
+
38
+ Exact number of intermediate profiles, nonnegative; overrides physical sampling.
39
+
40
+ - [`limits`](../geometry/ExtrudeMeshOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
41
+
42
+ Explicit output and sampling allocation ceilings.
43
+
44
+ - [`resolution`](../geometry/ExtrudeMeshOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
45
+
46
+ Operation-level physical policy over the nearest model scope.
47
+
48
+ - [`scaleTop`](../geometry/ExtrudeMeshOptions.md#scaletop) · `number` \| [`Vector2Input`](../geometry/Vector2Input.md) · Optional
49
+
50
+ Finite uniform or XY scale of the top profile; defaults to one.
51
+
52
+ - [`twist`](../geometry/ExtrudeMeshOptions.md#twist) · `number` · Optional
53
+
54
+ Finite rotation of the top profile about +Z, in degrees; defaults to zero.
55
+
56
+
57
+
58
+ ## Returns
59
+
60
+ [`TriangleMesh`](../geometry/TriangleMesh.md)
61
+
62
+
63
+ ## Related APIs
64
+
65
+ - [ExtrudeMeshOptions](ExtrudeMeshOptions.md)
66
+ - [Path2Input](Path2Input.md)
67
+ - [TriangleMesh](TriangleMesh.md)
68
+
69
+ ## Guides
70
+
71
+ - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
72
+
73
+ Package: `@metamesh/modeling@0.18.0`.
@@ -1,15 +1,15 @@
1
- # heightfieldMesh
1
+ # heightfield
2
2
 
3
3
  Builds a closed indexed mesh from a rectilinear top, matched boundary walls, and flat base.
4
4
 
5
- **heightfieldMesh**(`options`: [`HeightfieldOptions`](HeightfieldOptions.md), `limits?`: `Partial`\<`Pick`\<[`ModelingLimits`](ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\>): [`TriangleMesh`](TriangleMesh.md)
5
+ **heightfield**(`options`: [`HeightfieldOptions`](../geometry/HeightfieldOptions.md), `limits?`: `Partial`\<`Pick`\<[`ModelingLimits`](../geometry/ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\>): [`TriangleMesh`](../geometry/TriangleMesh.md)
6
6
 
7
7
 
8
8
 
9
9
  ## Example: Sample a closed wavy mesh
10
10
 
11
11
  ```ts
12
- heightfieldMesh({
12
+ mesh.heightfield({
13
13
  size: [30, 20], segments: [24, 16],
14
14
  height: ([x, y]) => 3 + Math.cos(x / 5) * Math.cos(y / 5),
15
15
  });
@@ -23,19 +23,19 @@ Float32 storage. Explicit axes are captured before sampling; shared wall vertice
23
23
 
24
24
  <a id="options"></a>
25
25
 
26
- **`options`** · [`HeightfieldOptions`](HeightfieldOptions.md) · Required
26
+ **`options`** · [`HeightfieldOptions`](../geometry/HeightfieldOptions.md) · Required
27
27
 
28
28
 
29
29
 
30
30
  <a id="limits"></a>
31
31
 
32
- **`limits`** · `Partial`\<`Pick`\<[`ModelingLimits`](ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\> · Optional
32
+ **`limits`** · `Partial`\<`Pick`\<[`ModelingLimits`](../geometry/ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\> · Optional
33
33
 
34
34
 
35
35
 
36
36
  ## Returns
37
37
 
38
- [`TriangleMesh`](TriangleMesh.md)
38
+ [`TriangleMesh`](../geometry/TriangleMesh.md)
39
39
 
40
40
 
41
41
  ## Related APIs
@@ -43,10 +43,9 @@ Float32 storage. Explicit axes are captured before sampling; shared wall vertice
43
43
  - [HeightfieldOptions](HeightfieldOptions.md)
44
44
  - [ModelingLimits](ModelingLimits.md)
45
45
  - [TriangleMesh](TriangleMesh.md)
46
- - [preflightHeightfield](preflightHeightfield.md)
47
46
 
48
47
  ## Guides
49
48
 
50
49
  - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
51
50
 
52
- Package: `@metamesh/modeling@0.16.0`.
51
+ Package: `@metamesh/modeling@0.18.0`.
@@ -0,0 +1,47 @@
1
+ # immutable
2
+
3
+ Copies mesh buffers into immutable data; geometric validation still occurs when modeling or finalizing.
4
+
5
+ **immutable**(`mesh`: `object`): [`ImmutableTriangleMesh`](../geometry/ImmutableTriangleMesh.md)
6
+
7
+
8
+
9
+ ## Example
10
+
11
+ ```ts
12
+ import { generate } from "@metamesh/modeling";
13
+ import * as mesh from "@metamesh/modeling/geometry/mesh";
14
+ const model = generate(({ computed, part }) => {
15
+ const surface = computed("surface", () => mesh.immutable(mesh.heightfield({
16
+ size: [10, 10], segments: [8, 8], height: () => 2,
17
+ })));
18
+ return [part("surface", surface)];
19
+ });
20
+ ```
21
+
22
+ ## Parameters
23
+
24
+ ### mesh
25
+
26
+ #### positions
27
+
28
+ `Float32Array`
29
+
30
+ #### indices
31
+
32
+ `Uint32Array`
33
+
34
+ ## Returns
35
+
36
+ [`ImmutableTriangleMesh`](../geometry/ImmutableTriangleMesh.md)
37
+
38
+
39
+ ## Related APIs
40
+
41
+ - [ImmutableTriangleMesh](ImmutableTriangleMesh.md)
42
+
43
+ ## Guides
44
+
45
+ - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
46
+
47
+ Package: `@metamesh/modeling@0.18.0`.
@@ -1,8 +1,8 @@
1
- # joinTriangleMeshes
1
+ # join
2
2
 
3
3
  Concatenates meshes into one indexed mesh without welding coincident vertices.
4
4
 
5
- **joinTriangleMeshes**(`meshes`: readonly [`TriangleMesh`](TriangleMesh.md)[]): [`TriangleMesh`](TriangleMesh.md)
5
+ **join**(`meshes`: readonly [`TriangleMeshInput`](../geometry/TriangleMeshInput.md)[]): [`TriangleMesh`](../geometry/TriangleMesh.md)
6
6
 
7
7
 
8
8
 
@@ -12,7 +12,7 @@ Inputs are validated and never mutated. Face order and winding remain stable.
12
12
 
13
13
  <a id="meshes"></a>
14
14
 
15
- **`meshes`** · readonly [`TriangleMesh`](TriangleMesh.md)[] · Required
15
+ **`meshes`** · readonly [`TriangleMeshInput`](../geometry/TriangleMeshInput.md)[] · Required
16
16
 
17
17
  One or more meshes to concatenate.
18
18
 
@@ -20,21 +20,22 @@ One or more meshes to concatenate.
20
20
 
21
21
  ## Returns
22
22
 
23
- [`TriangleMesh`](TriangleMesh.md)
23
+ [`TriangleMesh`](../geometry/TriangleMesh.md)
24
24
 
25
25
  Fresh typed arrays with indices offset to their source vertex ranges.
26
26
 
27
27
 
28
28
  ## Throws
29
29
 
30
- - GeometryError When no mesh is supplied or an input is invalid.
30
+ - `GeometryError` When no mesh is supplied or an input is invalid.
31
31
 
32
32
  ## Related APIs
33
33
 
34
34
  - [TriangleMesh](TriangleMesh.md)
35
+ - [TriangleMeshInput](TriangleMeshInput.md)
35
36
 
36
37
  ## Guides
37
38
 
38
39
  - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
39
40
 
40
- Package: `@metamesh/modeling@0.16.0`.
41
+ Package: `@metamesh/modeling@0.18.0`.
@@ -1,8 +1,8 @@
1
- # loftMesh
1
+ # loft
2
2
 
3
3
  Lofts simple point loops at z heights or explicit right-handed frames, in input order.
4
4
 
5
- **loftMesh**(`stations`: readonly [`LoftMeshStation`](LoftMeshStation.md)[], `options`: [`LoftOptions`](LoftOptions.md)): [`TriangleMesh`](TriangleMesh.md)
5
+ **loft**(`stations`: readonly [`LoftMeshStation`](../geometry/LoftMeshStation.md)[], `options?`: [`LoftOptions`](../geometry/LoftOptions.md)): [`TriangleMesh`](../geometry/TriangleMesh.md)
6
6
 
7
7
 
8
8
 
@@ -11,10 +11,10 @@ Lofts simple point loops at z heights or explicit right-handed frames, in input
11
11
  ```ts
12
12
  const bottom = rectangleContour({ size: [20, 12] });
13
13
  const top = rectangleContour({ size: [30, 20], treatment: { kind: "round", radius: 3 } });
14
- loftMesh([{ profile: bottom, z: 0 }, { profile: top, z: 30 }], { correspondence: "reindex" });
14
+ mesh.loft([{ profile: bottom, z: 0 }, { profile: top, z: 30 }], { correspondence: "reindex" });
15
15
  ```
16
16
 
17
- An explicit correspondence method is required. CCW-normalized loops retain their
17
+ Correspondence defaults to direct. CCW-normalized loops retain their
18
18
  seam and original vertices; unequal counts gain subdivisions or repeated fan slots.
19
19
  Both ends use ear-clipped caps, supporting concave profiles without center fans.
20
20
  Intermediate slices interpolate placed world vertices, never frame axes.
@@ -25,35 +25,35 @@ Path2 profiles must be closed; raw point collections are interpreted as closed.
25
25
 
26
26
  <a id="stations"></a>
27
27
 
28
- **`stations`** · readonly [`LoftMeshStation`](LoftMeshStation.md)[] · Required
28
+ **`stations`** · readonly [`LoftMeshStation`](../geometry/LoftMeshStation.md)[] · Required
29
29
 
30
30
 
31
31
 
32
32
  <a id="options"></a>
33
33
 
34
- **`options`** · [`LoftOptions`](LoftOptions.md) · Required
34
+ **`options`** · [`LoftOptions`](../geometry/LoftOptions.md) · Optional
35
35
 
36
- - [`correspondence`](LoftOptions.md#correspondence) · [`LoftCorrespondence`](LoftCorrespondence.md) \| readonly [`LoftCorrespondence`](LoftCorrespondence.md)[] · Optional
36
+ - [`correspondence`](../geometry/LoftOptions.md#correspondence) · [`LoftCorrespondence`](../geometry/LoftCorrespondence.md) \| readonly [`LoftCorrespondence`](../geometry/LoftCorrespondence.md)[] · Optional
37
37
 
38
- One method or one per consecutive station gap. Omitted preserves known landmarks, including circle/ellipse-to-rectangle corners, or maps other unlike primitive seams directly.
38
+ One method or one per consecutive station gap. Omitted preserves known primitive landmarks, including circle/ellipse-to-rectangle corners, and otherwise uses direct correspondence with the supplied seams.
39
39
 
40
- - [`distribution`](LoftOptions.md#distribution) · `"perimeter"` \| `"segments"` · Optional
40
+ - [`distribution`](../geometry/LoftOptions.md#distribution) · `"perimeter"` \| `"segments"` · Optional
41
41
 
42
42
  Extra points follow edge length or distribute equally across existing segments. Defaults to perimeter for direct/reindex, or segments when any distance method is selected; distance methods require segments.
43
43
 
44
- - [`refine`](LoftOptions.md#refine) · `number` \| readonly `number`[] · Optional
44
+ - [`refine`](../geometry/LoftOptions.md#refine) · `number` \| readonly `number`[] · Optional
45
45
 
46
46
  Positive integer point-density multiplier, uniformly or per input profile. Original vertices are retained. Defaults to one.
47
47
 
48
- - [`slices`](LoftOptions.md#slices) · `number` \| readonly `number`[] · Optional
48
+ - [`slices`](../geometry/LoftOptions.md#slices) · `number` \| readonly `number`[] · Optional
49
49
 
50
50
  Nonnegative count of world-linearly interpolated profiles, uniformly or per gap. Defaults to zero.
51
51
 
52
- - [`resolution`](LoftOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
52
+ - [`resolution`](../geometry/LoftOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
53
53
 
54
54
  Physical curve policy for retained primitives, and maximum edge length for point data. Exact primitive curve counts take precedence.
55
55
 
56
- - [`limits`](LoftOptions.md#limits) · `Partial`\<[`ModelingLimits`](ModelingLimits.md)\> · Optional
56
+ - [`limits`](../geometry/LoftOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
57
57
 
58
58
  Explicit output and sampling budgets; native operations may only lower host ceilings.
59
59
 
@@ -61,7 +61,7 @@ Path2 profiles must be closed; raw point collections are interpreted as closed.
61
61
 
62
62
  ## Returns
63
63
 
64
- [`TriangleMesh`](TriangleMesh.md)
64
+ [`TriangleMesh`](../geometry/TriangleMesh.md)
65
65
 
66
66
 
67
67
  ## Related APIs
@@ -74,4 +74,4 @@ Path2 profiles must be closed; raw point collections are interpreted as closed.
74
74
 
75
75
  - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
76
76
 
77
- Package: `@metamesh/modeling@0.16.0`.
77
+ Package: `@metamesh/modeling@0.18.0`.
@@ -0,0 +1,96 @@
1
+ # optimizePlanarPatches
2
+
3
+ Improves pathological planar triangulation with bounded legal diagonal flips.
4
+
5
+ **optimizePlanarPatches**(`mesh`: [`TriangleMeshInput`](../geometry/TriangleMeshInput.md), `options?`: [`PlanarMeshOptimizationOptions`](../geometry/PlanarMeshOptimizationOptions.md)): [`PlanarMeshOptimizationResult`](../geometry/PlanarMeshOptimizationResult.md)
6
+
7
+
8
+
9
+ The operation changes indices only: it never moves, adds, welds, or removes vertices; never
10
+ crosses a coplanar-patch boundary; and never changes the face count. Each accepted flip improves
11
+ a deterministic ordering of triangle angles, aspect ratio, diagonal locality, and local
12
+ incidence/valence concentration. Unsupported input or a failed final integrity check preserves the
13
+ original raw mesh object. Immutable inputs produce owned raw output buffers, including unchanged
14
+ results. Malformed buffers and the configured analysis complexity limit throw.
15
+
16
+ ## Parameters
17
+
18
+ <a id="mesh"></a>
19
+
20
+ **`mesh`** · [`TriangleMeshInput`](../geometry/TriangleMeshInput.md) · Required
21
+
22
+ Closed, consistently wound indexed triangle mesh in arbitrary consistent units.
23
+
24
+
25
+
26
+ <a id="options"></a>
27
+
28
+ **`options`** · [`PlanarMeshOptimizationOptions`](../geometry/PlanarMeshOptimizationOptions.md) · Optional
29
+
30
+ Patch eligibility, numeric tolerance, and deterministic work bounds.
31
+
32
+ - [`maxFlipAttempts`](../geometry/PlanarMeshOptimizationOptions.md#maxflipattempts) · `number` · Optional
33
+
34
+ Maximum attempted edge evaluations. By default this is twenty times the initial candidate
35
+ edge count, capped at `1000000`.
36
+
37
+ - [`maxEdgeRevisits`](../geometry/PlanarMeshOptimizationOptions.md#maxedgerevisits) · `number` · Optional
38
+
39
+ Maximum times one edge may be reconsidered after neighbouring flips. Defaults to `12`.
40
+
41
+ - [`maxPatchTriangles`](../geometry/PlanarMeshOptimizationOptions.md#maxpatchtriangles) · `number` · Optional
42
+
43
+ Maximum triangles allowed in one selected patch. Defaults to `50000`.
44
+
45
+ - [`maxProcessedTriangles`](../geometry/PlanarMeshOptimizationOptions.md#maxprocessedtriangles) · `number` · Optional
46
+
47
+ Maximum cumulative triangles across selected patches. Defaults to `200000`.
48
+
49
+ - [`minPatchTriangles`](../geometry/PlanarMeshOptimizationOptions.md#minpatchtriangles) · `number` · Optional
50
+
51
+ Minimum triangles required before a planar patch is eligible. Defaults to `8`.
52
+
53
+ - [`triggerMaxAspectRatio`](../geometry/PlanarMeshOptimizationOptions.md#triggermaxaspectratio) · `number` · Optional
54
+
55
+ Select patches whose worst normalized aspect ratio exceeds this value. Defaults to `12`.
56
+
57
+ - [`triggerMaxFanRatio`](../geometry/PlanarMeshOptimizationOptions.md#triggermaxfanratio) · `number` · Optional
58
+
59
+ Select patches whose largest per-vertex triangle share exceeds this ratio. Defaults to `0.2`.
60
+
61
+ - [`triggerMaxVertexTriangleIncidence`](../geometry/PlanarMeshOptimizationOptions.md#triggermaxvertextriangleincidence) · `number` · Optional
62
+
63
+ Select patches whose largest vertex triangle incidence exceeds this value. Defaults to `16`.
64
+
65
+ - [`triggerMinAngleDegrees`](../geometry/PlanarMeshOptimizationOptions.md#triggerminangledegrees) · `number` · Optional
66
+
67
+ Select patches whose smallest interior angle is below this many degrees. Defaults to `8`.
68
+
69
+ - [`maxTriangles`](../geometry/PlanarMeshOptimizationOptions.md#maxtriangles) · `number` · Optional
70
+
71
+ Maximum number of triangles inspected. Defaults to `200000`.
72
+
73
+ - [`tolerance`](../geometry/PlanarMeshOptimizationOptions.md#tolerance) · [`GeometryToleranceOptions`](../geometry/GeometryToleranceOptions.md) · Optional
74
+
75
+ Numeric comparison overrides; model coordinates are interpreted in their existing units.
76
+
77
+
78
+
79
+ ## Returns
80
+
81
+ [`PlanarMeshOptimizationResult`](../geometry/PlanarMeshOptimizationResult.md)
82
+
83
+ Optimized connectivity and before/after diagnostics, or an unchanged safe fallback.
84
+
85
+
86
+ ## Related APIs
87
+
88
+ - [PlanarMeshOptimizationOptions](PlanarMeshOptimizationOptions.md)
89
+ - [PlanarMeshOptimizationResult](PlanarMeshOptimizationResult.md)
90
+ - [TriangleMeshInput](TriangleMeshInput.md)
91
+
92
+ ## Guides
93
+
94
+ - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
95
+
96
+ Package: `@metamesh/modeling@0.18.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Checks grid options, Float32 axis precision, and output limits; returns exact mesh buffer counts.
4
4
 
5
- **preflightHeightfield**(`options`: [`HeightfieldOptions`](HeightfieldOptions.md), `limits?`: `Partial`\<`Pick`\<[`ModelingLimits`](ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\>): [`HeightfieldPreflight`](HeightfieldPreflight.md)
5
+ **preflightHeightfield**(`options`: [`HeightfieldOptions`](../geometry/HeightfieldOptions.md), `limits?`: `Partial`\<`Pick`\<[`ModelingLimits`](../geometry/ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\>): [`HeightfieldPreflight`](../geometry/HeightfieldPreflight.md)
6
6
 
7
7
 
8
8
 
@@ -14,19 +14,19 @@ construction. `byteCount` covers position and index buffers, not total working m
14
14
 
15
15
  <a id="options"></a>
16
16
 
17
- **`options`** · [`HeightfieldOptions`](HeightfieldOptions.md) · Required
17
+ **`options`** · [`HeightfieldOptions`](../geometry/HeightfieldOptions.md) · Required
18
18
 
19
19
 
20
20
 
21
21
  <a id="limits"></a>
22
22
 
23
- **`limits`** · `Partial`\<`Pick`\<[`ModelingLimits`](ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\> · Optional
23
+ **`limits`** · `Partial`\<`Pick`\<[`ModelingLimits`](../geometry/ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\> · Optional
24
24
 
25
25
 
26
26
 
27
27
  ## Returns
28
28
 
29
- [`HeightfieldPreflight`](HeightfieldPreflight.md)
29
+ [`HeightfieldPreflight`](../geometry/HeightfieldPreflight.md)
30
30
 
31
31
 
32
32
  ## Related APIs
@@ -34,10 +34,9 @@ construction. `byteCount` covers position and index buffers, not total working m
34
34
  - [HeightfieldOptions](HeightfieldOptions.md)
35
35
  - [HeightfieldPreflight](HeightfieldPreflight.md)
36
36
  - [ModelingLimits](ModelingLimits.md)
37
- - [heightfieldMesh](heightfieldMesh.md)
38
37
 
39
38
  ## Guides
40
39
 
41
40
  - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
42
41
 
43
- Package: `@metamesh/modeling@0.16.0`.
42
+ Package: `@metamesh/modeling@0.18.0`.
@@ -0,0 +1,90 @@
1
+ # preflightThreadSolid
2
+
3
+ Checks thread dimensions, profile, end treatments, sampling, and conservative estimates against output limits.
4
+
5
+ **preflightThreadSolid**(`options`: [`ThreadSolidOptions`](../geometry/ThreadSolidOptions.md)): [`ThreadSolidPreflight`](../geometry/ThreadSolidPreflight.md)
6
+
7
+
8
+
9
+ This pure operation needs no engine and constructs planning data without vertex or index buffers.
10
+ `circularSegments` is the selected count; row and triangle counts are conservative estimates.
11
+ Successful preflight leaves generated coordinate and topology checks to mesh construction.
12
+
13
+ See `mesh.threadSolid` for standalone mesh construction.
14
+
15
+ ## Parameters
16
+
17
+ <a id="options"></a>
18
+
19
+ **`options`** · [`ThreadSolidOptions`](../geometry/ThreadSolidOptions.md) · Required
20
+
21
+ - [`length`](../geometry/ThreadSolidOptions.md#length) · `number` · Required
22
+
23
+ Total threaded axial length in millimetres.
24
+
25
+ - [`majorDiameter`](../geometry/ThreadSolidOptions.md#majordiameter) · `number` · Required
26
+
27
+ Nominal major diameter before any caller-owned fit compensation.
28
+
29
+ - [`profile`](../geometry/ThreadSolidOptions.md#profile) · [`ThreadProfile`](../geometry/ThreadProfile-type.md) · Required
30
+
31
+ Validated periodic profile repeated around the shaft.
32
+
33
+ - [`ends`](../geometry/ThreadSolidOptions.md#ends) · [`ThreadEndTreatmentOptions`](../geometry/ThreadEndTreatmentOptions.md) · Optional
34
+
35
+ Optional bottom/top ridge-end treatments. Standalone ridges honor the requested boundaries;
36
+ BOSL2-style non-cut lead-in scaling is available on complete thread solids.
37
+
38
+ - [`handedness`](../geometry/ThreadSolidOptions.md#handedness) · [`ThreadHandedness`](../geometry/ThreadHandedness.md) · Optional
39
+
40
+ Helix direction. Default: `right`.
41
+
42
+ - [`limits`](../geometry/ThreadSolidOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
43
+
44
+ Explicit output and circular allocation ceilings.
45
+
46
+ - [`phase`](../geometry/ThreadSolidOptions.md#phase) · `number` · Optional
47
+
48
+ Angular offset of the first start in degrees. Default: `0`.
49
+
50
+ - [`resolution`](../geometry/ThreadSolidOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
51
+
52
+ Optional circular-resolution policy.
53
+
54
+ - [`starts`](../geometry/ThreadSolidOptions.md#starts) · `number` · Optional
55
+
56
+ Number of evenly phased starts. Default: `1`.
57
+
58
+ - [`tolerance`](../geometry/ThreadSolidOptions.md#tolerance) · [`GeometryToleranceOptions`](../geometry/GeometryToleranceOptions.md) · Optional
59
+
60
+ Optional numerical tolerance overrides.
61
+
62
+ - [`bevel`](../geometry/ThreadSolidOptions.md#bevel) · [`Bevel`](../geometry/Bevel.md) · Optional
63
+
64
+ Independent 45-degree bottom/top bevels; omitted disables both. Auto uses profile depth.
65
+
66
+ - [`bevelOffset`](../geometry/ThreadSolidOptions.md#beveloffset) · `number` · Optional
67
+
68
+ Distance of each bevel target face inward from the corresponding mesh end.
69
+
70
+ - [`bevelMode`](../geometry/ThreadSolidOptions.md#bevelmode) · `"inset"` \| `"outset"` · Optional
71
+
72
+ `inset` trims an external rod; `outset` expands an internal cutter.
73
+
74
+
75
+
76
+ ## Returns
77
+
78
+ [`ThreadSolidPreflight`](../geometry/ThreadSolidPreflight.md)
79
+
80
+
81
+ ## Related APIs
82
+
83
+ - [ThreadSolidOptions](ThreadSolidOptions.md)
84
+ - [ThreadSolidPreflight](ThreadSolidPreflight.md)
85
+
86
+ ## Guides
87
+
88
+ - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
89
+
90
+ Package: `@metamesh/modeling@0.18.0`.
@@ -1,8 +1,8 @@
1
- # reverseTriangleMesh
1
+ # reverse
2
2
 
3
3
  Returns a copy of a mesh with every triangle winding reversed.
4
4
 
5
- **reverseTriangleMesh**(`mesh`: [`TriangleMesh`](TriangleMesh.md)): [`TriangleMesh`](TriangleMesh.md)
5
+ **reverse**(`mesh`: [`TriangleMeshInput`](../geometry/TriangleMeshInput.md)): [`TriangleMesh`](../geometry/TriangleMesh.md)
6
6
 
7
7
 
8
8
 
@@ -10,7 +10,7 @@ Returns a copy of a mesh with every triangle winding reversed.
10
10
 
11
11
  <a id="mesh"></a>
12
12
 
13
- **`mesh`** · [`TriangleMesh`](TriangleMesh.md) · Required
13
+ **`mesh`** · [`TriangleMeshInput`](../geometry/TriangleMeshInput.md) · Required
14
14
 
15
15
  Mesh to copy and reverse.
16
16
 
@@ -18,7 +18,7 @@ Mesh to copy and reverse.
18
18
 
19
19
  ## Returns
20
20
 
21
- [`TriangleMesh`](TriangleMesh.md)
21
+ [`TriangleMesh`](../geometry/TriangleMesh.md)
22
22
 
23
23
  Fresh position and index buffers; the input remains unchanged.
24
24
 
@@ -26,9 +26,10 @@ Fresh position and index buffers; the input remains unchanged.
26
26
  ## Related APIs
27
27
 
28
28
  - [TriangleMesh](TriangleMesh.md)
29
+ - [TriangleMeshInput](TriangleMeshInput.md)
29
30
 
30
31
  ## Guides
31
32
 
32
33
  - [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
33
34
 
34
- Package: `@metamesh/modeling@0.16.0`.
35
+ Package: `@metamesh/modeling@0.18.0`.