@metamesh/modeling 0.17.0 → 0.19.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 (832) hide show
  1. package/CHANGELOG.md +186 -0
  2. package/README.md +147 -157
  3. package/dist/api/engine.d.ts +106 -83
  4. package/dist/api/export-3mf.d.ts +2 -0
  5. package/dist/api/export-glb.d.ts +2 -0
  6. package/dist/api/export-stl.d.ts +2 -0
  7. package/dist/api/export.d.ts +160 -0
  8. package/dist/api/geometry.d.ts +250 -461
  9. package/dist/api/index.d.ts +470 -445
  10. package/dist/api/mesh.d.ts +489 -0
  11. package/dist/api/text.d.ts +1 -1
  12. package/dist/docs/guides/concepts.md +32 -495
  13. package/dist/docs/guides/fonts.md +14 -13
  14. package/dist/docs/guides/fundamentals.md +30 -29
  15. package/dist/docs/guides/generation.md +84 -64
  16. package/dist/docs/guides/geometry-values.md +193 -0
  17. package/dist/docs/guides/hosting.md +147 -48
  18. package/dist/docs/guides/profiles-and-extrusion.md +252 -0
  19. package/dist/docs/guides/recipes.md +33 -769
  20. package/dist/docs/guides/resolution-and-inspection.md +133 -0
  21. package/dist/docs/guides/solid-joins.md +126 -0
  22. package/dist/docs/guides/standalone-model.md +8 -7
  23. package/dist/docs/guides/svg-and-text.md +215 -0
  24. package/dist/docs/guides/sweeps-and-lofts.md +179 -0
  25. package/dist/docs/guides/transforms-and-placement.md +313 -0
  26. package/dist/docs/manifest.json +3224 -4430
  27. package/dist/docs/reference/engine/GenerationOptions.md +12 -5
  28. package/dist/docs/reference/engine/GeometryResource.md +19 -13
  29. package/dist/docs/reference/engine/ModelDependencies.md +9 -3
  30. package/dist/docs/reference/engine/ModelEngine.md +33 -24
  31. package/dist/docs/reference/engine/ModelEngineOptions.md +13 -2
  32. package/dist/docs/reference/engine/ModelPart.md +114 -0
  33. package/dist/docs/reference/engine/ModelResult.md +181 -0
  34. package/dist/docs/reference/engine/ModelRunArguments.md +34 -0
  35. package/dist/docs/reference/engine/ModelRunOptions.md +110 -0
  36. package/dist/docs/reference/engine/ModelSession.md +22 -16
  37. package/dist/docs/reference/engine/SessionOptions.md +21 -10
  38. package/dist/docs/reference/engine/categories/host-lifecycle.md +20 -15
  39. package/dist/docs/reference/engine/checkModel.md +49 -0
  40. package/dist/docs/reference/engine/createModelEngine.md +11 -13
  41. package/dist/docs/reference/engine/defaultModelingLimits.md +15 -2
  42. package/dist/docs/reference/engine/modelingWasmUrl.md +7 -1
  43. package/dist/docs/reference/engine.md +8 -15
  44. package/dist/docs/reference/export/Export3mfOptions.md +24 -0
  45. package/dist/docs/reference/export/ExportDiagnostic.md +59 -0
  46. package/dist/docs/reference/export/ExportFormat.md +25 -0
  47. package/dist/docs/reference/export/ExportGeometry.md +39 -0
  48. package/dist/docs/reference/export/ExportGlbOptions.md +118 -0
  49. package/dist/docs/reference/export/ExportLimits.md +83 -0
  50. package/dist/docs/reference/export/ExportMaterial.md +47 -0
  51. package/dist/docs/reference/export/ExportOptions.md +94 -0
  52. package/dist/docs/reference/export/ExportPart.md +88 -0
  53. package/dist/docs/reference/export/ExportReport.md +82 -0
  54. package/dist/docs/reference/export/ExportSink.md +39 -0
  55. package/dist/docs/reference/export/ExportStlOptions.md +24 -0
  56. package/dist/docs/reference/export/ExportedFile.md +110 -0
  57. package/dist/docs/reference/export/categories/mesh-serialization.md +47 -0
  58. package/dist/docs/reference/export/defaultExportLimits.md +20 -0
  59. package/dist/docs/reference/export/export3mf.md +64 -0
  60. package/dist/docs/reference/export/exportGlb.md +68 -0
  61. package/dist/docs/reference/export/exportStl.md +64 -0
  62. package/dist/docs/reference/export/write3mf.md +71 -0
  63. package/dist/docs/reference/export/writeGlb.md +75 -0
  64. package/dist/docs/reference/export/writeStl.md +71 -0
  65. package/dist/docs/reference/export.md +21 -0
  66. package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +16 -2
  67. package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +7 -1
  68. package/dist/docs/reference/geometry/Anchor3-type.md +13 -3
  69. package/dist/docs/reference/geometry/ArcCurve2.md +8 -2
  70. package/dist/docs/reference/geometry/ArcCurve3.md +8 -2
  71. package/dist/docs/reference/geometry/AttachOptions.md +13 -3
  72. package/dist/docs/reference/geometry/AxisAngleRotation3.md +9 -3
  73. package/dist/docs/reference/geometry/Bevel.md +32 -0
  74. package/dist/docs/reference/geometry/BevelSize.md +28 -0
  75. package/dist/docs/reference/geometry/Bounds2-type.md +18 -4
  76. package/dist/docs/reference/geometry/Bounds2Data.md +22 -4
  77. package/dist/docs/reference/geometry/Bounds2Input.md +18 -4
  78. package/dist/docs/reference/geometry/Bounds2Options.md +61 -11
  79. package/dist/docs/reference/geometry/Bounds3-type.md +18 -4
  80. package/dist/docs/reference/geometry/Bounds3Data.md +18 -4
  81. package/dist/docs/reference/geometry/Bounds3Input.md +18 -4
  82. package/dist/docs/reference/geometry/Bounds3Options.md +61 -11
  83. package/dist/docs/reference/geometry/BoundsFit2.md +10 -4
  84. package/dist/docs/reference/geometry/BoundsFit3.md +10 -4
  85. package/dist/docs/reference/geometry/BoundsFitOptions.md +10 -4
  86. package/dist/docs/reference/geometry/BoxAnchorFace.md +9 -3
  87. package/dist/docs/reference/geometry/BoxAnchorOptions.md +12 -6
  88. package/dist/docs/reference/geometry/BoxEdge.md +11 -1
  89. package/dist/docs/reference/geometry/BoxEdgeSelection.md +11 -1
  90. package/dist/docs/reference/geometry/BoxEdgeTreatments.md +11 -1
  91. package/dist/docs/reference/geometry/BoxOptions.md +13 -3
  92. package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +16 -2
  93. package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +16 -2
  94. package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +11 -1
  95. package/dist/docs/reference/geometry/CircleContourOptions.md +12 -2
  96. package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +15 -3
  97. package/dist/docs/reference/geometry/CircularResolutionOptions.md +7 -1
  98. package/dist/docs/reference/geometry/CircularSampling.md +7 -1
  99. package/dist/docs/reference/geometry/CircularSamplingOptions.md +7 -1
  100. package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +8 -2
  101. package/dist/docs/reference/geometry/ClearanceHoleFit.md +8 -2
  102. package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +8 -2
  103. package/dist/docs/reference/geometry/Contour.md +12 -2
  104. package/dist/docs/reference/geometry/ContourCurve.md +8 -2
  105. package/dist/docs/reference/geometry/ContourPoint.md +8 -2
  106. package/dist/docs/reference/geometry/ContourSegment.md +8 -2
  107. package/dist/docs/reference/geometry/CorrespondingComponent.md +12 -2
  108. package/dist/docs/reference/geometry/CorrespondingContour.md +12 -2
  109. package/dist/docs/reference/geometry/CorrespondingProfile.md +12 -2
  110. package/dist/docs/reference/geometry/CorrespondingProfileStation.md +12 -2
  111. package/dist/docs/reference/geometry/CubicBezierCurve2.md +8 -2
  112. package/dist/docs/reference/geometry/CubicBezierCurve3.md +8 -2
  113. package/dist/docs/reference/geometry/Curve2.md +8 -2
  114. package/dist/docs/reference/geometry/Curve3.md +8 -2
  115. package/dist/docs/reference/geometry/CurveSamplingOptions.md +16 -2
  116. package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +16 -2
  117. package/dist/docs/reference/geometry/CylinderAnchorFace.md +9 -3
  118. package/dist/docs/reference/geometry/CylinderAnchorOptions.md +11 -5
  119. package/dist/docs/reference/geometry/CylinderOptions.md +11 -1
  120. package/dist/docs/reference/geometry/CylindricalGearDimensions.md +8 -2
  121. package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +8 -2
  122. package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +8 -2
  123. package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +8 -2
  124. package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +8 -2
  125. package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +8 -2
  126. package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +8 -2
  127. package/dist/docs/reference/geometry/CylindricalGearSpec.md +8 -2
  128. package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +7 -1
  129. package/dist/docs/reference/geometry/EdgeTreatment.md +11 -1
  130. package/dist/docs/reference/geometry/EllipseContourOptions.md +14 -4
  131. package/dist/docs/reference/geometry/EndTreatments.md +12 -2
  132. package/dist/docs/reference/{model/ExtrudeOptions.md → geometry/ExtrudeMeshOptions.md} +30 -26
  133. package/dist/docs/reference/geometry/ExtrudeOptions.md +29 -11
  134. package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +18 -4
  135. package/dist/docs/reference/geometry/FittedTextLayout.md +8 -2
  136. package/dist/docs/reference/geometry/Frame3.md +16 -2
  137. package/dist/docs/reference/geometry/GeometryError.md +11 -1
  138. package/dist/docs/reference/geometry/GeometryErrorCode.md +11 -1
  139. package/dist/docs/reference/geometry/GeometryErrorContext.md +11 -1
  140. package/dist/docs/reference/geometry/GeometryResolution.md +15 -1
  141. package/dist/docs/reference/geometry/GeometrySamplingLimits.md +16 -2
  142. package/dist/docs/reference/geometry/GeometryToleranceOptions.md +15 -1
  143. package/dist/docs/reference/geometry/GridPatternOptions.md +12 -2
  144. package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +12 -2
  145. package/dist/docs/reference/geometry/HeightfieldOptions.md +18 -3
  146. package/dist/docs/reference/geometry/HeightfieldPreflight.md +12 -2
  147. package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +9 -3
  148. package/dist/docs/reference/geometry/ImmutableBuffer-type.md +110 -0
  149. package/dist/docs/reference/geometry/ImmutableTriangleMesh.md +57 -0
  150. package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +63 -84
  151. package/dist/docs/reference/geometry/KnuckleHingeBaseSpec.md +12 -2
  152. package/dist/docs/reference/geometry/KnuckleHingeDimensions.md +8 -2
  153. package/dist/docs/reference/geometry/KnuckleHingeInterval.md +8 -2
  154. package/dist/docs/reference/geometry/KnuckleHingeSamplingOptions.md +12 -2
  155. package/dist/docs/reference/geometry/KnuckleHingeSpec.md +12 -2
  156. package/dist/docs/reference/geometry/LineCurve2.md +8 -2
  157. package/dist/docs/reference/geometry/LineCurve3.md +8 -2
  158. package/dist/docs/reference/geometry/LinearPatternOptions.md +12 -2
  159. package/dist/docs/reference/geometry/LoftCorrespondence.md +16 -2
  160. package/dist/docs/reference/geometry/LoftMeshStation.md +12 -2
  161. package/dist/docs/reference/geometry/LoftOptions.md +18 -4
  162. package/dist/docs/reference/geometry/LoftPlacement.md +16 -2
  163. package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +8 -2
  164. package/dist/docs/reference/geometry/MatchProfilesOptions.md +12 -2
  165. package/dist/docs/reference/geometry/MetricFastenerSize.md +8 -2
  166. package/dist/docs/reference/geometry/MetricFastenerStandard.md +8 -2
  167. package/dist/docs/reference/geometry/MetricHexNutDimensions.md +8 -2
  168. package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +8 -2
  169. package/dist/docs/reference/geometry/ModelingLimits.md +19 -1
  170. package/dist/docs/reference/geometry/NumericArray.md +28 -0
  171. package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +8 -2
  172. package/dist/docs/reference/geometry/Path2-type.md +16 -2
  173. package/dist/docs/reference/geometry/Path2Data.md +16 -2
  174. package/dist/docs/reference/geometry/Path2Input.md +16 -2
  175. package/dist/docs/reference/geometry/Path3-type.md +16 -2
  176. package/dist/docs/reference/geometry/Path3Data.md +16 -2
  177. package/dist/docs/reference/geometry/Path3Input.md +16 -2
  178. package/dist/docs/reference/geometry/PathFrame.md +8 -2
  179. package/dist/docs/reference/geometry/PathLocation.md +16 -2
  180. package/dist/docs/reference/geometry/PathNormalGuide.md +16 -2
  181. package/dist/docs/reference/geometry/PathOptions.md +12 -2
  182. package/dist/docs/reference/geometry/PathPatternOptions.md +12 -2
  183. package/dist/docs/reference/geometry/PathPlacement.md +8 -2
  184. package/dist/docs/reference/geometry/PathResamplingOptions.md +16 -2
  185. package/dist/docs/reference/geometry/Pivot2Options.md +17 -3
  186. package/dist/docs/reference/geometry/Pivot3Options.md +17 -3
  187. package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +12 -2
  188. package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +12 -2
  189. package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +12 -2
  190. package/dist/docs/reference/geometry/PlanarPatchQuality.md +12 -2
  191. package/dist/docs/reference/geometry/PolygonData.md +12 -2
  192. package/dist/docs/reference/geometry/PolylineResamplingOptions.md +8 -2
  193. package/dist/docs/reference/geometry/PrimitiveAttachment.md +11 -3
  194. package/dist/docs/reference/geometry/PrimitiveAttachmentOptions.md +11 -1
  195. package/dist/docs/reference/geometry/PrintableThreadFit.md +12 -2
  196. package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +12 -2
  197. package/dist/docs/reference/geometry/Profile.md +8 -2
  198. package/dist/docs/reference/geometry/ProfileComponent2.md +12 -2
  199. package/dist/docs/reference/geometry/ProfileContour2.md +12 -2
  200. package/dist/docs/reference/geometry/ProfileSpan2.md +12 -2
  201. package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +11 -1
  202. package/dist/docs/reference/geometry/RackPitchDimensions.md +8 -2
  203. package/dist/docs/reference/geometry/RackPitchSpec.md +8 -2
  204. package/dist/docs/reference/geometry/RadialPatternOptions.md +12 -2
  205. package/dist/docs/reference/geometry/RadialSizing.md +11 -1
  206. package/dist/docs/reference/geometry/RadialSizingOptions.md +11 -1
  207. package/dist/docs/reference/geometry/RectangleContourOptions.md +14 -4
  208. package/dist/docs/reference/geometry/RectangleCornerTreatment.md +12 -2
  209. package/dist/docs/reference/geometry/RectangleCornerTreatments.md +12 -2
  210. package/dist/docs/reference/geometry/RectangleProfileOptions.md +10 -4
  211. package/dist/docs/reference/geometry/RegionData.md +12 -2
  212. package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +8 -2
  213. package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +7 -1
  214. package/dist/docs/reference/geometry/RevolveOptions.md +17 -3
  215. package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +11 -1
  216. package/dist/docs/reference/geometry/RowLayoutOptions.md +10 -4
  217. package/dist/docs/reference/geometry/SampleContourOptions.md +8 -2
  218. package/dist/docs/reference/geometry/SampleHelixOptions.md +8 -2
  219. package/dist/docs/reference/geometry/SampleSideProfileOptions.md +8 -2
  220. package/dist/docs/reference/geometry/SampledCurve2.md +8 -2
  221. package/dist/docs/reference/geometry/SampledCurve3.md +8 -2
  222. package/dist/docs/reference/geometry/SampledThreadHelices.md +8 -2
  223. package/dist/docs/reference/geometry/SideProfileCurve.md +8 -2
  224. package/dist/docs/reference/geometry/SideProfilePoint.md +8 -2
  225. package/dist/docs/reference/geometry/SideProfileSegment.md +8 -2
  226. package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +11 -1
  227. package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +12 -2
  228. package/dist/docs/reference/geometry/SphereOptions.md +11 -1
  229. package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +16 -2
  230. package/dist/docs/reference/geometry/StarContourOptions.md +84 -0
  231. package/dist/docs/reference/geometry/StrokeCap.md +12 -2
  232. package/dist/docs/reference/geometry/StrokeJoin.md +12 -2
  233. package/dist/docs/reference/geometry/StrokeOptions.md +12 -2
  234. package/dist/docs/reference/geometry/SvgImportOptions.md +8 -2
  235. package/dist/docs/reference/geometry/SvgRegionPreflight.md +8 -2
  236. package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +8 -2
  237. package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +8 -2
  238. package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +8 -2
  239. package/dist/docs/reference/geometry/SweepOptions.md +16 -2
  240. package/dist/docs/reference/geometry/SweepOrientation.md +16 -2
  241. package/dist/docs/reference/geometry/ThreadBevelOptions.md +18 -31
  242. package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +8 -2
  243. package/dist/docs/reference/geometry/ThreadCompensationOptions.md +8 -2
  244. package/dist/docs/reference/geometry/ThreadEndStyle.md +16 -2
  245. package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +16 -2
  246. package/dist/docs/reference/geometry/ThreadHandedness.md +16 -2
  247. package/dist/docs/reference/geometry/ThreadHelixOptions.md +8 -2
  248. package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +16 -2
  249. package/dist/docs/reference/geometry/ThreadLeadInShape.md +16 -2
  250. package/dist/docs/reference/geometry/ThreadProfile-type.md +17 -3
  251. package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +16 -2
  252. package/dist/docs/reference/geometry/ThreadProfileSpec.md +16 -2
  253. package/dist/docs/reference/geometry/{HelicalThreadRidgeMeshOptions.md → ThreadRidgeOptions.md} +19 -5
  254. package/dist/docs/reference/geometry/ThreadRole.md +8 -2
  255. package/dist/docs/reference/geometry/{HelicalThreadSolidMeshOptions.md → ThreadSolidOptions.md} +29 -66
  256. package/dist/docs/reference/geometry/{HelicalThreadSolidMeshPreflight.md → ThreadSolidPreflight.md} +17 -3
  257. package/dist/docs/reference/geometry/ThreadedNutOptions.md +86 -87
  258. package/dist/docs/reference/geometry/ThreadedNutPreflight.md +29 -7
  259. package/dist/docs/reference/geometry/ThreadedNutShape.md +12 -2
  260. package/dist/docs/reference/geometry/ThreadedRodOptions.md +63 -84
  261. package/dist/docs/reference/geometry/TorusOptions.md +11 -1
  262. package/dist/docs/reference/geometry/Transform2-type.md +17 -3
  263. package/dist/docs/reference/geometry/Transform2Data.md +17 -3
  264. package/dist/docs/reference/geometry/Transform2Input.md +17 -3
  265. package/dist/docs/reference/geometry/Transform3-type.md +17 -3
  266. package/dist/docs/reference/geometry/Transform3Data.md +17 -3
  267. package/dist/docs/reference/geometry/Transform3Input.md +17 -3
  268. package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +16 -2
  269. package/dist/docs/reference/geometry/TriangleMesh.md +19 -6
  270. package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +25 -5
  271. package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +13 -3
  272. package/dist/docs/reference/geometry/TriangleMeshInput.md +29 -0
  273. package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +16 -2
  274. package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +12 -2
  275. package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +12 -2
  276. package/dist/docs/reference/geometry/TriangleMeshSignature.md +14 -4
  277. package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +12 -2
  278. package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +12 -2
  279. package/dist/docs/reference/geometry/TriangleMeshTopologyAnalysis.md +145 -0
  280. package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +12 -2
  281. package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +16 -2
  282. package/dist/docs/reference/geometry/TubeOptions.md +20 -86
  283. package/dist/docs/reference/geometry/Vector2-type.md +17 -3
  284. package/dist/docs/reference/geometry/Vector2Data.md +21 -3
  285. package/dist/docs/reference/geometry/Vector2Input.md +17 -3
  286. package/dist/docs/reference/geometry/Vector3-type.md +17 -3
  287. package/dist/docs/reference/geometry/Vector3Data.md +17 -3
  288. package/dist/docs/reference/geometry/Vector3Input.md +17 -3
  289. package/dist/docs/reference/geometry/VectorTextArcBaseline.md +12 -2
  290. package/dist/docs/reference/geometry/VectorTextLayout.md +16 -2
  291. package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +14 -4
  292. package/dist/docs/reference/geometry/VectorTextMetrics.md +16 -2
  293. package/dist/docs/reference/geometry/VectorTextOptions.md +12 -2
  294. package/dist/docs/reference/geometry/add2.md +9 -3
  295. package/dist/docs/reference/geometry/add3.md +9 -3
  296. package/dist/docs/reference/geometry/anchor3.md +9 -3
  297. package/dist/docs/reference/geometry/anchorFrame3.md +8 -2
  298. package/dist/docs/reference/geometry/applyTransformDirection3.md +9 -3
  299. package/dist/docs/reference/geometry/applyTransformPoint3.md +9 -3
  300. package/dist/docs/reference/geometry/attachmentTransform3.md +9 -3
  301. package/dist/docs/reference/geometry/bounds2.md +18 -8
  302. package/dist/docs/reference/geometry/bounds3.md +18 -8
  303. package/dist/docs/reference/geometry/boundsCenter.md +10 -4
  304. package/dist/docs/reference/geometry/boundsSize.md +10 -4
  305. package/dist/docs/reference/geometry/boxAnchor3.md +11 -5
  306. package/dist/docs/reference/geometry/categories/bounds-layout.md +6 -6
  307. package/dist/docs/reference/geometry/categories/curves-paths.md +3 -3
  308. package/dist/docs/reference/geometry/categories/mechanical.md +9 -11
  309. package/dist/docs/reference/geometry/categories/meshes.md +20 -33
  310. package/dist/docs/reference/geometry/categories/pattern-placement.md +3 -3
  311. package/dist/docs/reference/geometry/categories/primitive-options.md +4 -4
  312. package/dist/docs/reference/geometry/categories/profiles-regions.md +6 -5
  313. package/dist/docs/reference/geometry/categories/resolution-errors.md +3 -3
  314. package/dist/docs/reference/geometry/categories/transforms-math.md +5 -4
  315. package/dist/docs/reference/geometry/categories/vector-import.md +4 -4
  316. package/dist/docs/reference/geometry/circleContour.md +8 -2
  317. package/dist/docs/reference/geometry/closeToAxis.md +8 -2
  318. package/dist/docs/reference/geometry/compensateThreadDiameters.md +8 -2
  319. package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +8 -2
  320. package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +8 -2
  321. package/dist/docs/reference/geometry/composeTransform3.md +9 -3
  322. package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +8 -2
  323. package/dist/docs/reference/geometry/computeParallelTransportFrames.md +8 -2
  324. package/dist/docs/reference/geometry/contourContainsPoint.md +8 -2
  325. package/dist/docs/reference/geometry/cross2.md +9 -3
  326. package/dist/docs/reference/geometry/cross3.md +9 -3
  327. package/dist/docs/reference/geometry/cylinderAnchor3.md +10 -4
  328. package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +8 -2
  329. package/dist/docs/reference/geometry/distance2.md +9 -3
  330. package/dist/docs/reference/geometry/distance3.md +9 -3
  331. package/dist/docs/reference/geometry/distributeAlongPath.md +8 -2
  332. package/dist/docs/reference/geometry/dot2.md +9 -3
  333. package/dist/docs/reference/geometry/dot3.md +9 -3
  334. package/dist/docs/reference/geometry/ellipseContour.md +8 -2
  335. package/dist/docs/reference/geometry/eulerTransform3.md +9 -3
  336. package/dist/docs/reference/geometry/fitBounds.md +10 -4
  337. package/dist/docs/reference/geometry/fitTextLayout.md +8 -2
  338. package/dist/docs/reference/geometry/frameTransform3.md +9 -3
  339. package/dist/docs/reference/geometry/getMetricClearanceHoleDiameter.md +8 -2
  340. package/dist/docs/reference/geometry/getMetricFastenerStandard.md +8 -2
  341. package/dist/docs/reference/geometry/gridPatternTransforms.md +8 -2
  342. package/dist/docs/reference/{model → geometry}/immutableBuffer.md +13 -2
  343. package/dist/docs/reference/geometry/inverseTransform3.md +9 -3
  344. package/dist/docs/reference/geometry/isGeometryError.md +11 -1
  345. package/dist/docs/reference/geometry/layoutRow.md +10 -4
  346. package/dist/docs/reference/geometry/length2.md +9 -3
  347. package/dist/docs/reference/geometry/length3.md +9 -3
  348. package/dist/docs/reference/geometry/lerp2.md +9 -3
  349. package/dist/docs/reference/geometry/lerp3.md +9 -3
  350. package/dist/docs/reference/geometry/linearPatternTransforms.md +8 -2
  351. package/dist/docs/reference/geometry/matchProfiles.md +8 -2
  352. package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +8 -2
  353. package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +8 -2
  354. package/dist/docs/reference/geometry/normalize2.md +9 -3
  355. package/dist/docs/reference/geometry/normalize3.md +9 -3
  356. package/dist/docs/reference/geometry/normalizeContour.md +8 -2
  357. package/dist/docs/reference/geometry/normalizePolygon.md +8 -2
  358. package/dist/docs/reference/geometry/normalizeRegion.md +8 -2
  359. package/dist/docs/reference/geometry/path2.md +12 -2
  360. package/dist/docs/reference/geometry/path3.md +12 -2
  361. package/dist/docs/reference/geometry/pathPatternTransforms.md +8 -2
  362. package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +25 -26
  363. package/dist/docs/reference/geometry/preflightSvgRegion.md +8 -2
  364. package/dist/docs/reference/geometry/preflightThreadedNut.md +31 -27
  365. package/dist/docs/reference/geometry/preflightThreadedRod.md +25 -26
  366. package/dist/docs/reference/geometry/projectOntoPlane3.md +9 -3
  367. package/dist/docs/reference/geometry/radialPatternTransforms.md +8 -2
  368. package/dist/docs/reference/geometry/rectangleContour.md +17 -6
  369. package/dist/docs/reference/geometry/rectangleProfile.md +9 -3
  370. package/dist/docs/reference/geometry/regionArea.md +8 -2
  371. package/dist/docs/reference/geometry/regionBounds.md +8 -2
  372. package/dist/docs/reference/geometry/regularPolygonContour.md +9 -3
  373. package/dist/docs/reference/geometry/resamplePolyline2.md +8 -2
  374. package/dist/docs/reference/geometry/resamplePolyline3.md +8 -2
  375. package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +7 -1
  376. package/dist/docs/reference/geometry/resolveArcSegments.md +7 -1
  377. package/dist/docs/reference/geometry/resolveCircularSampling.md +7 -1
  378. package/dist/docs/reference/geometry/resolveCircularSegments.md +7 -1
  379. package/dist/docs/reference/geometry/resolveCylindricalGear.md +8 -2
  380. package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +8 -2
  381. package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +8 -2
  382. package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +8 -2
  383. package/dist/docs/reference/geometry/resolveGeometryTolerance.md +7 -1
  384. package/dist/docs/reference/geometry/resolveKnuckleHinge.md +8 -2
  385. package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +8 -2
  386. package/dist/docs/reference/geometry/resolveRackPitch.md +8 -2
  387. package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +8 -2
  388. package/dist/docs/reference/geometry/rotate2.md +9 -3
  389. package/dist/docs/reference/geometry/rotationTransform3.md +9 -3
  390. package/dist/docs/reference/geometry/roundClosedPolylinePath.md +8 -2
  391. package/dist/docs/reference/geometry/sampleContour.md +8 -2
  392. package/dist/docs/reference/geometry/sampleCurve2.md +8 -2
  393. package/dist/docs/reference/geometry/sampleCurve3.md +8 -2
  394. package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +8 -2
  395. package/dist/docs/reference/geometry/sampleHelix.md +8 -2
  396. package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +8 -2
  397. package/dist/docs/reference/geometry/sampleRackToothPath.md +8 -2
  398. package/dist/docs/reference/geometry/sampleSideProfile.md +8 -2
  399. package/dist/docs/reference/geometry/sampleTextContours.md +8 -2
  400. package/dist/docs/reference/geometry/sampleThreadHelices.md +8 -2
  401. package/dist/docs/reference/geometry/scale2.md +9 -3
  402. package/dist/docs/reference/geometry/scale3.md +9 -3
  403. package/dist/docs/reference/geometry/scaleTransform3.md +9 -3
  404. package/dist/docs/reference/geometry/signedContourArea.md +8 -2
  405. package/dist/docs/reference/geometry/starContour.md +24 -16
  406. package/dist/docs/reference/geometry/strokeRegionData.md +8 -2
  407. package/dist/docs/reference/geometry/subtract2.md +9 -3
  408. package/dist/docs/reference/geometry/subtract3.md +9 -3
  409. package/dist/docs/reference/geometry/threadProfile.md +8 -2
  410. package/dist/docs/reference/geometry/transform2.md +13 -3
  411. package/dist/docs/reference/geometry/transform3.md +13 -3
  412. package/dist/docs/reference/geometry/transformDeterminant3.md +9 -3
  413. package/dist/docs/reference/geometry/transformRegionData.md +8 -2
  414. package/dist/docs/reference/geometry/translationTransform3.md +9 -3
  415. package/dist/docs/reference/geometry/triangulateContour.md +8 -2
  416. package/dist/docs/reference/geometry/validateRigidTransform3.md +41 -0
  417. package/dist/docs/reference/geometry/validateTransform3.md +9 -3
  418. package/dist/docs/reference/geometry/vector2.md +13 -3
  419. package/dist/docs/reference/geometry/vector3.md +13 -3
  420. package/dist/docs/reference/geometry.md +10 -10
  421. package/dist/docs/reference/mesh/MeshRenderOptions.md +28 -0
  422. package/dist/docs/reference/mesh/RenderMesh.md +68 -0
  423. package/dist/docs/reference/mesh/analyze.md +102 -0
  424. package/dist/docs/reference/mesh/analyzeQuality.md +62 -0
  425. package/dist/docs/reference/mesh/bounds.md +45 -0
  426. package/dist/docs/reference/mesh/categories/operations.md +57 -0
  427. package/dist/docs/reference/mesh/centroid.md +45 -0
  428. package/dist/docs/reference/mesh/extrude.md +79 -0
  429. package/dist/docs/reference/mesh/heightfield.md +57 -0
  430. package/dist/docs/reference/mesh/immutable.md +51 -0
  431. package/dist/docs/reference/mesh/join.md +47 -0
  432. package/dist/docs/reference/mesh/loft.md +83 -0
  433. package/dist/docs/reference/mesh/optimizePlanarPatches.md +102 -0
  434. package/dist/docs/reference/mesh/preflightHeightfield.md +48 -0
  435. package/dist/docs/reference/mesh/preflightThreadSolid.md +96 -0
  436. package/dist/docs/reference/mesh/render.md +57 -0
  437. package/dist/docs/reference/mesh/reverse.md +41 -0
  438. package/dist/docs/reference/{geometry/revolveMesh.md → mesh/revolve.md} +23 -17
  439. package/dist/docs/reference/mesh/signature.md +70 -0
  440. package/dist/docs/reference/mesh/sweep.md +92 -0
  441. package/dist/docs/reference/mesh/threadRidge.md +78 -0
  442. package/dist/docs/reference/mesh/threadSolid.md +96 -0
  443. package/dist/docs/reference/mesh/transform.md +53 -0
  444. package/dist/docs/reference/mesh/validate.md +75 -0
  445. package/dist/docs/reference/{geometry/validateSolidMesh.md → mesh/validateSolid.md} +23 -11
  446. package/dist/docs/reference/mesh.md +21 -0
  447. package/dist/docs/reference/model/CircleOptions.md +13 -7
  448. package/dist/docs/reference/model/DiagnosticOptions.md +21 -1
  449. package/dist/docs/reference/model/EllipseOptions.md +13 -7
  450. package/dist/docs/reference/model/GenerateCallback.md +11 -5
  451. package/dist/docs/reference/model/GenerateContext.md +26 -99
  452. package/dist/docs/reference/model/GenerationDiagnostic.md +19 -1
  453. package/dist/docs/reference/model/GenerationError.md +8 -2
  454. package/dist/docs/reference/model/HoleCutterOptions.md +17 -10
  455. package/dist/docs/reference/model/HoleCutterOverrun.md +10 -3
  456. package/dist/docs/reference/model/HoleCutterRecess.md +10 -3
  457. package/dist/docs/reference/model/HullOptions.md +13 -6
  458. package/dist/docs/reference/model/ImmutableValue.md +26 -0
  459. package/dist/docs/reference/model/ImplicitOptions.md +12 -6
  460. package/dist/docs/reference/model/JoinOptions.md +76 -0
  461. package/dist/docs/reference/model/JoinTransition.md +54 -0
  462. package/dist/docs/reference/model/KnuckleHinge-type.md +9 -3
  463. package/dist/docs/reference/model/KnuckleHingeHalfOptions.md +7 -1
  464. package/dist/docs/reference/model/KnuckleHingeOptions.md +10 -4
  465. package/dist/docs/reference/model/KnuckleHingeWeb.md +7 -1
  466. package/dist/docs/reference/model/LoftStation.md +16 -9
  467. package/dist/docs/reference/model/Memo.md +54 -0
  468. package/dist/docs/reference/model/ModelProgram.md +8 -2
  469. package/dist/docs/reference/model/PartDeclaration.md +87 -0
  470. package/dist/docs/reference/model/PartGeometry.md +10 -4
  471. package/dist/docs/reference/model/PartOptions.md +16 -22
  472. package/dist/docs/reference/model/PatternSource.md +10 -4
  473. package/dist/docs/reference/model/PlaneOptions.md +11 -4
  474. package/dist/docs/reference/model/PolygonOptions.md +20 -14
  475. package/dist/docs/reference/model/Profile.md +10 -4
  476. package/dist/docs/reference/model/RectangleOptions.md +28 -22
  477. package/dist/docs/reference/model/RegularPolygonOptions.md +13 -7
  478. package/dist/docs/reference/model/Section.md +196 -77
  479. package/dist/docs/reference/model/SectionHullOptions.md +13 -6
  480. package/dist/docs/reference/model/SectionInspection.md +12 -18
  481. package/dist/docs/reference/model/SectionOffsetJoin.md +10 -4
  482. package/dist/docs/reference/model/SectionOffsetOptions.md +12 -6
  483. package/dist/docs/reference/model/Solid.md +339 -54
  484. package/dist/docs/reference/model/SolidInspection.md +12 -18
  485. package/dist/docs/reference/model/SolidSegmentHit.md +14 -4
  486. package/dist/docs/reference/model/StarOptions.md +53 -25
  487. package/dist/docs/reference/model/SvgOrigin.md +10 -4
  488. package/dist/docs/reference/model/SvgPathSectionOptions.md +14 -8
  489. package/dist/docs/reference/model/SvgSectionOptions.md +16 -10
  490. package/dist/docs/reference/model/TextSectionOptions.md +14 -8
  491. package/dist/docs/reference/model/box.md +18 -11
  492. package/dist/docs/reference/model/categories/boolean-operations.md +13 -11
  493. package/dist/docs/reference/model/categories/bounded-surfaces.md +1 -7
  494. package/dist/docs/reference/model/categories/explicit-profiles.md +1 -14
  495. package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +11 -23
  496. package/dist/docs/reference/model/categories/generation.md +10 -15
  497. package/dist/docs/reference/model/categories/hinges.md +1 -4
  498. package/dist/docs/reference/model/categories/mesh-inspection.md +14 -9
  499. package/dist/docs/reference/model/categories/primitives.md +8 -24
  500. package/dist/docs/reference/model/categories/sections.md +6 -16
  501. package/dist/docs/reference/model/categories/threads.md +3 -30
  502. package/dist/docs/reference/model/categories/transforms-placement.md +5 -35
  503. package/dist/docs/reference/model/circle.md +10 -4
  504. package/dist/docs/reference/model/cylinder.md +13 -6
  505. package/dist/docs/reference/model/ellipse.md +10 -4
  506. package/dist/docs/reference/model/extrude.md +28 -20
  507. package/dist/docs/reference/model/generate.md +10 -4
  508. package/dist/docs/reference/model/gridPattern.md +15 -9
  509. package/dist/docs/reference/model/heightfield.md +10 -4
  510. package/dist/docs/reference/model/holeCutter.md +21 -4
  511. package/dist/docs/reference/model/hull.md +9 -2
  512. package/dist/docs/reference/model/implicit.md +9 -3
  513. package/dist/docs/reference/model/internalThreadCutter.md +31 -33
  514. package/dist/docs/reference/model/intersect.md +11 -4
  515. package/dist/docs/reference/model/join.md +89 -0
  516. package/dist/docs/reference/model/knuckleHinge.md +8 -2
  517. package/dist/docs/reference/model/linearPattern.md +15 -9
  518. package/dist/docs/reference/model/loft.md +36 -28
  519. package/dist/docs/reference/model/matchProfiles.md +14 -8
  520. package/dist/docs/reference/model/minkowskiSum.md +9 -2
  521. package/dist/docs/reference/model/pathPattern.md +25 -19
  522. package/dist/docs/reference/model/polygon.md +13 -7
  523. package/dist/docs/reference/model/preflightInternalThreadCutter.md +33 -35
  524. package/dist/docs/reference/model/preflightThreadedNut.md +43 -40
  525. package/dist/docs/reference/model/preflightThreadedRod.md +33 -35
  526. package/dist/docs/reference/model/radialPattern.md +15 -9
  527. package/dist/docs/reference/model/rectangle.md +14 -8
  528. package/dist/docs/reference/model/regularPolygon.md +10 -4
  529. package/dist/docs/reference/model/revolve.md +25 -17
  530. package/dist/docs/reference/model/solidFromMesh.md +16 -9
  531. package/dist/docs/reference/model/sphere.md +13 -6
  532. package/dist/docs/reference/model/star.md +17 -11
  533. package/dist/docs/reference/model/stroke.md +21 -15
  534. package/dist/docs/reference/model/svgPathSection.md +12 -6
  535. package/dist/docs/reference/model/svgSection.md +13 -7
  536. package/dist/docs/reference/model/sweep.md +29 -21
  537. package/dist/docs/reference/model/textSection.md +15 -9
  538. package/dist/docs/reference/model/threadRidge.md +21 -15
  539. package/dist/docs/reference/model/threadedNut.md +41 -38
  540. package/dist/docs/reference/model/threadedRod.md +31 -33
  541. package/dist/docs/reference/model/torus.md +20 -13
  542. package/dist/docs/reference/model/tube.md +13 -41
  543. package/dist/docs/reference/model/union.md +11 -4
  544. package/dist/docs/reference/model.md +11 -20
  545. package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +8 -2
  546. package/dist/docs/reference/text/VectorFont.md +39 -33
  547. package/dist/docs/reference/text/VectorFontOptions.md +7 -1
  548. package/dist/docs/reference/text/categories/font-preparation.md +3 -15
  549. package/dist/docs/reference/text/prepareVectorFont.md +7 -1
  550. package/dist/docs/reference/text.md +4 -4
  551. package/dist/engine/execution.js +10 -6
  552. package/dist/engine/finalization.js +2 -74
  553. package/dist/engine/index.js +24 -30
  554. package/dist/engine/model-parts.js +8 -0
  555. package/dist/engine/model-summary.js +5 -5
  556. package/dist/engine/native/construction-mesh.js +41 -0
  557. package/dist/engine/native/index.js +1 -1
  558. package/dist/engine/native/material-components.js +5 -54
  559. package/dist/engine/native/mesh-observation.js +55 -0
  560. package/dist/engine/native/operations.js +0 -7
  561. package/dist/engine/native/regions.js +2 -1
  562. package/dist/engine/native/scoped-primitives.js +5 -4
  563. package/dist/engine/native/threads.js +14 -14
  564. package/dist/engine/{construction-operations.js → operations/construction.js} +25 -23
  565. package/dist/engine/{modeling-context.js → operations/context.js} +12 -10
  566. package/dist/engine/{operation-environment.js → operations/environment.js} +2 -2
  567. package/dist/engine/{extrusion-finishing.js → operations/extrusion-finishing.js} +23 -22
  568. package/dist/engine/{hole-cutter-operation.js → operations/hole-cutter.js} +3 -3
  569. package/dist/engine/{inspection-operations.js → operations/inspection.js} +6 -6
  570. package/dist/engine/operations/join-collar-profile.js +120 -0
  571. package/dist/engine/operations/join.js +508 -0
  572. package/dist/engine/{knuckle-hinge-operation.js → operations/knuckle-hinge.js} +4 -4
  573. package/dist/engine/{loft-operations.js → operations/loft.js} +13 -12
  574. package/dist/engine/{mechanical-operations.js → operations/mechanical.js} +2 -2
  575. package/dist/engine/{pattern-operations.js → operations/patterns.js} +4 -4
  576. package/dist/engine/{primitive-anchors.js → operations/primitives/anchors.js} +9 -4
  577. package/dist/engine/{primitive-operations.js → operations/primitives/construction.js} +18 -19
  578. package/dist/engine/{primitive-correspondence.js → operations/primitives/correspondence.js} +4 -4
  579. package/dist/engine/{profile-mesh.js → operations/primitives/profile-mesh.js} +12 -12
  580. package/dist/engine/{primitive-profiles.js → operations/primitives/profiles.js} +7 -7
  581. package/dist/engine/{section-operations.js → operations/sections.js} +8 -8
  582. package/dist/engine/{transform-operations.js → operations/transforms.js} +8 -8
  583. package/dist/engine/placement.js +3 -4
  584. package/dist/engine/recipe-realization.js +2 -2
  585. package/dist/engine/{deferred-context.js → session/deferred-context.js} +4 -4
  586. package/dist/engine/session/dependencies.js +93 -0
  587. package/dist/engine/session/graph.js +428 -0
  588. package/dist/engine/{session-native.js → session/native-cache.js} +2 -2
  589. package/dist/engine/{session.js → session/session.js} +20 -14
  590. package/dist/engine/{session-snapshot.js → session/snapshot-cache.js} +30 -60
  591. package/dist/export/3mf.js +190 -0
  592. package/dist/export/capture.js +178 -0
  593. package/dist/export/glb.js +209 -0
  594. package/dist/export/index.js +5 -0
  595. package/dist/export/limits.js +18 -0
  596. package/dist/export/stl.js +105 -0
  597. package/dist/export/types.js +1 -0
  598. package/dist/export/writer.js +54 -0
  599. package/dist/geometry/anchors.js +4 -11
  600. package/dist/geometry/bounds-value.js +22 -12
  601. package/dist/geometry/heightfield.js +10 -12
  602. package/dist/{model → geometry}/immutable-buffer.js +31 -12
  603. package/dist/geometry/index.js +16 -22
  604. package/dist/geometry/join-geometry.js +839 -0
  605. package/dist/geometry/loft/loft.js +11 -6
  606. package/dist/geometry/mechanical/index.js +5 -5
  607. package/dist/geometry/mechanical/threads/bevel.js +24 -0
  608. package/dist/geometry/mechanical/{threads.js → threads/fit.js} +4 -4
  609. package/dist/geometry/mechanical/{thread-helices.js → threads/helices.js} +3 -3
  610. package/dist/geometry/mechanical/{thread-mesh-plan.js → threads/mesh-plan.js} +38 -53
  611. package/dist/geometry/mechanical/{thread-mesh.js → threads/mesh.js} +9 -9
  612. package/dist/geometry/mechanical/{thread-profiles.js → threads/profiles.js} +3 -3
  613. package/dist/geometry/mechanical/{thread-solids.js → threads/solids.js} +58 -89
  614. package/dist/geometry/mechanical/{thread-surface.js → threads/surface.js} +7 -8
  615. package/dist/geometry/mesh/mesh-centroid.js +3 -2
  616. package/dist/geometry/mesh/mesh-planar.js +27 -8
  617. package/dist/geometry/mesh/mesh-quality.js +2 -1
  618. package/dist/geometry/mesh/mesh-render.js +205 -0
  619. package/dist/geometry/mesh/mesh-signature.js +7 -6
  620. package/dist/geometry/mesh/mesh-solid-intersections.js +43 -17
  621. package/dist/geometry/mesh/mesh-solid.js +8 -5
  622. package/dist/geometry/mesh/mesh-types.js +1 -0
  623. package/dist/geometry/mesh/mesh.js +13 -22
  624. package/dist/geometry/mesh-api.js +15 -0
  625. package/dist/geometry/primitive-resolvers.js +42 -14
  626. package/dist/geometry/profiles/primitives/circle.js +19 -0
  627. package/dist/geometry/profiles/{shapes.js → primitives/ellipse.js} +6 -10
  628. package/dist/geometry/profiles/{rectangle.js → primitives/rectangle.js} +14 -12
  629. package/dist/geometry/profiles/primitives/regular-polygon.js +33 -0
  630. package/dist/geometry/profiles/primitives/star.js +28 -0
  631. package/dist/geometry/region-offset.js +278 -0
  632. package/dist/geometry/regions.js +11 -1
  633. package/dist/geometry/revolve/revolve-mesh.js +1 -1
  634. package/dist/geometry/{svg-import.js → svg/import.js} +10 -10
  635. package/dist/geometry/sweeps/sweep-mesh.js +1 -1
  636. package/dist/geometry/transform3.js +29 -0
  637. package/dist/index.js +2 -1
  638. package/dist/model/diagnostic-path.js +26 -0
  639. package/dist/model/execution-binding.js +3 -3
  640. package/dist/model/generation.js +9 -3
  641. package/dist/model/geometry-recipes.js +1 -1
  642. package/dist/model/immutable-generation-data.js +45 -14
  643. package/dist/model/join.js +1 -0
  644. package/dist/model/operations.js +34 -144
  645. package/dist/model/recipe-declaration.js +7 -2
  646. package/dist/model/shape-handles.js +31 -7
  647. package/dist/text/index.js +1 -1
  648. package/package.json +38 -11
  649. package/dist/docs/reference/engine/Export3mfOptions.md +0 -29
  650. package/dist/docs/reference/engine/ExportMeshPart.md +0 -65
  651. package/dist/docs/reference/engine/ModelSnapshot.md +0 -184
  652. package/dist/docs/reference/engine/SnapshotPart.md +0 -133
  653. package/dist/docs/reference/engine/validateModel.md +0 -48
  654. package/dist/docs/reference/geometry/ThreadedNutBevel.md +0 -14
  655. package/dist/docs/reference/geometry/analyzeTriangleMesh.md +0 -61
  656. package/dist/docs/reference/geometry/analyzeTriangleMeshQuality.md +0 -56
  657. package/dist/docs/reference/geometry/computeTriangleMeshCentroid.md +0 -39
  658. package/dist/docs/reference/geometry/computeTriangleMeshSignature.md +0 -64
  659. package/dist/docs/reference/geometry/extrudeMesh.md +0 -77
  660. package/dist/docs/reference/geometry/heightfieldMesh.md +0 -52
  661. package/dist/docs/reference/geometry/helicalThreadRidgeMesh.md +0 -72
  662. package/dist/docs/reference/geometry/helicalThreadSolidMesh.md +0 -106
  663. package/dist/docs/reference/geometry/joinTriangleMeshes.md +0 -40
  664. package/dist/docs/reference/geometry/loftMesh.md +0 -77
  665. package/dist/docs/reference/geometry/meshBounds.md +0 -39
  666. package/dist/docs/reference/geometry/optimizePlanarPatches.md +0 -95
  667. package/dist/docs/reference/geometry/preflightHeightfield.md +0 -43
  668. package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +0 -105
  669. package/dist/docs/reference/geometry/reverseTriangleMesh.md +0 -34
  670. package/dist/docs/reference/geometry/sweepMesh.md +0 -86
  671. package/dist/docs/reference/geometry/transformTriangleMesh.md +0 -46
  672. package/dist/docs/reference/geometry/validateTriangleMesh.md +0 -63
  673. package/dist/docs/reference/model/Anchor3.md +0 -55
  674. package/dist/docs/reference/model/AttachOptions.md +0 -69
  675. package/dist/docs/reference/model/Bounds2-type.md +0 -125
  676. package/dist/docs/reference/model/Bounds2Data.md +0 -44
  677. package/dist/docs/reference/model/Bounds2Input.md +0 -19
  678. package/dist/docs/reference/model/Bounds2Options.md +0 -70
  679. package/dist/docs/reference/model/Bounds3-type.md +0 -125
  680. package/dist/docs/reference/model/Bounds3Data.md +0 -44
  681. package/dist/docs/reference/model/Bounds3Input.md +0 -19
  682. package/dist/docs/reference/model/Bounds3Options.md +0 -70
  683. package/dist/docs/reference/model/BoxEdge.md +0 -15
  684. package/dist/docs/reference/model/BoxEdgeSelection.md +0 -19
  685. package/dist/docs/reference/model/BoxEdgeTreatments.md +0 -20
  686. package/dist/docs/reference/model/BoxOptions.md +0 -92
  687. package/dist/docs/reference/model/ChamferedEdgeTreatment.md +0 -35
  688. package/dist/docs/reference/model/CircleContourOptions.md +0 -21
  689. package/dist/docs/reference/model/CircularPrimitiveOptions.md +0 -64
  690. package/dist/docs/reference/model/Computed.md +0 -40
  691. package/dist/docs/reference/model/ComputedValue.md +0 -24
  692. package/dist/docs/reference/model/Contour.md +0 -24
  693. package/dist/docs/reference/model/CorrespondingComponent.md +0 -46
  694. package/dist/docs/reference/model/CorrespondingContour.md +0 -46
  695. package/dist/docs/reference/model/CorrespondingProfile.md +0 -22
  696. package/dist/docs/reference/model/CorrespondingProfileStation.md +0 -27
  697. package/dist/docs/reference/model/CylinderOptions.md +0 -58
  698. package/dist/docs/reference/model/EdgeTreatment.md +0 -22
  699. package/dist/docs/reference/model/EllipseContourOptions.md +0 -21
  700. package/dist/docs/reference/model/EndTreatments.md +0 -39
  701. package/dist/docs/reference/model/FinalizedModel.md +0 -131
  702. package/dist/docs/reference/model/FinalizedPart.md +0 -87
  703. package/dist/docs/reference/model/Frame3.md +0 -63
  704. package/dist/docs/reference/model/GeneratedPart.md +0 -97
  705. package/dist/docs/reference/model/GeometryResolution.md +0 -70
  706. package/dist/docs/reference/model/GeometrySamplingLimits.md +0 -62
  707. package/dist/docs/reference/model/GeometryToleranceOptions.md +0 -46
  708. package/dist/docs/reference/model/GridPatternOptions.md +0 -50
  709. package/dist/docs/reference/model/HeightfieldOptions.md +0 -67
  710. package/dist/docs/reference/model/HelicalThreadRidgeMeshOptions.md +0 -141
  711. package/dist/docs/reference/model/HelicalThreadSolidMeshPreflight.md +0 -59
  712. package/dist/docs/reference/model/ImmutableBuffer-type.md +0 -84
  713. package/dist/docs/reference/model/ImmutableTriangleMesh.md +0 -38
  714. package/dist/docs/reference/model/InternalThreadCutterOptions.md +0 -246
  715. package/dist/docs/reference/model/KnuckleHingeBaseSpec.md +0 -77
  716. package/dist/docs/reference/model/KnuckleHingeSamplingOptions.md +0 -47
  717. package/dist/docs/reference/model/KnuckleHingeSpec.md +0 -18
  718. package/dist/docs/reference/model/LinearPatternOptions.md +0 -39
  719. package/dist/docs/reference/model/LoftCorrespondence.md +0 -27
  720. package/dist/docs/reference/model/LoftOptions.md +0 -91
  721. package/dist/docs/reference/model/LoftPlacement.md +0 -73
  722. package/dist/docs/reference/model/MatchProfilesOptions.md +0 -35
  723. package/dist/docs/reference/model/ModelingLimits.md +0 -126
  724. package/dist/docs/reference/model/NumericArray.md +0 -14
  725. package/dist/docs/reference/model/Path2-type.md +0 -196
  726. package/dist/docs/reference/model/Path2Data.md +0 -50
  727. package/dist/docs/reference/model/Path2Input.md +0 -20
  728. package/dist/docs/reference/model/Path3-type.md +0 -196
  729. package/dist/docs/reference/model/Path3Data.md +0 -50
  730. package/dist/docs/reference/model/Path3Input.md +0 -20
  731. package/dist/docs/reference/model/PathLocation.md +0 -69
  732. package/dist/docs/reference/model/PathNormalGuide.md +0 -46
  733. package/dist/docs/reference/model/PathOptions.md +0 -38
  734. package/dist/docs/reference/model/PathPatternOptions.md +0 -48
  735. package/dist/docs/reference/model/PathResamplingOptions.md +0 -83
  736. package/dist/docs/reference/model/Pivot2Options.md +0 -28
  737. package/dist/docs/reference/model/Pivot3Options.md +0 -28
  738. package/dist/docs/reference/model/PolygonData.md +0 -44
  739. package/dist/docs/reference/model/PrimitiveAttachment.md +0 -41
  740. package/dist/docs/reference/model/PrimitiveAttachmentOptions.md +0 -110
  741. package/dist/docs/reference/model/PrintableThreadFit.md +0 -15
  742. package/dist/docs/reference/model/PrintableThreadFitPolicy.md +0 -51
  743. package/dist/docs/reference/model/ProfileComponent2.md +0 -46
  744. package/dist/docs/reference/model/ProfileContour2.md +0 -36
  745. package/dist/docs/reference/model/ProfileSpan2.md +0 -47
  746. package/dist/docs/reference/model/ProfiledEdgeTreatment.md +0 -41
  747. package/dist/docs/reference/model/RadialPatternOptions.md +0 -59
  748. package/dist/docs/reference/model/RadialSizing.md +0 -15
  749. package/dist/docs/reference/model/RadialSizingOptions.md +0 -40
  750. package/dist/docs/reference/model/RectangleContourOptions.md +0 -72
  751. package/dist/docs/reference/model/RectangleCornerTreatment.md +0 -40
  752. package/dist/docs/reference/model/RectangleCornerTreatments.md +0 -20
  753. package/dist/docs/reference/model/RegionData.md +0 -19
  754. package/dist/docs/reference/model/RevolveOptions.md +0 -94
  755. package/dist/docs/reference/model/RoundedEdgeTreatment.md +0 -96
  756. package/dist/docs/reference/model/SmoothEdgeTreatment.md +0 -76
  757. package/dist/docs/reference/model/SphereOptions.md +0 -20
  758. package/dist/docs/reference/model/StrokeCap.md +0 -16
  759. package/dist/docs/reference/model/StrokeJoin.md +0 -16
  760. package/dist/docs/reference/model/StrokeOptions.md +0 -91
  761. package/dist/docs/reference/model/SweepOptions.md +0 -116
  762. package/dist/docs/reference/model/SweepOrientation.md +0 -116
  763. package/dist/docs/reference/model/ThreadEndStyle.md +0 -15
  764. package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +0 -118
  765. package/dist/docs/reference/model/ThreadHandedness.md +0 -15
  766. package/dist/docs/reference/model/ThreadLeadInEnvelope.md +0 -15
  767. package/dist/docs/reference/model/ThreadLeadInShape.md +0 -15
  768. package/dist/docs/reference/model/ThreadProfile.md +0 -87
  769. package/dist/docs/reference/model/ThreadRidgeOptions.md +0 -19
  770. package/dist/docs/reference/model/ThreadedNutBevel.md +0 -15
  771. package/dist/docs/reference/model/ThreadedNutOptions.md +0 -274
  772. package/dist/docs/reference/model/ThreadedNutPreflight.md +0 -99
  773. package/dist/docs/reference/model/ThreadedNutShape.md +0 -15
  774. package/dist/docs/reference/model/ThreadedRodOptions.md +0 -246
  775. package/dist/docs/reference/model/TorusOptions.md +0 -110
  776. package/dist/docs/reference/model/Transform2-type.md +0 -257
  777. package/dist/docs/reference/model/Transform2Data.md +0 -16
  778. package/dist/docs/reference/model/Transform2Input.md +0 -21
  779. package/dist/docs/reference/model/Transform3-type.md +0 -297
  780. package/dist/docs/reference/model/Transform3Data.md +0 -19
  781. package/dist/docs/reference/model/Transform3Input.md +0 -21
  782. package/dist/docs/reference/model/TriangleMesh.md +0 -42
  783. package/dist/docs/reference/model/TriangleMeshAnalysis.md +0 -123
  784. package/dist/docs/reference/model/TriangleMeshMeasurements.md +0 -79
  785. package/dist/docs/reference/model/TubeOptions.md +0 -143
  786. package/dist/docs/reference/model/Vector2-type.md +0 -271
  787. package/dist/docs/reference/model/Vector2Data.md +0 -15
  788. package/dist/docs/reference/model/Vector2Input.md +0 -21
  789. package/dist/docs/reference/model/Vector3-type.md +0 -283
  790. package/dist/docs/reference/model/Vector3Data.md +0 -15
  791. package/dist/docs/reference/model/Vector3Input.md +0 -21
  792. package/dist/docs/reference/model/VectorTextLayout.md +0 -40
  793. package/dist/docs/reference/model/VectorTextMetrics.md +0 -100
  794. package/dist/docs/reference/model/anchor.md +0 -47
  795. package/dist/docs/reference/model/bounds2.md +0 -37
  796. package/dist/docs/reference/model/bounds3.md +0 -37
  797. package/dist/docs/reference/model/castSegment.md +0 -40
  798. package/dist/docs/reference/model/categories/bounds.md +0 -38
  799. package/dist/docs/reference/model/categories/contracts.md +0 -18
  800. package/dist/docs/reference/model/categories/core-values-errors.md +0 -30
  801. package/dist/docs/reference/model/categories/inspection.md +0 -29
  802. package/dist/docs/reference/model/categories/paths.md +0 -41
  803. package/dist/docs/reference/model/categories/resolution.md +0 -20
  804. package/dist/docs/reference/model/components.md +0 -71
  805. package/dist/docs/reference/model/compose.md +0 -31
  806. package/dist/docs/reference/model/distance.md +0 -45
  807. package/dist/docs/reference/model/immutableMesh.md +0 -44
  808. package/dist/docs/reference/model/inspectSection.md +0 -38
  809. package/dist/docs/reference/model/inspectSolid.md +0 -38
  810. package/dist/docs/reference/model/isEmpty.md +0 -39
  811. package/dist/docs/reference/model/path2.md +0 -54
  812. package/dist/docs/reference/model/path3.md +0 -49
  813. package/dist/docs/reference/model/split.md +0 -54
  814. package/dist/docs/reference/model/splitByPlane.md +0 -66
  815. package/dist/docs/reference/model/transform2.md +0 -46
  816. package/dist/docs/reference/model/transform3.md +0 -48
  817. package/dist/docs/reference/model/vector2.md +0 -40
  818. package/dist/docs/reference/model/vector3.md +0 -47
  819. package/dist/docs/reference/text/Bounds2Data.md +0 -34
  820. package/dist/docs/reference/text/Vector2Data.md +0 -7
  821. package/dist/docs/reference/text/VectorTextArcBaseline.md +0 -53
  822. package/dist/docs/reference/text/VectorTextLayout.md +0 -34
  823. package/dist/docs/reference/text/VectorTextLayoutOptions.md +0 -111
  824. package/dist/docs/reference/text/VectorTextMetrics.md +0 -94
  825. package/dist/docs/reference/text/VectorTextOptions.md +0 -50
  826. package/dist/engine/export-3mf.js +0 -116
  827. package/dist/engine/model-dependencies.js +0 -46
  828. package/dist/engine/session-graph.js +0 -449
  829. package/dist/geometry/profiles/profiles.js +0 -71
  830. /package/dist/engine/{primitive-profile-types.js → operations/primitives/profile-types.js} +0 -0
  831. /package/dist/{engine → geometry/mesh}/mesh-view-cache.js +0 -0
  832. /package/dist/geometry/profiles/{matched.js → match-profiles.js} +0 -0
@@ -21,11 +21,11 @@ or [rectangleProfile](../geometry/rectangleProfile.md) to retain identified loft
21
21
 
22
22
  **`options`** · [`RectangleOptions`](RectangleOptions.md) · Required
23
23
 
24
- - [`size`](RectangleOptions.md#size) · `number` \| [`Vector2Data`](Vector2Data.md) · Required
24
+ - [`size`](RectangleOptions.md#size) · `number` \| [`Vector2Input`](../geometry/Vector2Input.md) · Required
25
25
 
26
26
  Positive uniform size or explicit XY extents in millimetres.
27
27
 
28
- - [`attachment`](RectangleOptions.md#attachment) · [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md) · Optional
28
+ - [`attachment`](RectangleOptions.md#attachment) · [`PrimitiveAttachmentOptions`](../geometry/PrimitiveAttachmentOptions.md) · Optional
29
29
 
30
30
  Applied after local construction; Section attachment must preserve the XY plane.
31
31
 
@@ -33,11 +33,11 @@ or [rectangleProfile](../geometry/rectangleProfile.md) to retain identified loft
33
33
 
34
34
  Center on XY; otherwise the minimum corner is the origin. Defaults to true.
35
35
 
36
- - [`treatment`](RectangleOptions.md#treatment) · [`EdgeTreatment`](EdgeTreatment.md) \| [`RectangleCornerTreatments`](RectangleCornerTreatments.md) · Optional
36
+ - [`treatment`](RectangleOptions.md#treatment) · [`EdgeTreatment`](../geometry/EdgeTreatment.md) \| [`RectangleCornerTreatments`](../geometry/RectangleCornerTreatments.md) · Optional
37
37
 
38
38
  Uniform treatment or four corner treatments. Exact round segments describe a complete circle and must divide by four.
39
39
 
40
- - [`limits`](RectangleOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
40
+ - [`limits`](RectangleOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](../geometry/GeometrySamplingLimits.md)\> · Optional
41
41
 
42
42
  Explicit sampling ceiling for the complete output profile.
43
43
 
@@ -55,8 +55,14 @@ or [rectangleProfile](../geometry/rectangleProfile.md) to retain identified loft
55
55
 
56
56
  ## Guides
57
57
 
58
- - [Section, hole, offset, and extrusion](../../guides/recipes.md#section-hole-offset-and-extrusion)
59
- - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
60
- - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
58
+ - [Section, hole, offset, and extrusion](../../guides/profiles-and-extrusion.md#section-hole-offset-and-extrusion)
59
+ - [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
60
+ - [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
61
61
 
62
- Package: `@metamesh/modeling@0.17.0`.
62
+ ## Supported imports
63
+
64
+ ```ts
65
+ import { rectangle } from "@metamesh/modeling";
66
+ ```
67
+
68
+ Package: `@metamesh/modeling@0.19.0`.
@@ -32,8 +32,14 @@ regularPolygon({ radius: 10, sides: 6, sizing: "face" });
32
32
 
33
33
  ## Guides
34
34
 
35
- - [Section, hole, offset, and extrusion](../../guides/recipes.md#section-hole-offset-and-extrusion)
36
- - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
37
- - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
35
+ - [Section, hole, offset, and extrusion](../../guides/profiles-and-extrusion.md#section-hole-offset-and-extrusion)
36
+ - [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
37
+ - [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
38
38
 
39
- Package: `@metamesh/modeling@0.17.0`.
39
+ ## Supported imports
40
+
41
+ ```ts
42
+ import { regularPolygon } from "@metamesh/modeling";
43
+ ```
44
+
45
+ Package: `@metamesh/modeling@0.19.0`.
@@ -1,8 +1,8 @@
1
1
  # revolve
2
2
 
3
- Revolves explicit corresponding radial/Z contours around +Z, with caps for partial sweeps. Filled Sections use `section.revolve(options)`.
3
+ Revolves a filled Section or explicit corresponding radial/Z contours around +Z, with caps for partial sweeps. Use `section.revolve(options)` in fluent sequences, or this function for generic profile inputs.
4
4
 
5
- **revolve**(`shape`: [`CorrespondingProfile`](CorrespondingProfile.md), `options?`: [`RevolveOptions`](RevolveOptions.md)): [`Solid`](Solid.md)
5
+ **revolve**(`shape`: [`Section`](Section.md) \| [`CorrespondingProfile`](../geometry/CorrespondingProfile.md), `options?`: [`RevolveOptions`](../geometry/RevolveOptions.md)): [`Solid`](Solid.md)
6
6
 
7
7
 
8
8
 
@@ -21,34 +21,34 @@ revolve(profile!, { degrees: 270 });
21
21
 
22
22
  <a id="shape"></a>
23
23
 
24
- **`shape`** · [`CorrespondingProfile`](CorrespondingProfile.md) · Required
24
+ **`shape`** · [`Section`](Section.md) \| [`CorrespondingProfile`](../geometry/CorrespondingProfile.md) · Required
25
25
 
26
26
 
27
27
 
28
28
  <a id="options"></a>
29
29
 
30
- **`options`** · [`RevolveOptions`](RevolveOptions.md) · Optional
30
+ **`options`** · [`RevolveOptions`](../geometry/RevolveOptions.md) · Optional
31
31
 
32
- - [`segments`](RevolveOptions.md#segments) · `number` · Optional
32
+ - [`segments`](../geometry/RevolveOptions.md#segments) · `number` · Optional
33
33
 
34
34
  Exact circumferential segment count from three through the configured safety limit.
35
35
 
36
- This local topology override takes precedence over [CircularPrimitiveOptions.resolution](CircularPrimitiveOptions.md#resolution)
36
+ This local topology override takes precedence over [CircularPrimitiveOptions.resolution](../geometry/CircularPrimitiveOptions.md#resolution)
37
37
  and any active model-wide resolution policy.
38
38
 
39
- - [`resolution`](RevolveOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
39
+ - [`resolution`](../geometry/RevolveOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
40
40
 
41
41
  Operation-level physical tessellation policy over the active model-wide policy.
42
42
 
43
- - [`degrees`](RevolveOptions.md#degrees) · `number` · Optional · Default: `360`
43
+ - [`degrees`](../geometry/RevolveOptions.md#degrees) · `number` · Optional · Default: `360`
44
44
 
45
45
  Positive sweep in degrees, no greater than 360. Defaults to a full revolution;
46
46
  smaller sweeps form partial revolutions with end caps.
47
47
  Segment counts describe a complete circle and scale to this angular span. Native filled
48
48
  revolutions require at least three sweep intervals: adaptive sampling refines to that floor,
49
- while exact counts that imply fewer intervals reject. Pure revolveMesh supports one interval.
49
+ while exact counts that imply fewer intervals reject. Pure mesh.revolve supports one interval.
50
50
 
51
- - [`limits`](RevolveOptions.md#limits) · `Partial`\<[`ModelingLimits`](ModelingLimits.md)\> · Optional
51
+ - [`limits`](../geometry/RevolveOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
52
52
 
53
53
  Explicit output and sampling allocation ceilings.
54
54
 
@@ -61,15 +61,23 @@ revolve(profile!, { degrees: 270 });
61
61
 
62
62
  ## Related APIs
63
63
 
64
- - [CorrespondingProfile](CorrespondingProfile.md)
65
- - [RevolveOptions](RevolveOptions.md)
64
+ - [CorrespondingProfile](../geometry/CorrespondingProfile.md)
65
+ - [RevolveOptions](../geometry/RevolveOptions.md)
66
+ - [Section](Section.md)
66
67
  - [Solid](Solid.md)
67
68
 
68
69
  ## Guides
69
70
 
70
- - [Revolve a radial profile](../../guides/recipes.md#revolve-a-radial-profile)
71
- - [Rotation-minimizing path sweep](../../guides/recipes.md#rotation-minimizing-path-sweep)
72
- - [Matched-section loft](../../guides/recipes.md#matched-section-loft)
73
- - [Choose a modeling path](../../guides/concepts.md#choose-a-modeling-path)
71
+ - [Finish a profile with a hole](../../guides/profiles-and-extrusion.md#finish-a-profile-with-a-hole)
72
+ - [Revolve a radial profile](../../guides/profiles-and-extrusion.md#revolve-a-radial-profile)
73
+ - [Rotation-minimizing path sweep](../../guides/sweeps-and-lofts.md#rotation-minimizing-path-sweep)
74
+ - [Matched-section loft](../../guides/sweeps-and-lofts.md#matched-section-loft)
75
+ - [Choose a modeling path](../../guides/recipes.md#choose-a-technique)
74
76
 
75
- Package: `@metamesh/modeling@0.17.0`.
77
+ ## Supported imports
78
+
79
+ ```ts
80
+ import { revolve } from "@metamesh/modeling";
81
+ ```
82
+
83
+ Package: `@metamesh/modeling@0.19.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Imports a bounded closed indexed mesh.
4
4
 
5
- **solidFromMesh**(`mesh`: [`TriangleMesh`](TriangleMesh.md) \| [`ImmutableTriangleMesh`](ImmutableTriangleMesh.md)): [`Solid`](Solid.md)
5
+ **solidFromMesh**(`mesh`: [`TriangleMesh`](../geometry/TriangleMesh.md) \| [`ImmutableTriangleMesh`](../geometry/ImmutableTriangleMesh.md)): [`Solid`](Solid.md)
6
6
 
7
7
 
8
8
 
@@ -10,17 +10,18 @@ Imports a bounded closed indexed mesh.
10
10
 
11
11
  ```ts
12
12
  import { solidFromMesh } from "@metamesh/modeling";
13
- import { extrudeMesh, rectangleContour } from "@metamesh/modeling/geometry";
13
+ import * as mesh from "@metamesh/modeling/geometry/mesh";
14
+ import { rectangleContour } from "@metamesh/modeling/geometry";
14
15
 
15
- const mesh = extrudeMesh(rectangleContour({ size: [20, 12] }), { height: 6 });
16
- solidFromMesh(mesh);
16
+ const plate = mesh.extrude(rectangleContour({ size: [20, 12] }), { height: 6 });
17
+ solidFromMesh(plate);
17
18
  ```
18
19
 
19
20
  ## Parameters
20
21
 
21
22
  <a id="mesh"></a>
22
23
 
23
- **`mesh`** · [`TriangleMesh`](TriangleMesh.md) \| [`ImmutableTriangleMesh`](ImmutableTriangleMesh.md) · Required
24
+ **`mesh`** · [`TriangleMesh`](../geometry/TriangleMesh.md) \| [`ImmutableTriangleMesh`](../geometry/ImmutableTriangleMesh.md) · Required
24
25
 
25
26
 
26
27
 
@@ -31,12 +32,18 @@ solidFromMesh(mesh);
31
32
 
32
33
  ## Related APIs
33
34
 
34
- - [ImmutableTriangleMesh](ImmutableTriangleMesh.md)
35
+ - [ImmutableTriangleMesh](../geometry/ImmutableTriangleMesh.md)
35
36
  - [Solid](Solid.md)
36
- - [TriangleMesh](TriangleMesh.md)
37
+ - [TriangleMesh](../geometry/TriangleMesh.md)
37
38
 
38
39
  ## Guides
39
40
 
40
- - [Solid inspection](../../guides/recipes.md#solid-inspection)
41
+ - [Solid inspection](../../guides/resolution-and-inspection.md#solid-inspection)
41
42
 
42
- Package: `@metamesh/modeling@0.17.0`.
43
+ ## Supported imports
44
+
45
+ ```ts
46
+ import { solidFromMesh } from "@metamesh/modeling";
47
+ ```
48
+
49
+ Package: `@metamesh/modeling@0.19.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Origin-centered sphere.
4
4
 
5
- **sphere**(`options`: [`SphereOptions`](SphereOptions.md)): [`Solid`](Solid.md)
5
+ **sphere**(`options`: [`SphereOptions`](../geometry/SphereOptions.md)): [`Solid`](Solid.md)
6
6
 
7
7
 
8
8
 
@@ -20,7 +20,7 @@ sphere({ diameter: 20 });
20
20
 
21
21
  <a id="options"></a>
22
22
 
23
- **`options`** · [`SphereOptions`](SphereOptions.md) · Required
23
+ **`options`** · [`SphereOptions`](../geometry/SphereOptions.md) · Required
24
24
 
25
25
 
26
26
 
@@ -32,11 +32,18 @@ sphere({ diameter: 20 });
32
32
  ## Related APIs
33
33
 
34
34
  - [Solid](Solid.md)
35
- - [SphereOptions](SphereOptions.md)
35
+ - [SphereOptions](../geometry/SphereOptions.md)
36
36
 
37
37
  ## Guides
38
38
 
39
- - [Choose a primitive](../../guides/recipes.md#choose-a-primitive)
40
- - [Treated boxes, frustums, and mirrored arrays](../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
39
+ - [Choose a primitive](../../guides/profiles-and-extrusion.md#choose-a-primitive)
40
+ - [Treated boxes, frustums, and mirrored arrays](../../guides/profiles-and-extrusion.md#treated-boxes-frustums-and-mirrored-arrays)
41
+ - [Finish a profile with a hole](../../guides/profiles-and-extrusion.md#finish-a-profile-with-a-hole)
41
42
 
42
- Package: `@metamesh/modeling@0.17.0`.
43
+ ## Supported imports
44
+
45
+ ```ts
46
+ import { sphere } from "@metamesh/modeling";
47
+ ```
48
+
49
+ Package: `@metamesh/modeling@0.19.0`.
@@ -24,23 +24,23 @@ star({ outerRadius: 12, innerRadius: 6, points: 5 });
24
24
 
25
25
  - [`innerRadius`](StarOptions.md#innerradius) · `number` · Required
26
26
 
27
- Positive inner vertex radius, smaller than the outer radius.
27
+ Positive inner vertex radius in millimetres, smaller than the outer radius.
28
28
 
29
29
  - [`points`](StarOptions.md#points) · `number` · Required
30
30
 
31
- Integer outer point count from three through 50000.
31
+ Integer outer point count, at least three; output contains twice as many vertices.
32
32
 
33
- - [`attachment`](StarOptions.md#attachment) · [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md) · Optional
33
+ - [`attachment`](StarOptions.md#attachment) · [`PrimitiveAttachmentOptions`](../geometry/PrimitiveAttachmentOptions.md) · Optional
34
34
 
35
35
  Applied after local construction; Section attachment must preserve the XY plane.
36
36
 
37
- - [`limits`](StarOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
37
+ - [`rotation`](StarOptions.md#rotation) · `number` · Optional
38
38
 
39
- Explicit sampling ceilings, bounded by the host policy.
39
+ Counterclockwise rotation in degrees; defaults to zero with an outer vertex on +X.
40
40
 
41
- - [`rotation`](StarOptions.md#rotation) · `number` · Optional
41
+ - [`limits`](StarOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](../geometry/GeometrySamplingLimits.md)\> · Optional
42
42
 
43
- Initial counterclockwise rotation in degrees; defaults to zero.
43
+ Explicit sampling ceilings, bounded by the host policy during modeling.
44
44
 
45
45
 
46
46
 
@@ -56,8 +56,14 @@ star({ outerRadius: 12, innerRadius: 6, points: 5 });
56
56
 
57
57
  ## Guides
58
58
 
59
- - [Section, hole, offset, and extrusion](../../guides/recipes.md#section-hole-offset-and-extrusion)
60
- - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
61
- - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
59
+ - [Section, hole, offset, and extrusion](../../guides/profiles-and-extrusion.md#section-hole-offset-and-extrusion)
60
+ - [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
61
+ - [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
62
+
63
+ ## Supported imports
64
+
65
+ ```ts
66
+ import { star } from "@metamesh/modeling";
67
+ ```
62
68
 
63
- Package: `@metamesh/modeling@0.17.0`.
69
+ Package: `@metamesh/modeling@0.19.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Creates a centered-width native Section along a sampled XY path.
4
4
 
5
- **stroke**(`path`: [`Path2Input`](Path2Input.md), `options`: [`StrokeOptions`](StrokeOptions.md)): [`Section`](Section.md)
5
+ **stroke**(`path`: [`Path2Input`](../geometry/Path2Input.md), `options`: [`StrokeOptions`](../geometry/StrokeOptions.md)): [`Section`](Section.md)
6
6
 
7
7
 
8
8
 
@@ -20,35 +20,35 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
20
20
 
21
21
  <a id="path"></a>
22
22
 
23
- **`path`** · [`Path2Input`](Path2Input.md) · Required
23
+ **`path`** · [`Path2Input`](../geometry/Path2Input.md) · Required
24
24
 
25
25
 
26
26
 
27
27
  <a id="options"></a>
28
28
 
29
- **`options`** · [`StrokeOptions`](StrokeOptions.md) · Required
29
+ **`options`** · [`StrokeOptions`](../geometry/StrokeOptions.md) · Required
30
30
 
31
- - [`width`](StrokeOptions.md#width) · `number` · Required
31
+ - [`width`](../geometry/StrokeOptions.md#width) · `number` · Required
32
32
 
33
33
  Positive total stroke width in millimetres, centered on the sampled path.
34
34
 
35
- - [`limits`](StrokeOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
35
+ - [`limits`](../geometry/StrokeOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](../geometry/GeometrySamplingLimits.md)\> · Optional
36
36
 
37
37
  Explicit path, circular and expanded-profile allocation ceilings.
38
38
 
39
- - [`closed`](StrokeOptions.md#closed) · `boolean` · Optional
39
+ - [`closed`](../geometry/StrokeOptions.md#closed) · `boolean` · Optional
40
40
 
41
41
  Raw point closure defaults to false; a Path2 supplies its closure and rejects conflicts.
42
42
 
43
- - [`cap`](StrokeOptions.md#cap) · [`StrokeCap`](StrokeCap.md) · Optional
43
+ - [`cap`](../geometry/StrokeOptions.md#cap) · [`StrokeCap`](../geometry/StrokeCap.md) · Optional
44
44
 
45
45
  End-cap treatment for an open path. Ignored for closed paths. Default: `butt`.
46
46
 
47
- - [`join`](StrokeOptions.md#join) · [`StrokeJoin`](StrokeJoin.md) · Optional
47
+ - [`join`](../geometry/StrokeOptions.md#join) · [`StrokeJoin`](../geometry/StrokeJoin.md) · Optional
48
48
 
49
49
  Corner treatment; miters exceeding SVG's default limit of 4 become bevels. Default: `miter`.
50
50
 
51
- - [`resolution`](StrokeOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
51
+ - [`resolution`](../geometry/StrokeOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
52
52
 
53
53
  Physical tessellation policy for round caps and joins.
54
54
 
@@ -61,14 +61,20 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
61
61
 
62
62
  ## Related APIs
63
63
 
64
- - [Path2Input](Path2Input.md)
64
+ - [Path2Input](../geometry/Path2Input.md)
65
65
  - [Section](Section.md)
66
- - [StrokeOptions](StrokeOptions.md)
66
+ - [StrokeOptions](../geometry/StrokeOptions.md)
67
67
 
68
68
  ## Guides
69
69
 
70
- - [Section, hole, offset, and extrusion](../../guides/recipes.md#section-hole-offset-and-extrusion)
71
- - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
72
- - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
70
+ - [Section, hole, offset, and extrusion](../../guides/profiles-and-extrusion.md#section-hole-offset-and-extrusion)
71
+ - [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
72
+ - [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
73
73
 
74
- Package: `@metamesh/modeling@0.17.0`.
74
+ ## Supported imports
75
+
76
+ ```ts
77
+ import { stroke } from "@metamesh/modeling";
78
+ ```
79
+
80
+ Package: `@metamesh/modeling@0.19.0`.
@@ -24,7 +24,7 @@ svgPathSection("M0 0H20V12H0Z", { origin: "center", scale: 1 });
24
24
 
25
25
  **`options`** · [`SvgPathSectionOptions`](SvgPathSectionOptions.md) · Optional
26
26
 
27
- - [`limits`](SvgPathSectionOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
27
+ - [`limits`](SvgPathSectionOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](../geometry/GeometrySamplingLimits.md)\> · Optional
28
28
 
29
29
  Local allocation ceilings may only lower the configured engine policy.
30
30
 
@@ -32,7 +32,7 @@ svgPathSection("M0 0H20V12H0Z", { origin: "center", scale: 1 });
32
32
 
33
33
  Nonzero or even-odd filled-contour rule; defaults to nonzero.
34
34
 
35
- - [`resolution`](SvgPathSectionOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
35
+ - [`resolution`](SvgPathSectionOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
36
36
 
37
37
  Local physical sampling policy; exact interval counts take precedence.
38
38
 
@@ -58,8 +58,14 @@ svgPathSection("M0 0H20V12H0Z", { origin: "center", scale: 1 });
58
58
 
59
59
  ## Guides
60
60
 
61
- - [Section, hole, offset, and extrusion](../../guides/recipes.md#section-hole-offset-and-extrusion)
62
- - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
63
- - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
61
+ - [Section, hole, offset, and extrusion](../../guides/profiles-and-extrusion.md#section-hole-offset-and-extrusion)
62
+ - [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
63
+ - [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
64
64
 
65
- Package: `@metamesh/modeling@0.17.0`.
65
+ ## Supported imports
66
+
67
+ ```ts
68
+ import { svgPathSection } from "@metamesh/modeling";
69
+ ```
70
+
71
+ Package: `@metamesh/modeling@0.19.0`.
@@ -27,11 +27,11 @@ svgSection(
27
27
 
28
28
  **`options`** · [`SvgSectionOptions`](SvgSectionOptions.md) · Optional
29
29
 
30
- - [`fit`](SvgSectionOptions.md#fit) · [`Bounds2Input`](Bounds2Input.md) · Optional
30
+ - [`fit`](SvgSectionOptions.md#fit) · [`Bounds2Input`](../geometry/Bounds2Input.md) · Optional
31
31
 
32
32
  Fit painted bounds uniformly inside positioned XY millimetre bounds; adaptive resolution applies at the fitted size.
33
33
 
34
- - [`limits`](SvgSectionOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
34
+ - [`limits`](SvgSectionOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](../geometry/GeometrySamplingLimits.md)\> · Optional
35
35
 
36
36
  Local allocation ceilings may only lower the configured engine policy.
37
37
 
@@ -39,7 +39,7 @@ svgSection(
39
39
 
40
40
  Exact circular tessellation count overriding physical sampling.
41
41
 
42
- - [`resolution`](SvgSectionOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
42
+ - [`resolution`](SvgSectionOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
43
43
 
44
44
  Local physical sampling policy; exact interval counts take precedence.
45
45
 
@@ -61,8 +61,14 @@ svgSection(
61
61
 
62
62
  ## Guides
63
63
 
64
- - [Section, hole, offset, and extrusion](../../guides/recipes.md#section-hole-offset-and-extrusion)
65
- - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
66
- - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
64
+ - [Section, hole, offset, and extrusion](../../guides/profiles-and-extrusion.md#section-hole-offset-and-extrusion)
65
+ - [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
66
+ - [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
67
67
 
68
- Package: `@metamesh/modeling@0.17.0`.
68
+ ## Supported imports
69
+
70
+ ```ts
71
+ import { svgSection } from "@metamesh/modeling";
72
+ ```
73
+
74
+ Package: `@metamesh/modeling@0.19.0`.
@@ -1,8 +1,8 @@
1
1
  # sweep
2
2
 
3
- Sweeps explicit corresponding contours using the selected frame policy. Filled Sections use `section.sweep(path, options)`.
3
+ Sweeps a filled Section or explicit corresponding contours using the selected frame policy. Use `section.sweep(path, options)` in fluent sequences, or this function for generic profile inputs.
4
4
 
5
- **sweep**(`shape`: [`CorrespondingProfile`](CorrespondingProfile.md), `path`: [`Path3Input`](Path3Input.md), `options?`: [`SweepOptions`](SweepOptions.md)): [`Solid`](Solid.md)
5
+ **sweep**(`shape`: [`Section`](Section.md) \| [`CorrespondingProfile`](../geometry/CorrespondingProfile.md), `path`: [`Path3Input`](../geometry/Path3Input.md), `options?`: [`SweepOptions`](../geometry/SweepOptions.md)): [`Solid`](Solid.md)
6
6
 
7
7
 
8
8
 
@@ -22,49 +22,49 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
22
22
 
23
23
  <a id="shape"></a>
24
24
 
25
- **`shape`** · [`CorrespondingProfile`](CorrespondingProfile.md) · Required
25
+ **`shape`** · [`Section`](Section.md) \| [`CorrespondingProfile`](../geometry/CorrespondingProfile.md) · Required
26
26
 
27
27
 
28
28
 
29
29
  <a id="path"></a>
30
30
 
31
- **`path`** · [`Path3Input`](Path3Input.md) · Required
31
+ **`path`** · [`Path3Input`](../geometry/Path3Input.md) · Required
32
32
 
33
33
 
34
34
 
35
35
  <a id="options"></a>
36
36
 
37
- **`options`** · [`SweepOptions`](SweepOptions.md) · Optional
37
+ **`options`** · [`SweepOptions`](../geometry/SweepOptions.md) · Optional
38
38
 
39
- - [`closed`](SweepOptions.md#closed) · `boolean` · Optional
39
+ - [`closed`](../geometry/SweepOptions.md#closed) · `boolean` · Optional
40
40
 
41
41
  Raw point closure defaults to false; a Path3 supplies its closure and rejects conflicts.
42
42
 
43
- - [`limits`](SweepOptions.md#limits) · `Partial`\<[`ModelingLimits`](ModelingLimits.md)\> · Optional
43
+ - [`limits`](../geometry/SweepOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
44
44
 
45
45
  Explicit output and sampling allocation ceilings.
46
46
 
47
- - [`orientation`](SweepOptions.md#orientation) · [`SweepOrientation`](SweepOrientation.md) · Optional
47
+ - [`orientation`](../geometry/SweepOptions.md#orientation) · [`SweepOrientation`](../geometry/SweepOrientation.md) · Optional
48
48
 
49
49
  Explicit frame policy; default transport minimizes rotations, initially projecting +X then +Y then +Z.
50
50
 
51
- - [`resolution`](SweepOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
51
+ - [`resolution`](../geometry/SweepOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
52
52
 
53
53
  Physical sampling of nonzero twist; inserted stations retain authored station controls.
54
54
 
55
- - [`twist`](SweepOptions.md#twist) · `number` · Optional
55
+ - [`twist`](../geometry/SweepOptions.md#twist) · `number` · Optional
56
56
 
57
57
  Total additional profile rotation in degrees, with progression selected by twistBy.
58
58
 
59
- - [`twistBy`](SweepOptions.md#twistby) · `"length"` \| `"stations"` · Optional
59
+ - [`twistBy`](../geometry/SweepOptions.md#twistby) · `"length"` \| `"stations"` · Optional
60
60
 
61
61
  Twist advances by physical path length (default), or normalized authored station position, including a closed seam gap.
62
62
 
63
- - [`scale`](SweepOptions.md#scale) · `number` \| [`Vector2Input`](Vector2Input.md) \| readonly [`Vector2Input`](Vector2Input.md)[] · Optional
63
+ - [`scale`](../geometry/SweepOptions.md#scale) · `number` \| [`Vector2Input`](../geometry/Vector2Input.md) \| readonly [`Vector2Input`](../geometry/Vector2Input.md)[] · Optional
64
64
 
65
65
  Positive uniform/XY scale, or one XY pair per path station. Defaults to one.
66
66
 
67
- - [`seamProfileOffset`](SweepOptions.md#seamprofileoffset) · `number` · Optional
67
+ - [`seamProfileOffset`](../geometry/SweepOptions.md#seamprofileoffset) · `number` · Optional
68
68
 
69
69
  Corresponding point-index advance at a rotationally equivalent closed seam.
70
70
 
@@ -77,16 +77,24 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
77
77
 
78
78
  ## Related APIs
79
79
 
80
- - [CorrespondingProfile](CorrespondingProfile.md)
81
- - [Path3Input](Path3Input.md)
80
+ - [CorrespondingProfile](../geometry/CorrespondingProfile.md)
81
+ - [Path3Input](../geometry/Path3Input.md)
82
+ - [Section](Section.md)
82
83
  - [Solid](Solid.md)
83
- - [SweepOptions](SweepOptions.md)
84
+ - [SweepOptions](../geometry/SweepOptions.md)
84
85
 
85
86
  ## Guides
86
87
 
87
- - [Revolve a radial profile](../../guides/recipes.md#revolve-a-radial-profile)
88
- - [Rotation-minimizing path sweep](../../guides/recipes.md#rotation-minimizing-path-sweep)
89
- - [Matched-section loft](../../guides/recipes.md#matched-section-loft)
90
- - [Choose a modeling path](../../guides/concepts.md#choose-a-modeling-path)
88
+ - [Finish a profile with a hole](../../guides/profiles-and-extrusion.md#finish-a-profile-with-a-hole)
89
+ - [Revolve a radial profile](../../guides/profiles-and-extrusion.md#revolve-a-radial-profile)
90
+ - [Rotation-minimizing path sweep](../../guides/sweeps-and-lofts.md#rotation-minimizing-path-sweep)
91
+ - [Matched-section loft](../../guides/sweeps-and-lofts.md#matched-section-loft)
92
+ - [Choose a modeling path](../../guides/recipes.md#choose-a-technique)
91
93
 
92
- Package: `@metamesh/modeling@0.17.0`.
94
+ ## Supported imports
95
+
96
+ ```ts
97
+ import { sweep } from "@metamesh/modeling";
98
+ ```
99
+
100
+ Package: `@metamesh/modeling@0.19.0`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Consumes a previously prepared layout; never shapes or fetches a font.
4
4
 
5
- **textSection**(`layout`: [`VectorTextLayout`](VectorTextLayout.md), `options?`: [`TextSectionOptions`](TextSectionOptions.md)): [`Section`](Section.md)
5
+ **textSection**(`layout`: [`VectorTextLayout`](../geometry/VectorTextLayout.md), `options?`: [`TextSectionOptions`](TextSectionOptions.md)): [`Section`](Section.md)
6
6
 
7
7
 
8
8
 
@@ -19,7 +19,7 @@ function labelSection(layout: VectorTextLayout) {
19
19
 
20
20
  <a id="layout"></a>
21
21
 
22
- **`layout`** · [`VectorTextLayout`](VectorTextLayout.md) · Required
22
+ **`layout`** · [`VectorTextLayout`](../geometry/VectorTextLayout.md) · Required
23
23
 
24
24
 
25
25
 
@@ -27,11 +27,11 @@ function labelSection(layout: VectorTextLayout) {
27
27
 
28
28
  **`options`** · [`TextSectionOptions`](TextSectionOptions.md) · Optional
29
29
 
30
- - [`limits`](TextSectionOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
30
+ - [`limits`](TextSectionOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](../geometry/GeometrySamplingLimits.md)\> · Optional
31
31
 
32
32
  Local allocation ceilings may only lower the configured engine policy.
33
33
 
34
- - [`resolution`](TextSectionOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
34
+ - [`resolution`](TextSectionOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
35
35
 
36
36
  Local physical sampling policy; exact interval counts take precedence.
37
37
 
@@ -46,12 +46,18 @@ function labelSection(layout: VectorTextLayout) {
46
46
 
47
47
  - [Section](Section.md)
48
48
  - [TextSectionOptions](TextSectionOptions.md)
49
- - [VectorTextLayout](VectorTextLayout.md)
49
+ - [VectorTextLayout](../geometry/VectorTextLayout.md)
50
50
 
51
51
  ## Guides
52
52
 
53
- - [Section, hole, offset, and extrusion](../../guides/recipes.md#section-hole-offset-and-extrusion)
54
- - [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
55
- - [Text and font variability](../../guides/concepts.md#text-and-font-variability)
53
+ - [Section, hole, offset, and extrusion](../../guides/profiles-and-extrusion.md#section-hole-offset-and-extrusion)
54
+ - [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
55
+ - [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
56
56
 
57
- Package: `@metamesh/modeling@0.17.0`.
57
+ ## Supported imports
58
+
59
+ ```ts
60
+ import { textSection } from "@metamesh/modeling";
61
+ ```
62
+
63
+ Package: `@metamesh/modeling@0.19.0`.