@metamesh/modeling 0.19.0 → 0.20.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.
- package/CHANGELOG.md +49 -0
- package/README.md +34 -18
- package/dist/api/engine.d.ts +217 -121
- package/dist/api/export.d.ts +123 -79
- package/dist/api/geometry.d.ts +406 -2102
- package/dist/api/index.d.ts +472 -1798
- package/dist/api/math.d.ts +315 -0
- package/dist/api/mechanical.d.ts +1041 -0
- package/dist/api/mesh.d.ts +360 -88
- package/dist/api/text.d.ts +24 -44
- package/dist/docs/guides/concepts.md +67 -33
- package/dist/docs/guides/exporting.md +88 -0
- package/dist/docs/guides/fonts.md +5 -3
- package/dist/docs/guides/fundamentals.md +12 -24
- package/dist/docs/guides/generation.md +24 -16
- package/dist/docs/guides/geometry-values.md +192 -134
- package/dist/docs/guides/hosting.md +51 -96
- package/dist/docs/guides/profiles-and-extrusion.md +159 -11
- package/dist/docs/guides/recipes.md +121 -28
- package/dist/docs/guides/resolution-and-inspection.md +43 -23
- package/dist/docs/guides/solid-joins.md +12 -2
- package/dist/docs/guides/standalone-model.md +4 -2
- package/dist/docs/guides/svg-and-text.md +76 -39
- package/dist/docs/guides/sweeps-and-lofts.md +88 -44
- package/dist/docs/guides/transforms-and-placement.md +113 -103
- package/dist/docs/guides/workers.md +166 -0
- package/dist/docs/manifest.json +4133 -4153
- package/dist/docs/reference/engine/GenerationOptions.md +2 -3
- package/dist/docs/reference/engine/GeometryResource.md +6 -6
- package/dist/docs/reference/engine/ModelDependencies.md +2 -2
- package/dist/docs/reference/engine/ModelEngine.md +2 -3
- package/dist/docs/reference/engine/ModelEngineOptions.md +2 -7
- package/dist/docs/reference/engine/ModelPart.md +6 -6
- package/dist/docs/reference/engine/ModelResult.md +2 -2
- package/dist/docs/reference/engine/ModelRunArguments.md +2 -2
- package/dist/docs/reference/engine/ModelRunOptions.md +2 -3
- package/dist/docs/reference/engine/ModelSession.md +2 -2
- package/dist/docs/reference/engine/SessionOptions.md +2 -3
- package/dist/docs/reference/engine/categories/host-lifecycle.md +9 -3
- package/dist/docs/reference/engine/checkModel.md +6 -2
- package/dist/docs/reference/engine/createModelEngine.md +5 -3
- package/dist/docs/reference/engine/defaultModelingLimits.md +4 -11
- package/dist/docs/reference/engine/modelingWasmUrl.md +2 -2
- package/dist/docs/reference/engine.md +7 -1
- package/dist/docs/reference/export/Export3mfOptions.md +2 -6
- package/dist/docs/reference/export/ExportDiagnostic.md +2 -14
- package/dist/docs/reference/export/ExportFormat.md +2 -14
- package/dist/docs/reference/export/ExportGeometry.md +3 -15
- package/dist/docs/reference/export/ExportGlbOptions.md +14 -18
- package/dist/docs/reference/export/ExportLimits.md +2 -14
- package/dist/docs/reference/export/ExportMaterial.md +2 -14
- package/dist/docs/reference/export/ExportOptions.md +2 -14
- package/dist/docs/reference/export/ExportPart.md +2 -14
- package/dist/docs/reference/export/ExportReport.md +2 -14
- package/dist/docs/reference/export/ExportSink.md +5 -15
- package/dist/docs/reference/export/ExportStlOptions.md +2 -6
- package/dist/docs/reference/export/ExportedFile.md +14 -26
- package/dist/docs/reference/export/categories/mesh-serialization.md +9 -3
- package/dist/docs/reference/export/defaultExportLimits.md +2 -2
- package/dist/docs/reference/export/export3mf.md +4 -6
- package/dist/docs/reference/export/exportGlb.md +8 -10
- package/dist/docs/reference/export/exportStl.md +4 -6
- package/dist/docs/reference/export/write3mf.md +6 -6
- package/dist/docs/reference/export/writeGlb.md +10 -10
- package/dist/docs/reference/export/writeStl.md +6 -6
- package/dist/docs/reference/export.md +9 -3
- package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +4 -4
- package/dist/docs/reference/geometry/Anchor3-type.md +3 -7
- package/dist/docs/reference/geometry/Anchor3Options.md +70 -0
- package/dist/docs/reference/geometry/ArcCurve2.md +3 -3
- package/dist/docs/reference/geometry/ArcCurve3.md +3 -3
- package/dist/docs/reference/geometry/AttachOptions.md +4 -9
- package/dist/docs/reference/geometry/Bounds2-type.md +9 -30
- package/dist/docs/reference/geometry/Bounds2Data.md +2 -19
- package/dist/docs/reference/geometry/Bounds2Input.md +2 -10
- package/dist/docs/reference/geometry/Bounds2Options.md +2 -6
- package/dist/docs/reference/geometry/Bounds3-type.md +9 -30
- package/dist/docs/reference/geometry/Bounds3Data.md +2 -15
- package/dist/docs/reference/geometry/Bounds3Input.md +2 -10
- package/dist/docs/reference/geometry/Bounds3Options.md +2 -6
- package/dist/docs/reference/geometry/BoundsFit2.md +2 -2
- package/dist/docs/reference/geometry/BoundsFit3.md +2 -2
- package/dist/docs/reference/geometry/BoundsFitOptions.md +2 -2
- package/dist/docs/reference/geometry/BoxAnchorFace.md +3 -3
- package/dist/docs/reference/geometry/BoxAnchorOptions.md +3 -3
- package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +3 -7
- package/dist/docs/reference/geometry/CircleContourOptions.md +3 -7
- package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +3 -12
- package/dist/docs/reference/geometry/CircularResolutionOptions.md +2 -2
- package/dist/docs/reference/geometry/CircularSampling.md +2 -2
- package/dist/docs/reference/geometry/CircularSamplingOptions.md +2 -2
- package/dist/docs/reference/geometry/Contour.md +4 -9
- package/dist/docs/reference/geometry/ContourCurve.md +3 -3
- package/dist/docs/reference/geometry/ContourPoint.md +3 -3
- package/dist/docs/reference/geometry/ContourSegment.md +3 -3
- package/dist/docs/reference/geometry/CorrespondingComponent.md +3 -7
- package/dist/docs/reference/geometry/CorrespondingContour.md +3 -7
- package/dist/docs/reference/geometry/CorrespondingProfile.md +3 -7
- package/dist/docs/reference/geometry/CorrespondingProfileStation.md +4 -8
- package/dist/docs/reference/geometry/CubicBezierCurve2.md +3 -3
- package/dist/docs/reference/geometry/CubicBezierCurve3.md +3 -3
- package/dist/docs/reference/geometry/Curve2.md +3 -3
- package/dist/docs/reference/geometry/Curve3.md +3 -3
- package/dist/docs/reference/geometry/CurveSamplingOptions.md +3 -11
- package/dist/docs/reference/geometry/CylinderAnchorFace.md +3 -3
- package/dist/docs/reference/geometry/CylinderAnchorOptions.md +4 -4
- package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +2 -2
- package/dist/docs/reference/geometry/EdgeTreatment.md +2 -6
- package/dist/docs/reference/geometry/EllipseContourOptions.md +3 -7
- package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +9 -18
- package/dist/docs/reference/geometry/FittedTextLayout.md +2 -2
- package/dist/docs/reference/geometry/{Frame3.md → Frame3-type.md} +4 -11
- package/dist/docs/reference/geometry/Frame3Options.md +69 -0
- package/dist/docs/reference/geometry/GeometryError.md +2 -6
- package/dist/docs/reference/geometry/GeometryErrorCode.md +2 -6
- package/dist/docs/reference/geometry/GeometryErrorContext.md +2 -6
- package/dist/docs/reference/geometry/GeometryResolution.md +2 -10
- package/dist/docs/reference/geometry/GeometrySamplingLimits.md +3 -11
- package/dist/docs/reference/geometry/GeometryToleranceOptions.md +3 -11
- package/dist/docs/reference/geometry/GridPatternOptions.md +7 -9
- package/dist/docs/reference/geometry/ImmutableBuffer-type.md +2 -10
- package/dist/docs/reference/geometry/LineCurve2.md +3 -3
- package/dist/docs/reference/geometry/LineCurve3.md +3 -3
- package/dist/docs/reference/geometry/LinearPatternOptions.md +2 -6
- package/dist/docs/reference/geometry/LoftPlacement.md +13 -21
- package/dist/docs/reference/geometry/MatchProfilesOptions.md +3 -7
- package/dist/docs/reference/geometry/ModelingLimits.md +2 -14
- package/dist/docs/reference/geometry/NumericArray.md +2 -10
- package/dist/docs/reference/geometry/Path2-type.md +153 -12
- package/dist/docs/reference/geometry/Path2Data.md +3 -11
- package/dist/docs/reference/geometry/Path2Input.md +3 -11
- package/dist/docs/reference/geometry/Path3-type.md +153 -12
- package/dist/docs/reference/geometry/Path3Data.md +3 -11
- package/dist/docs/reference/geometry/Path3Input.md +3 -11
- package/dist/docs/reference/geometry/PathFrame.md +3 -3
- package/dist/docs/reference/geometry/PathLocation.md +3 -11
- package/dist/docs/reference/geometry/PathNormalGuide.md +4 -12
- package/dist/docs/reference/geometry/PathOptions.md +3 -7
- package/dist/docs/reference/geometry/PathPatternOptions.md +3 -7
- package/dist/docs/reference/geometry/PathPlacement.md +5 -5
- package/dist/docs/reference/geometry/PathResamplingOptions.md +3 -11
- package/dist/docs/reference/geometry/PathStation.md +87 -0
- package/dist/docs/reference/geometry/PathSubdivisionOptions.md +44 -0
- package/dist/docs/reference/geometry/Pivot2Options.md +3 -11
- package/dist/docs/reference/geometry/Pivot3Options.md +3 -11
- package/dist/docs/reference/geometry/PolygonData.md +4 -8
- package/dist/docs/reference/geometry/PolylineResamplingOptions.md +3 -3
- package/dist/docs/reference/geometry/Profile.md +3 -4
- package/dist/docs/reference/geometry/ProfileComponent2.md +3 -7
- package/dist/docs/reference/geometry/ProfileContour2.md +3 -7
- package/dist/docs/reference/geometry/ProfileSpan2.md +3 -7
- package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +5 -8
- package/dist/docs/reference/geometry/RadialPatternOptions.md +2 -6
- package/dist/docs/reference/geometry/RadialSizing.md +2 -6
- package/dist/docs/reference/geometry/RadialSizingOptions.md +2 -6
- package/dist/docs/reference/geometry/RectangleContourOptions.md +4 -7
- package/dist/docs/reference/geometry/RectangleCornerTreatment.md +3 -7
- package/dist/docs/reference/geometry/RectangleCornerTreatments.md +3 -7
- package/dist/docs/reference/geometry/RectangleProfileOptions.md +3 -3
- package/dist/docs/reference/geometry/RegionData.md +3 -7
- package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +3 -3
- package/dist/docs/reference/geometry/ResolvedGeometryResolution.md +71 -0
- package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +2 -2
- package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +2 -6
- package/dist/docs/reference/geometry/RowLayoutOptions.md +2 -2
- package/dist/docs/reference/geometry/SampleContourOptions.md +3 -3
- package/dist/docs/reference/geometry/SampleHelixOptions.md +3 -3
- package/dist/docs/reference/geometry/SampleSideProfileOptions.md +3 -3
- package/dist/docs/reference/geometry/SampledCurve2.md +3 -3
- package/dist/docs/reference/geometry/SampledCurve3.md +3 -3
- package/dist/docs/reference/geometry/SideProfileCurve.md +3 -3
- package/dist/docs/reference/geometry/SideProfilePoint.md +3 -3
- package/dist/docs/reference/geometry/SideProfileSegment.md +3 -3
- package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +2 -6
- package/dist/docs/reference/geometry/SplineOptions.md +69 -0
- package/dist/docs/reference/geometry/StarContourOptions.md +7 -7
- package/dist/docs/reference/geometry/StrokeCap.md +2 -6
- package/dist/docs/reference/geometry/StrokeJoin.md +2 -6
- package/dist/docs/reference/geometry/StrokeOptions.md +3 -7
- package/dist/docs/reference/geometry/SvgImportOptions.md +4 -4
- package/dist/docs/reference/geometry/SvgRegionPreflight.md +2 -2
- package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +2 -2
- package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +2 -2
- package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +2 -2
- package/dist/docs/reference/geometry/Transform2-type.md +3 -11
- package/dist/docs/reference/geometry/Transform2Data.md +3 -11
- package/dist/docs/reference/geometry/Transform2Input.md +3 -11
- package/dist/docs/reference/geometry/Transform3-type.md +4 -12
- package/dist/docs/reference/geometry/Transform3Data.md +3 -11
- package/dist/docs/reference/geometry/Transform3Input.md +6 -13
- package/dist/docs/reference/geometry/Vector2-type.md +3 -11
- package/dist/docs/reference/geometry/Vector2Data.md +3 -15
- package/dist/docs/reference/geometry/Vector2Input.md +3 -11
- package/dist/docs/reference/geometry/Vector3-type.md +27 -11
- package/dist/docs/reference/geometry/Vector3Data.md +3 -11
- package/dist/docs/reference/geometry/Vector3Input.md +3 -11
- package/dist/docs/reference/geometry/VectorTextLayout.md +2 -10
- package/dist/docs/reference/geometry/VectorTextMetrics.md +3 -11
- package/dist/docs/reference/geometry/anchor3.md +17 -26
- package/dist/docs/reference/geometry/anchorFrame3.md +6 -6
- package/dist/docs/reference/geometry/attachmentTransform3.md +8 -8
- package/dist/docs/reference/geometry/bounds2.md +6 -8
- package/dist/docs/reference/geometry/bounds3.md +4 -6
- package/dist/docs/reference/geometry/boundsCenter.md +2 -2
- package/dist/docs/reference/geometry/boundsSize.md +2 -2
- package/dist/docs/reference/geometry/boxAnchor3.md +3 -3
- package/dist/docs/reference/geometry/categories/bounds-layout.md +9 -3
- package/dist/docs/reference/geometry/categories/curves-paths.md +24 -13
- package/dist/docs/reference/geometry/categories/immutable-data.md +40 -0
- package/dist/docs/reference/geometry/categories/pattern-placement.md +10 -4
- package/dist/docs/reference/geometry/categories/primitive-options.md +8 -13
- package/dist/docs/reference/geometry/categories/profiles-regions.md +11 -5
- package/dist/docs/reference/geometry/categories/resolution-errors.md +8 -1
- package/dist/docs/reference/geometry/categories/transforms-math.md +20 -51
- package/dist/docs/reference/geometry/categories/vector-import.md +7 -4
- package/dist/docs/reference/geometry/circleContour.md +3 -3
- package/dist/docs/reference/geometry/closeToAxis.md +7 -3
- package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +9 -6
- package/dist/docs/reference/geometry/computeParallelTransportFrames.md +13 -6
- package/dist/docs/reference/geometry/contourContainsPoint.md +7 -3
- package/dist/docs/reference/geometry/cylinderAnchor3.md +5 -5
- package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +3 -3
- package/dist/docs/reference/geometry/distributeAlongPath.md +16 -11
- package/dist/docs/reference/geometry/ellipseContour.md +3 -3
- package/dist/docs/reference/geometry/fitBounds.md +10 -2
- package/dist/docs/reference/geometry/fitTextLayout.md +5 -5
- package/dist/docs/reference/geometry/frame3.md +66 -0
- package/dist/docs/reference/geometry/gridPatternTransforms.md +6 -6
- package/dist/docs/reference/geometry/immutableBuffer.md +5 -7
- package/dist/docs/reference/geometry/isGeometryError.md +2 -6
- package/dist/docs/reference/geometry/layoutRow.md +4 -2
- package/dist/docs/reference/geometry/linearPatternTransforms.md +6 -6
- package/dist/docs/reference/geometry/matchProfiles.md +5 -3
- package/dist/docs/reference/geometry/normalizeContour.md +8 -4
- package/dist/docs/reference/geometry/normalizePolygon.md +5 -3
- package/dist/docs/reference/geometry/normalizeRegion.md +5 -3
- package/dist/docs/reference/geometry/path2.md +7 -7
- package/dist/docs/reference/geometry/path3.md +7 -7
- package/dist/docs/reference/geometry/pathPatternTransforms.md +12 -8
- package/dist/docs/reference/geometry/preflightSvgRegion.md +5 -5
- package/dist/docs/reference/geometry/radialPatternTransforms.md +5 -5
- package/dist/docs/reference/geometry/rectangleContour.md +3 -3
- package/dist/docs/reference/geometry/rectangleProfile.md +3 -4
- package/dist/docs/reference/geometry/regionArea.md +3 -3
- package/dist/docs/reference/geometry/regionBounds.md +6 -4
- package/dist/docs/reference/geometry/regularPolygonContour.md +3 -3
- package/dist/docs/reference/geometry/resamplePolyline2.md +7 -3
- package/dist/docs/reference/geometry/resamplePolyline3.md +7 -3
- package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +5 -5
- package/dist/docs/reference/geometry/resolveArcSegments.md +8 -6
- package/dist/docs/reference/geometry/resolveCircularSampling.md +2 -2
- package/dist/docs/reference/geometry/resolveCircularSegments.md +5 -3
- package/dist/docs/reference/geometry/{resolveExtrusionDivisions.md → resolveExtrusionSlices.md} +16 -15
- package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +5 -3
- package/dist/docs/reference/geometry/resolveGeometryTolerance.md +3 -3
- package/dist/docs/reference/geometry/roundClosedPolylinePath.md +12 -5
- package/dist/docs/reference/geometry/sampleContour.md +5 -5
- package/dist/docs/reference/geometry/sampleCurve2.md +7 -3
- package/dist/docs/reference/geometry/sampleCurve3.md +7 -3
- package/dist/docs/reference/geometry/sampleHelix.md +3 -3
- package/dist/docs/reference/geometry/sampleSideProfile.md +5 -5
- package/dist/docs/reference/geometry/sampleTextContours.md +3 -3
- package/dist/docs/reference/geometry/signedContourArea.md +5 -3
- package/dist/docs/reference/geometry/spline2.md +68 -0
- package/dist/docs/reference/geometry/spline3.md +62 -0
- package/dist/docs/reference/geometry/starContour.md +3 -3
- package/dist/docs/reference/geometry/strokeRegionData.md +8 -5
- package/dist/docs/reference/geometry/transform2.md +5 -7
- package/dist/docs/reference/geometry/transform3.md +23 -10
- package/dist/docs/reference/geometry/transformRegionData.md +7 -3
- package/dist/docs/reference/geometry/triangulateContour.md +6 -4
- package/dist/docs/reference/geometry/vector2.md +6 -8
- package/dist/docs/reference/geometry/vector3.md +8 -8
- package/dist/docs/reference/geometry.md +13 -18
- package/dist/docs/reference/{geometry → math}/AxisAngleRotation3.md +4 -5
- package/dist/docs/reference/math/IDENTITY_TRANSFORM3.md +20 -0
- package/dist/docs/reference/math/add2.md +38 -0
- package/dist/docs/reference/math/add3.md +46 -0
- package/dist/docs/reference/math/applyTransformDirection3.md +46 -0
- package/dist/docs/reference/math/applyTransformPoint3.md +44 -0
- package/dist/docs/reference/math/categories/tuple-matrix.md +67 -0
- package/dist/docs/reference/math/cross2.md +38 -0
- package/dist/docs/reference/math/cross3.md +44 -0
- package/dist/docs/reference/math/distance2.md +38 -0
- package/dist/docs/reference/math/distance3.md +38 -0
- package/dist/docs/reference/math/dot2.md +38 -0
- package/dist/docs/reference/math/dot3.md +44 -0
- package/dist/docs/reference/math/eulerTransform3.md +43 -0
- package/dist/docs/reference/math/inverseTransform3.md +36 -0
- package/dist/docs/reference/math/length2.md +32 -0
- package/dist/docs/reference/math/length3.md +32 -0
- package/dist/docs/reference/math/lerp2.md +46 -0
- package/dist/docs/reference/math/lerp3.md +46 -0
- package/dist/docs/reference/math/multiplyTransform3.md +46 -0
- package/dist/docs/reference/math/normalize2.md +45 -0
- package/dist/docs/reference/math/normalize3.md +45 -0
- package/dist/docs/reference/math/projectOntoPlane3.md +40 -0
- package/dist/docs/reference/math/rotate2.md +40 -0
- package/dist/docs/reference/math/rotationTransform3.md +56 -0
- package/dist/docs/reference/math/scale2.md +38 -0
- package/dist/docs/reference/math/scale3.md +44 -0
- package/dist/docs/reference/math/scaleTransform3.md +39 -0
- package/dist/docs/reference/math/subtract2.md +38 -0
- package/dist/docs/reference/math/subtract3.md +44 -0
- package/dist/docs/reference/math/transformDeterminant3.md +38 -0
- package/dist/docs/reference/math/translationTransform3.md +36 -0
- package/dist/docs/reference/math/validateRigidTransform3.md +38 -0
- package/dist/docs/reference/math/validateTransform3.md +48 -0
- package/dist/docs/reference/math.md +22 -0
- package/dist/docs/reference/{geometry → mechanical}/AcmeThreadProfileSpec.md +4 -13
- package/dist/docs/reference/{geometry → mechanical}/Bevel.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/BevelSize.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/ButtressPressureFlankSide.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/ButtressThreadProfileSpec.md +4 -13
- package/dist/docs/reference/{geometry → mechanical}/ClearanceHoleDimensions.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/ClearanceHoleFit.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/CompensatedThreadDiameters.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/CustomThreadProfileSpec.md +5 -15
- package/dist/docs/reference/{geometry → mechanical}/CylindricalGearDimensions.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/CylindricalGearMeshKind.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/CylindricalGearOutlineOptions.md +5 -10
- package/dist/docs/reference/{geometry → mechanical}/CylindricalGearPairDimensions.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/CylindricalGearPairMotionOptions.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/CylindricalGearPairMotionReport.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/CylindricalGearPairSpec.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/CylindricalGearSpec.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/InternalThreadCutterOptions.md +6 -13
- package/dist/docs/reference/{geometry → mechanical}/KnuckleHingeBaseSpec.md +3 -7
- package/dist/docs/reference/{geometry → mechanical}/KnuckleHingeDimensions.md +4 -5
- package/dist/docs/reference/{geometry → mechanical}/KnuckleHingeInterval.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/KnuckleHingeSamplingOptions.md +5 -14
- package/dist/docs/reference/{geometry → mechanical}/KnuckleHingeSpec.md +3 -7
- package/dist/docs/reference/{geometry → mechanical}/METRIC_FASTENER_STANDARDS.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/MetricFastenerSize.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/MetricFastenerStandard.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/MetricHexNutDimensions.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/MetricSocketCapHeadDimensions.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/PRINTABLE_THREAD_FIT_POLICIES.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/PrintableThreadFit.md +3 -7
- package/dist/docs/reference/{geometry → mechanical}/PrintableThreadFitPolicy.md +3 -7
- package/dist/docs/reference/{geometry → mechanical}/RackPitchDimensions.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/RackPitchSpec.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/SampledThreadHelices.md +4 -8
- package/dist/docs/reference/{geometry → mechanical}/SquareThreadProfileSpec.md +4 -13
- package/dist/docs/reference/{geometry → mechanical}/ThreadBevelOptions.md +3 -7
- package/dist/docs/reference/{geometry → mechanical}/ThreadCircularSegmentsOptions.md +5 -7
- package/dist/docs/reference/{geometry → mechanical}/ThreadCompensationOptions.md +4 -5
- package/dist/docs/reference/{geometry → mechanical}/ThreadEndStyle.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/ThreadEndTreatmentOptions.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/ThreadHandedness.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/ThreadHelixOptions.md +5 -7
- package/dist/docs/reference/{geometry → mechanical}/ThreadLeadInEnvelope.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/ThreadLeadInShape.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/ThreadProfile-type.md +5 -17
- package/dist/docs/reference/{geometry → mechanical}/ThreadProfileBaseSpec.md +4 -13
- package/dist/docs/reference/{geometry → mechanical}/ThreadProfileSpec.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/ThreadRidgeOptions.md +7 -18
- package/dist/docs/reference/{geometry → mechanical}/ThreadRole.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/ThreadSolidOptions.md +8 -15
- package/dist/docs/reference/{geometry → mechanical}/ThreadSolidPreflight.md +3 -11
- package/dist/docs/reference/{geometry → mechanical}/ThreadedNutOptions.md +7 -14
- package/dist/docs/reference/{geometry → mechanical}/ThreadedNutPreflight.md +3 -7
- package/dist/docs/reference/{geometry → mechanical}/ThreadedNutShape.md +3 -7
- package/dist/docs/reference/{geometry → mechanical}/ThreadedRodOptions.md +6 -13
- package/dist/docs/reference/{geometry → mechanical}/TrapezoidalThreadProfileSpec.md +4 -13
- package/dist/docs/reference/{geometry → mechanical}/TriangularThreadProfileSpec.md +4 -13
- package/dist/docs/reference/{geometry → mechanical}/categories/mechanical.md +8 -2
- package/dist/docs/reference/{geometry → mechanical}/compensateThreadDiameters.md +4 -4
- package/dist/docs/reference/{geometry → mechanical}/compensateThreadProfileAxially.md +12 -6
- package/dist/docs/reference/{geometry → mechanical}/compensateThreadProfileForFaceting.md +13 -3
- package/dist/docs/reference/{geometry → mechanical}/getMetricClearanceHoleDiameter.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/getMetricFastenerStandard.md +3 -3
- package/dist/docs/reference/{geometry → mechanical}/measureInternalCylindricalGearPairMotion.md +9 -7
- package/dist/docs/reference/{geometry → mechanical}/minimumCylindricalGearToothCountWithoutUndercut.md +5 -3
- package/dist/docs/reference/{geometry → mechanical}/preflightInternalThreadCutter.md +8 -6
- package/dist/docs/reference/{geometry → mechanical}/preflightThreadedNut.md +9 -7
- package/dist/docs/reference/{geometry → mechanical}/preflightThreadedRod.md +8 -6
- package/dist/docs/reference/{geometry → mechanical}/resolveCylindricalGear.md +5 -3
- package/dist/docs/reference/{geometry → mechanical}/resolveCylindricalGearPair.md +5 -3
- package/dist/docs/reference/{geometry → mechanical}/resolveKnuckleHinge.md +9 -7
- package/dist/docs/reference/{geometry → mechanical}/resolvePrintableThreadFitPolicy.md +5 -3
- package/dist/docs/reference/{geometry → mechanical}/resolveRackPitch.md +5 -3
- package/dist/docs/reference/{geometry → mechanical}/resolveThreadCircularSegments.md +7 -5
- package/dist/docs/reference/{geometry → mechanical}/sampleCylindricalGearOutline.md +9 -8
- package/dist/docs/reference/{geometry → mechanical}/sampleInternalCylindricalGearSpaceOutline.md +9 -8
- package/dist/docs/reference/{geometry → mechanical}/sampleRackToothPath.md +10 -8
- package/dist/docs/reference/{geometry → mechanical}/sampleThreadHelices.md +8 -6
- package/dist/docs/reference/{geometry → mechanical}/threadProfile.md +7 -3
- package/dist/docs/reference/mechanical.md +19 -0
- package/dist/docs/reference/mesh/ExtrudeMeshOptions.md +128 -0
- package/dist/docs/reference/{geometry → mesh}/HeightfieldMeshLimits.md +5 -13
- package/dist/docs/reference/{geometry → mesh}/HeightfieldPreflight.md +3 -7
- package/dist/docs/reference/{geometry → mesh}/ImmutableTriangleMesh.md +5 -17
- package/dist/docs/reference/mesh/LoftMeshStation.md +32 -0
- package/dist/docs/reference/mesh/MeshRenderOptions.md +3 -3
- package/dist/docs/reference/{geometry → mesh}/PlanarMeshOptimizationFallbackReason.md +4 -8
- package/dist/docs/reference/{geometry → mesh}/PlanarMeshOptimizationOptions.md +4 -9
- package/dist/docs/reference/{geometry → mesh}/PlanarMeshOptimizationResult.md +4 -8
- package/dist/docs/reference/{geometry → mesh}/PlanarPatchQuality.md +4 -12
- package/dist/docs/reference/mesh/RenderMesh.md +19 -19
- package/dist/docs/reference/{geometry → mesh}/SolidMeshValidationOptions.md +4 -12
- package/dist/docs/reference/{geometry → mesh}/TriangleMesh.md +8 -12
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshAnalysis.md +5 -14
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshAnalysisOptions.md +4 -9
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshInput.md +3 -7
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshMeasurements.md +5 -14
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshQualityOptions.md +4 -9
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshQualityReport.md +3 -7
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshSignature.md +4 -9
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshSignatureOptions.md +3 -7
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshSignatureTolerances.md +3 -7
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshTopologyAnalysis.md +5 -14
- package/dist/docs/reference/{geometry → mesh}/TriangleMeshValidationOptions.md +4 -9
- package/dist/docs/reference/mesh/analyze.md +26 -18
- package/dist/docs/reference/mesh/analyzeQuality.md +12 -12
- package/dist/docs/reference/mesh/bounds.md +5 -6
- package/dist/docs/reference/mesh/categories/operations.md +37 -4
- package/dist/docs/reference/mesh/centroid.md +5 -6
- package/dist/docs/reference/mesh/extrude.md +21 -20
- package/dist/docs/reference/mesh/heightfield.md +8 -8
- package/dist/docs/reference/mesh/immutable.md +7 -5
- package/dist/docs/reference/mesh/join.md +7 -7
- package/dist/docs/reference/mesh/loft.md +19 -18
- package/dist/docs/reference/mesh/optimizePlanarPatches.md +21 -21
- package/dist/docs/reference/mesh/preflightHeightfield.md +8 -8
- package/dist/docs/reference/mesh/preflightThreadSolid.md +22 -25
- package/dist/docs/reference/mesh/render.md +7 -5
- package/dist/docs/reference/mesh/reverse.md +7 -7
- package/dist/docs/reference/mesh/revolve.md +12 -14
- package/dist/docs/reference/mesh/signature.md +12 -12
- package/dist/docs/reference/mesh/sweep.md +96 -25
- package/dist/docs/reference/mesh/threadRidge.md +19 -18
- package/dist/docs/reference/mesh/threadSolid.md +23 -22
- package/dist/docs/reference/mesh/transform.md +8 -9
- package/dist/docs/reference/mesh/validate.md +11 -11
- package/dist/docs/reference/mesh/validateSolid.md +10 -10
- package/dist/docs/reference/mesh.md +8 -2
- package/dist/docs/reference/model/BoxEdge.md +23 -0
- package/dist/docs/reference/model/BoxEdgeSelection.md +27 -0
- package/dist/docs/reference/model/BoxEdgeTreatments.md +27 -0
- package/dist/docs/reference/{geometry → model}/BoxOptions.md +12 -12
- package/dist/docs/reference/model/CircleOptions.md +4 -5
- package/dist/docs/reference/model/CornerCutterOptions.md +93 -0
- package/dist/docs/reference/model/CornerCutterTreatment.md +53 -0
- package/dist/docs/reference/model/{HoleCutterOverrun.md → CutterOverrun.md} +8 -7
- package/dist/docs/reference/model/CylinderOptions.md +64 -0
- package/dist/docs/reference/model/DiagnosticOptions.md +2 -2
- package/dist/docs/reference/model/EdgeCutterOptions.md +129 -0
- package/dist/docs/reference/model/EllipseOptions.md +4 -5
- package/dist/docs/reference/model/EndTreatments.md +43 -0
- package/dist/docs/reference/model/ExtrudeOptions.md +153 -0
- package/dist/docs/reference/model/GenerateCallback.md +2 -2
- package/dist/docs/reference/model/GenerateContext.md +27 -3
- package/dist/docs/reference/model/GenerationDiagnostic.md +2 -2
- package/dist/docs/reference/model/GenerationError.md +2 -2
- package/dist/docs/reference/{geometry → model}/HeightfieldOptions.md +5 -23
- package/dist/docs/reference/model/HoleCutterOpening.md +27 -0
- package/dist/docs/reference/model/HoleCutterOptions.md +9 -22
- package/dist/docs/reference/model/HoleCutterRecess.md +5 -4
- package/dist/docs/reference/model/HullOptions.md +2 -3
- package/dist/docs/reference/model/ImmutableValue.md +2 -2
- package/dist/docs/reference/model/ImplicitOptions.md +3 -9
- package/dist/docs/reference/model/JoinOptions.md +2 -5
- package/dist/docs/reference/model/JoinTransition.md +2 -2
- package/dist/docs/reference/model/KnuckleHinge-type.md +2 -3
- package/dist/docs/reference/model/KnuckleHingeHalfOptions.md +2 -2
- package/dist/docs/reference/model/KnuckleHingeOptions.md +3 -5
- package/dist/docs/reference/model/KnuckleHingeWeb.md +2 -2
- package/dist/docs/reference/{geometry → model}/LoftCorrespondence.md +8 -11
- package/dist/docs/reference/{geometry → model}/LoftOptions.md +11 -16
- package/dist/docs/reference/model/LoftStation.md +4 -5
- package/dist/docs/reference/model/Memo.md +2 -2
- package/dist/docs/reference/model/ModelProgram.md +2 -2
- package/dist/docs/reference/model/PartDeclaration.md +4 -5
- package/dist/docs/reference/model/PartGeometry.md +3 -5
- package/dist/docs/reference/model/PartOptions.md +4 -5
- package/dist/docs/reference/model/PatternSource.md +4 -4
- package/dist/docs/reference/model/PlaneOptions.md +3 -7
- package/dist/docs/reference/model/PolygonOptions.md +2 -7
- package/dist/docs/reference/model/PrimitiveAttachment.md +50 -0
- package/dist/docs/reference/model/PrimitiveAttachmentOptions.md +111 -0
- package/dist/docs/reference/model/RectangleOptions.md +21 -26
- package/dist/docs/reference/model/RegularPolygonOptions.md +4 -37
- package/dist/docs/reference/{geometry → model}/RevolveOptions.md +15 -24
- package/dist/docs/reference/model/Section.md +115 -53
- package/dist/docs/reference/model/SectionHullOptions.md +2 -3
- package/dist/docs/reference/model/SectionInspection.md +2 -6
- package/dist/docs/reference/model/SectionOffsetJoin.md +2 -2
- package/dist/docs/reference/model/SectionOffsetOptions.md +2 -3
- package/dist/docs/reference/model/Solid.md +24 -12
- package/dist/docs/reference/model/SolidInspection.md +2 -6
- package/dist/docs/reference/model/SolidSegmentHit.md +2 -6
- package/dist/docs/reference/model/SphereOptions.md +27 -0
- package/dist/docs/reference/model/StarOptions.md +21 -23
- package/dist/docs/reference/model/SvgOrigin.md +2 -2
- package/dist/docs/reference/model/SvgPathSectionOptions.md +3 -5
- package/dist/docs/reference/model/SvgSectionOptions.md +3 -6
- package/dist/docs/reference/model/SweepOptions.md +109 -0
- package/dist/docs/reference/model/SweepOrientation.md +119 -0
- package/dist/docs/reference/model/SweepTransformOptions.md +105 -0
- package/dist/docs/reference/model/TextSectionOptions.md +2 -7
- package/dist/docs/reference/{geometry → model}/TorusOptions.md +11 -10
- package/dist/docs/reference/model/TubeOptions.md +84 -0
- package/dist/docs/reference/model/box.md +11 -10
- package/dist/docs/reference/model/categories/boolean-operations.md +9 -3
- package/dist/docs/reference/model/categories/bounded-surfaces.md +13 -1
- package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +26 -7
- package/dist/docs/reference/model/categories/generation.md +11 -3
- package/dist/docs/reference/model/categories/hinges.md +7 -1
- package/dist/docs/reference/model/categories/mesh-inspection.md +7 -1
- package/dist/docs/reference/model/categories/primitives.md +34 -6
- package/dist/docs/reference/model/categories/sections.md +8 -2
- package/dist/docs/reference/model/categories/threads.md +8 -5
- package/dist/docs/reference/model/categories/transforms-placement.md +15 -10
- package/dist/docs/reference/model/circle.md +7 -3
- package/dist/docs/reference/model/cornerCutter.md +88 -0
- package/dist/docs/reference/model/cylinder.md +6 -5
- package/dist/docs/reference/model/edgeCutter.md +91 -0
- package/dist/docs/reference/model/ellipse.md +7 -3
- package/dist/docs/reference/model/extrude.md +29 -23
- package/dist/docs/reference/model/generate.md +4 -2
- package/dist/docs/reference/model/gridPattern.md +11 -4
- package/dist/docs/reference/model/heightfield.md +5 -5
- package/dist/docs/reference/model/holeCutter.md +26 -12
- package/dist/docs/reference/model/hull.md +2 -2
- package/dist/docs/reference/model/implicit.md +3 -3
- package/dist/docs/reference/model/internalThreadCutter.md +32 -21
- package/dist/docs/reference/model/intersect.md +7 -3
- package/dist/docs/reference/model/join.md +6 -2
- package/dist/docs/reference/model/knuckleHinge.md +2 -3
- package/dist/docs/reference/model/linearPattern.md +11 -4
- package/dist/docs/reference/model/loft.md +28 -24
- package/dist/docs/reference/model/minkowskiSum.md +3 -3
- package/dist/docs/reference/model/pathPattern.md +17 -8
- package/dist/docs/reference/model/polygon.md +8 -3
- package/dist/docs/reference/model/radialPattern.md +11 -4
- package/dist/docs/reference/model/rectangle.md +11 -7
- package/dist/docs/reference/model/regularPolygon.md +7 -3
- package/dist/docs/reference/model/revolve.md +18 -12
- package/dist/docs/reference/model/solidFromMesh.md +10 -6
- package/dist/docs/reference/model/sphere.md +7 -6
- package/dist/docs/reference/model/star.md +11 -7
- package/dist/docs/reference/model/stroke.md +12 -8
- package/dist/docs/reference/model/svgPathSection.md +10 -4
- package/dist/docs/reference/model/svgSection.md +10 -4
- package/dist/docs/reference/model/sweep.md +102 -25
- package/dist/docs/reference/model/textSection.md +7 -3
- package/dist/docs/reference/model/threadRidge.md +16 -17
- package/dist/docs/reference/model/threadedNut.md +25 -22
- package/dist/docs/reference/model/threadedRod.md +21 -18
- package/dist/docs/reference/model/torus.md +13 -12
- package/dist/docs/reference/model/tube.md +6 -5
- package/dist/docs/reference/model/union.md +7 -3
- package/dist/docs/reference/model.md +10 -5
- package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +2 -2
- package/dist/docs/reference/text/VectorFont.md +38 -34
- package/dist/docs/reference/text/VectorFontOptions.md +2 -2
- package/dist/docs/reference/{geometry → text}/VectorTextArcBaseline.md +2 -11
- package/dist/docs/reference/{geometry → text}/VectorTextLayoutOptions.md +3 -11
- package/dist/docs/reference/{geometry → text}/VectorTextOptions.md +2 -10
- package/dist/docs/reference/text/categories/font-preparation.md +10 -1
- package/dist/docs/reference/text/prepareVectorFont.md +4 -2
- package/dist/docs/reference/text.md +7 -1
- package/dist/engine/execution.js +5 -3
- package/dist/engine/finalization.js +5 -5
- package/dist/engine/index.js +9 -4
- package/dist/engine/native/adapter.js +1 -1
- package/dist/engine/native/construction-mesh.js +15 -5
- package/dist/engine/native/context.js +10 -7
- package/dist/engine/native/index.js +1 -1
- package/dist/engine/native/material-components.js +2 -2
- package/dist/engine/native/mesh-observation.js +1 -1
- package/dist/engine/native/regions.js +44 -24
- package/dist/engine/native/scoped-primitives.js +3 -3
- package/dist/engine/native/scoped-threads.js +1 -13
- package/dist/engine/native/threads.js +2 -2
- package/dist/engine/native/transforms.js +2 -2
- package/dist/engine/operations/construction.js +77 -27
- package/dist/engine/operations/context.js +13 -6
- package/dist/engine/operations/cutters.js +112 -0
- package/dist/engine/operations/environment.js +2 -2
- package/dist/engine/operations/extrusion-finishing.js +42 -16
- package/dist/engine/operations/hole-cutter.js +125 -114
- package/dist/engine/operations/join-collar-profile.js +19 -19
- package/dist/engine/operations/join.js +86 -73
- package/dist/engine/operations/knuckle-hinge.js +25 -20
- package/dist/engine/operations/loft.js +9 -16
- package/dist/engine/operations/mechanical.js +4 -15
- package/dist/engine/operations/primitives/anchors.js +23 -19
- package/dist/engine/operations/primitives/construction.js +38 -12
- package/dist/engine/operations/primitives/correspondence.js +2 -2
- package/dist/engine/operations/primitives/profile-mesh.js +41 -80
- package/dist/engine/operations/primitives/profiles.js +5 -5
- package/dist/engine/operations/sections.js +8 -8
- package/dist/engine/operations/transforms.js +19 -39
- package/dist/engine/placement.js +3 -3
- package/dist/engine/recipe-realization.js +86 -30
- package/dist/engine/session/declarations.js +98 -0
- package/dist/engine/session/dependencies.js +81 -28
- package/dist/engine/session/graph.js +39 -137
- package/dist/engine/session/parameters.js +78 -0
- package/dist/engine/session/session.js +2 -2
- package/dist/engine/session/snapshot-cache.js +2 -2
- package/dist/engine/shape-anchors.js +13 -6
- package/dist/export/3mf.js +9 -2
- package/dist/export/capture.js +10 -6
- package/dist/export/glb.js +7 -2
- package/dist/export/stl.js +21 -6
- package/dist/geometry/{bounds.js → bounds/operations.js} +3 -1
- package/dist/geometry/{bounds-value.js → bounds/value.js} +20 -16
- package/dist/geometry/curves/evaluation.js +5 -6
- package/dist/geometry/curves/sampling.js +30 -6
- package/dist/geometry/{extrusion.js → extrusion/controls.js} +58 -35
- package/dist/geometry/extrusion/mesh.js +92 -0
- package/dist/geometry/extrusion/stations.js +35 -0
- package/dist/geometry/extrusion/twisted-chamfer.js +265 -0
- package/dist/geometry/immutable-buffer.js +7 -1
- package/dist/geometry/index.js +24 -32
- package/dist/geometry/{model-limits.js → limits.js} +1 -1
- package/dist/geometry/loft/{loft-correspondence.js → correspondence.js} +31 -20
- package/dist/geometry/loft/{loft-geometry.js → geometry.js} +15 -17
- package/dist/geometry/loft/mesh.js +53 -0
- package/dist/geometry/loft/{loft-options.js → options.js} +13 -11
- package/dist/geometry/loft/{loft-simple-mesh.js → simple-mesh.js} +26 -17
- package/dist/geometry/math/interpolation.js +9 -0
- package/dist/geometry/math/vector-value.js +12 -3
- package/dist/geometry/math/vector2.js +18 -5
- package/dist/geometry/math/vector3.js +28 -5
- package/dist/geometry/math-api.js +4 -0
- package/dist/geometry/mechanical/gear-motion.js +7 -5
- package/dist/geometry/mechanical/gears.js +21 -4
- package/dist/geometry/mechanical/knuckle-hinge.js +7 -5
- package/dist/geometry/mechanical/threads/fit.js +8 -2
- package/dist/geometry/mechanical/threads/helices.js +4 -2
- package/dist/geometry/mechanical/threads/mesh-plan.js +4 -2
- package/dist/geometry/mechanical/threads/mesh.js +12 -9
- package/dist/geometry/mechanical/threads/profiles.js +18 -4
- package/dist/geometry/mechanical/threads/solids.js +11 -2
- package/dist/geometry/mechanical-api.js +10 -0
- package/dist/geometry/mesh/{mesh-centroid.js → centroid.js} +2 -1
- package/dist/geometry/{heightfield.js → mesh/heightfield.js} +9 -5
- package/dist/geometry/{join-geometry.js → mesh/join-layers.js} +53 -59
- package/dist/geometry/mesh/{mesh.js → operations.js} +11 -18
- package/dist/geometry/mesh/{mesh-planar.js → planar.js} +8 -18
- package/dist/geometry/mesh/{mesh-quality.js → quality.js} +10 -42
- package/dist/geometry/mesh/{mesh-render.js → render-buffers.js} +22 -7
- package/dist/geometry/mesh/{mesh-signature.js → signature.js} +1 -1
- package/dist/geometry/mesh/{mesh-solid-intersections.js → solid-intersections.js} +2 -0
- package/dist/geometry/mesh/{mesh-solid.js → solid.js} +4 -4
- package/dist/geometry/mesh/triangle-quality.js +42 -0
- package/dist/geometry/mesh/winding.js +11 -0
- package/dist/geometry/{numeric.js → mesh/write-vertex.js} +1 -1
- package/dist/geometry/mesh-api.js +12 -11
- package/dist/geometry/paths/distribution.js +43 -0
- package/dist/geometry/paths/editing.js +76 -0
- package/dist/geometry/paths/frames.js +16 -11
- package/dist/geometry/paths/helix.js +1 -1
- package/dist/geometry/paths/resampling.js +46 -61
- package/dist/geometry/paths/{planar.js → rounding.js} +8 -67
- package/dist/geometry/paths/spline.js +116 -0
- package/dist/geometry/paths/traversal.js +107 -0
- package/dist/geometry/paths/{path-value.js → value.js} +97 -18
- package/dist/geometry/patterns/placements.js +20 -29
- package/dist/geometry/{patterns.js → patterns/transforms.js} +11 -7
- package/dist/geometry/primitives/cutters.js +70 -0
- package/dist/geometry/{cylinder.js → primitives/cylinder.js} +4 -4
- package/dist/geometry/{edge-finishing.js → primitives/edges.js} +5 -5
- package/dist/geometry/{primitive-resolvers.js → primitives/resolvers.js} +9 -9
- package/dist/geometry/primitives/sampling.js +41 -0
- package/dist/geometry/profiles/contour.js +19 -7
- package/dist/geometry/profiles/{match-profiles.js → matching.js} +9 -6
- package/dist/geometry/profiles/primitives/circle.js +1 -1
- package/dist/geometry/profiles/primitives/ellipse.js +2 -2
- package/dist/geometry/profiles/primitives/rectangle.js +8 -8
- package/dist/geometry/profiles/primitives/star.js +1 -1
- package/dist/geometry/profiles/side-profile.js +8 -5
- package/dist/geometry/profiles/validation.js +1 -1
- package/dist/geometry/{polygon-clipping.js → regions/clipping.js} +1 -1
- package/dist/geometry/{convex-offset.js → regions/convex-offset.js} +1 -1
- package/dist/geometry/{region-offset.js → regions/offset.js} +7 -5
- package/dist/geometry/{regions.js → regions/operations.js} +59 -22
- package/dist/geometry/{stroke-path.js → regions/stroke.js} +46 -20
- package/dist/geometry/{loft/loft-triangulation.js → regions/triangulation.js} +35 -2
- package/dist/geometry/revolve/{revolve-mesh.js → mesh.js} +9 -10
- package/dist/geometry/{circular-sampling.js → sampling/circular.js} +3 -3
- package/dist/geometry/{sampling-limits.js → sampling/limits.js} +6 -2
- package/dist/geometry/{resolution.js → sampling/resolution.js} +15 -14
- package/dist/geometry/svg/fill.js +4 -3
- package/dist/geometry/svg/import.js +47 -64
- package/dist/geometry/svg/path.js +3 -3
- package/dist/geometry/sweep/closed.js +55 -0
- package/dist/geometry/sweep/mesh.js +30 -0
- package/dist/geometry/{sweeps/sweep-open.js → sweep/open.js} +9 -24
- package/dist/geometry/{sweeps → sweep}/orientation.js +14 -11
- package/dist/geometry/sweep/seam.js +30 -0
- package/dist/geometry/{sweeps → sweep}/stations.js +75 -10
- package/dist/geometry/sweep/transforms.js +30 -0
- package/dist/geometry/{sweeps → sweep}/validation.js +4 -4
- package/dist/geometry/{text-contours.js → text/contours.js} +3 -3
- package/dist/geometry/{text-fitting.js → text/fitting.js} +4 -3
- package/dist/geometry/text/layout.js +1 -0
- package/dist/geometry/{transform3.js → transforms/affine3.js} +31 -46
- package/dist/geometry/{anchors.js → transforms/anchors.js} +43 -24
- package/dist/geometry/{transform-geometry.js → transforms/apply.js} +8 -5
- package/dist/geometry/{transform2.js → transforms/dimensions.js} +23 -19
- package/dist/geometry/transforms/frame.js +64 -0
- package/dist/geometry/{transform-matrix.js → transforms/matrix-input.js} +8 -1
- package/dist/geometry/{transform-value.js → transforms/value.js} +29 -11
- package/dist/index.js +3 -9
- package/dist/model/cutters.js +1 -0
- package/dist/model/execution-binding.js +3 -3
- package/dist/model/generation.js +2 -0
- package/dist/model/immutable-generation-data.js +2 -0
- package/dist/model/operations.js +130 -94
- package/dist/model/recipe-declaration.js +5 -7
- package/dist/text/index.js +3 -0
- package/dist/text/vector-text-layout.js +1 -0
- package/package.json +15 -17
- package/dist/api/export-3mf.d.ts +0 -2
- package/dist/api/export-glb.d.ts +0 -2
- package/dist/api/export-stl.d.ts +0 -2
- package/dist/docs/reference/geometry/BoxEdge.md +0 -17
- package/dist/docs/reference/geometry/BoxEdgeSelection.md +0 -24
- package/dist/docs/reference/geometry/BoxEdgeTreatments.md +0 -25
- package/dist/docs/reference/geometry/CylinderOptions.md +0 -63
- package/dist/docs/reference/geometry/EndTreatments.md +0 -44
- package/dist/docs/reference/geometry/ExtrudeMeshOptions.md +0 -144
- package/dist/docs/reference/geometry/ExtrudeOptions.md +0 -156
- package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +0 -25
- package/dist/docs/reference/geometry/LoftMeshStation.md +0 -41
- package/dist/docs/reference/geometry/PrimitiveAttachment.md +0 -39
- package/dist/docs/reference/geometry/PrimitiveAttachmentOptions.md +0 -114
- package/dist/docs/reference/geometry/SphereOptions.md +0 -25
- package/dist/docs/reference/geometry/SweepOptions.md +0 -127
- package/dist/docs/reference/geometry/SweepOrientation.md +0 -127
- package/dist/docs/reference/geometry/TubeOptions.md +0 -72
- package/dist/docs/reference/geometry/add2.md +0 -43
- package/dist/docs/reference/geometry/add3.md +0 -49
- package/dist/docs/reference/geometry/applyTransformDirection3.md +0 -52
- package/dist/docs/reference/geometry/applyTransformPoint3.md +0 -50
- package/dist/docs/reference/geometry/categories/meshes.md +0 -68
- package/dist/docs/reference/geometry/composeTransform3.md +0 -51
- package/dist/docs/reference/geometry/cross2.md +0 -43
- package/dist/docs/reference/geometry/cross3.md +0 -49
- package/dist/docs/reference/geometry/distance2.md +0 -43
- package/dist/docs/reference/geometry/distance3.md +0 -43
- package/dist/docs/reference/geometry/dot2.md +0 -43
- package/dist/docs/reference/geometry/dot3.md +0 -49
- package/dist/docs/reference/geometry/eulerTransform3.md +0 -49
- package/dist/docs/reference/geometry/frameTransform3.md +0 -55
- package/dist/docs/reference/geometry/inverseTransform3.md +0 -41
- package/dist/docs/reference/geometry/length2.md +0 -37
- package/dist/docs/reference/geometry/length3.md +0 -37
- package/dist/docs/reference/geometry/lerp2.md +0 -49
- package/dist/docs/reference/geometry/lerp3.md +0 -49
- package/dist/docs/reference/geometry/normalize2.md +0 -46
- package/dist/docs/reference/geometry/normalize3.md +0 -46
- package/dist/docs/reference/geometry/projectOntoPlane3.md +0 -43
- package/dist/docs/reference/geometry/rotate2.md +0 -43
- package/dist/docs/reference/geometry/rotationTransform3.md +0 -60
- package/dist/docs/reference/geometry/scale2.md +0 -43
- package/dist/docs/reference/geometry/scale3.md +0 -49
- package/dist/docs/reference/geometry/scaleTransform3.md +0 -45
- package/dist/docs/reference/geometry/subtract2.md +0 -43
- package/dist/docs/reference/geometry/subtract3.md +0 -49
- package/dist/docs/reference/geometry/transformDeterminant3.md +0 -43
- package/dist/docs/reference/geometry/translationTransform3.md +0 -42
- package/dist/docs/reference/geometry/validateRigidTransform3.md +0 -41
- package/dist/docs/reference/geometry/validateTransform3.md +0 -54
- package/dist/docs/reference/model/Profile.md +0 -30
- package/dist/docs/reference/model/categories/explicit-profiles.md +0 -21
- package/dist/docs/reference/model/matchProfiles.md +0 -48
- package/dist/docs/reference/model/preflightInternalThreadCutter.md +0 -93
- package/dist/docs/reference/model/preflightThreadedNut.md +0 -109
- package/dist/docs/reference/model/preflightThreadedRod.md +0 -93
- package/dist/engine/operations/patterns.js +0 -47
- package/dist/geometry/loft/loft.js +0 -105
- package/dist/geometry/mechanical/index.js +0 -14
- package/dist/geometry/primitive-resolution.js +0 -20
- package/dist/geometry/svg/index.js +0 -1
- package/dist/geometry/sweeps/options.js +0 -29
- package/dist/geometry/sweeps/sweep-closed.js +0 -96
- package/dist/geometry/sweeps/sweep-mesh.js +0 -32
- /package/dist/geometry/mechanical/{standards.js → fastener-standards.js} +0 -0
- /package/dist/geometry/mesh/{mesh-edge-table.js → edge-table.js} +0 -0
- /package/dist/geometry/mesh/{mesh-types.js → types.js} +0 -0
- /package/dist/geometry/mesh/{mesh-view-cache.js → view-cache.js} +0 -0
- /package/dist/geometry/{primitive-options.js → primitives/options.js} +0 -0
- /package/dist/geometry/{text-layout.js → sweep/options.js} +0 -0
|
@@ -4,7 +4,7 @@ Circumferential sampling and degree sweep shared by pure and filled revolution.
|
|
|
4
4
|
|
|
5
5
|
## Extends
|
|
6
6
|
|
|
7
|
-
- [`CircularPrimitiveOptions`](CircularPrimitiveOptions.md)
|
|
7
|
+
- [`CircularPrimitiveOptions`](../geometry/CircularPrimitiveOptions.md)
|
|
8
8
|
|
|
9
9
|
## Properties
|
|
10
10
|
|
|
@@ -18,12 +18,12 @@ Circumferential sampling and degree sweep shared by pure and filled revolution.
|
|
|
18
18
|
|
|
19
19
|
Exact circumferential segment count from three through the configured safety limit.
|
|
20
20
|
|
|
21
|
-
This local topology override takes precedence over [CircularPrimitiveOptions.resolution](CircularPrimitiveOptions.md#resolution)
|
|
21
|
+
This local topology override takes precedence over [CircularPrimitiveOptions.resolution](../geometry/CircularPrimitiveOptions.md#resolution)
|
|
22
22
|
and any active model-wide resolution policy.
|
|
23
23
|
|
|
24
24
|
#### Inherited from
|
|
25
25
|
|
|
26
|
-
[`CircularPrimitiveOptions`](CircularPrimitiveOptions.md).[`segments`](CircularPrimitiveOptions.md#segments)
|
|
26
|
+
[`CircularPrimitiveOptions`](../geometry/CircularPrimitiveOptions.md).[`segments`](../geometry/CircularPrimitiveOptions.md#segments)
|
|
27
27
|
|
|
28
28
|
***
|
|
29
29
|
|
|
@@ -31,7 +31,7 @@ and any active model-wide resolution policy.
|
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
|
|
34
|
-
`readonly` `optional` **resolution?**: [`GeometryResolution`](GeometryResolution.md)
|
|
34
|
+
`readonly` `optional` **resolution?**: [`GeometryResolution`](../geometry/GeometryResolution.md)
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
|
|
@@ -39,7 +39,7 @@ Operation-level physical tessellation policy over the active model-wide policy.
|
|
|
39
39
|
|
|
40
40
|
#### Inherited from
|
|
41
41
|
|
|
42
|
-
[`CircularPrimitiveOptions`](CircularPrimitiveOptions.md).[`resolution`](CircularPrimitiveOptions.md#resolution)
|
|
42
|
+
[`CircularPrimitiveOptions`](../geometry/CircularPrimitiveOptions.md).[`resolution`](../geometry/CircularPrimitiveOptions.md#resolution)
|
|
43
43
|
|
|
44
44
|
***
|
|
45
45
|
|
|
@@ -67,7 +67,7 @@ while exact counts that imply fewer intervals reject. Pure mesh.revolve supports
|
|
|
67
67
|
|
|
68
68
|
|
|
69
69
|
|
|
70
|
-
`readonly` `optional` **limits?**: `Partial`\<[`ModelingLimits`](ModelingLimits.md)\>
|
|
70
|
+
`readonly` `optional` **limits?**: `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\>
|
|
71
71
|
|
|
72
72
|
|
|
73
73
|
|
|
@@ -75,31 +75,22 @@ Explicit output and sampling allocation ceilings.
|
|
|
75
75
|
|
|
76
76
|
#### Overrides
|
|
77
77
|
|
|
78
|
-
[`CircularPrimitiveOptions`](CircularPrimitiveOptions.md).[`limits`](CircularPrimitiveOptions.md#limits)
|
|
78
|
+
[`CircularPrimitiveOptions`](../geometry/CircularPrimitiveOptions.md).[`limits`](../geometry/CircularPrimitiveOptions.md#limits)
|
|
79
79
|
|
|
80
80
|
|
|
81
|
-
## Related APIs
|
|
82
|
-
|
|
83
|
-
- [CircularPrimitiveOptions](CircularPrimitiveOptions.md)
|
|
84
|
-
- [GeometryResolution](GeometryResolution.md)
|
|
85
|
-
- [ModelingLimits](ModelingLimits.md)
|
|
86
|
-
|
|
87
81
|
## Guides
|
|
88
82
|
|
|
89
|
-
- [
|
|
83
|
+
- [Finish a profile with a hole](../../guides/profiles-and-extrusion.md#finish-a-profile-with-a-hole)
|
|
84
|
+
- [Chamfer a twisted extrusion](../../guides/profiles-and-extrusion.md#chamfer-a-twisted-extrusion)
|
|
85
|
+
- [Revolve a radial profile](../../guides/profiles-and-extrusion.md#revolve-a-radial-profile)
|
|
86
|
+
- [Rotation-minimizing path sweep](../../guides/sweeps-and-lofts.md#rotation-minimizing-path-sweep)
|
|
87
|
+
- [Matched-section loft](../../guides/sweeps-and-lofts.md#matched-section-loft)
|
|
88
|
+
- [Choose a modeling path](../../guides/recipes.md#choose-a-technique)
|
|
90
89
|
|
|
91
|
-
##
|
|
90
|
+
## Import
|
|
92
91
|
|
|
93
92
|
```ts
|
|
94
93
|
import type { RevolveOptions } from "@metamesh/modeling";
|
|
95
94
|
```
|
|
96
95
|
|
|
97
|
-
|
|
98
|
-
import type { RevolveOptions } from "@metamesh/modeling/geometry";
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
```ts
|
|
102
|
-
import * as mesh from "@metamesh/modeling/geometry/mesh";
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
Package: `@metamesh/modeling@0.19.0`.
|
|
96
|
+
Package: `@metamesh/modeling@0.20.0`.
|
|
@@ -11,13 +11,18 @@ Explicit resolution settings are captured; unspecified settings inherit the eval
|
|
|
11
11
|
|
|
12
12
|
## Example: Extrude an outline with a border
|
|
13
13
|
|
|
14
|
+
|
|
15
|
+
|
|
14
16
|
```ts
|
|
15
17
|
const body = rectangle({ size: [20, 12] })
|
|
16
18
|
.subtract(rectangle({ size: [16, 8] }))
|
|
17
19
|
.offset(0.5)
|
|
18
20
|
.extrude({ height: 4 });
|
|
21
|
+
body;
|
|
19
22
|
```
|
|
20
23
|
|
|
24
|
+
|
|
25
|
+
|
|
21
26
|
## Methods
|
|
22
27
|
|
|
23
28
|
### translate()
|
|
@@ -122,7 +127,7 @@ Uniform or per-axis nonsingular scaling; negative factors reflect geometry.
|
|
|
122
127
|
|
|
123
128
|
|
|
124
129
|
|
|
125
|
-
|
|
130
|
+
Reflects across a line through the XY origin.
|
|
126
131
|
|
|
127
132
|
#### Parameters
|
|
128
133
|
|
|
@@ -130,6 +135,8 @@ Reflection across an origin line/plane.
|
|
|
130
135
|
|
|
131
136
|
**`normal`** · [`Vector2Input`](../geometry/Vector2Input.md) · Required
|
|
132
137
|
|
|
138
|
+
Nonzero XY line normal; length has no effect.
|
|
139
|
+
|
|
133
140
|
|
|
134
141
|
|
|
135
142
|
#### Returns
|
|
@@ -318,6 +325,8 @@ Native millimetre offset preserving holes.
|
|
|
318
325
|
|
|
319
326
|
**`distance`** · `number` · Required
|
|
320
327
|
|
|
328
|
+
Millimetres: positive expands material; negative erodes it.
|
|
329
|
+
|
|
321
330
|
|
|
322
331
|
|
|
323
332
|
<a id="options-2"></a>
|
|
@@ -352,7 +361,7 @@ Native millimetre offset preserving holes.
|
|
|
352
361
|
|
|
353
362
|
|
|
354
363
|
|
|
355
|
-
**extrude**(`options`: [`ExtrudeOptions`](
|
|
364
|
+
**extrude**(`options`: [`ExtrudeOptions`](ExtrudeOptions.md)): [`Solid`](Solid.md)
|
|
356
365
|
|
|
357
366
|
|
|
358
367
|
|
|
@@ -362,39 +371,39 @@ Extrudes along +Z with degree twist and top scaling.
|
|
|
362
371
|
|
|
363
372
|
<a id="options-3"></a>
|
|
364
373
|
|
|
365
|
-
**`options`** · [`ExtrudeOptions`](
|
|
374
|
+
**`options`** · [`ExtrudeOptions`](ExtrudeOptions.md) · Required
|
|
366
375
|
|
|
367
|
-
- [`height`](
|
|
376
|
+
- [`height`](ExtrudeOptions.md#height) · `number` · Required
|
|
368
377
|
|
|
369
378
|
Positive extrusion height in millimetres.
|
|
370
379
|
|
|
371
|
-
- [`
|
|
380
|
+
- [`slices`](ExtrudeOptions.md#slices) · `number` · Optional
|
|
372
381
|
|
|
373
|
-
|
|
382
|
+
Positive longitudinal interval count; n slices create n + 1 profile layers. Overrides ordinary extrusion's physical sampling.
|
|
374
383
|
|
|
375
|
-
- [`
|
|
384
|
+
- [`limits`](ExtrudeOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
|
|
376
385
|
|
|
377
|
-
|
|
386
|
+
Explicit output and sampling allocation ceilings.
|
|
378
387
|
|
|
379
|
-
- [`
|
|
388
|
+
- [`resolution`](ExtrudeOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
|
|
380
389
|
|
|
381
|
-
|
|
390
|
+
Operation-level physical policy over the nearest model scope.
|
|
382
391
|
|
|
383
|
-
- [`
|
|
392
|
+
- [`scale`](ExtrudeOptions.md#scale) · `number` \| [`Vector2Input`](../geometry/Vector2Input.md) · Optional
|
|
384
393
|
|
|
385
|
-
|
|
394
|
+
Final profile-local uniform or XY scale, interpolated from one before twisting. Both components must be positive or both zero for an apex of one simple boundary. Defaults to one.
|
|
386
395
|
|
|
387
|
-
- [`
|
|
396
|
+
- [`twist`](ExtrudeOptions.md#twist) · `number` · Optional
|
|
388
397
|
|
|
389
|
-
|
|
398
|
+
Finite rotation of the top profile about +Z, in degrees; defaults to zero.
|
|
390
399
|
|
|
391
|
-
- [`
|
|
400
|
+
- [`ends`](ExtrudeOptions.md#ends) · [`EndTreatments`](EndTreatments.md) · Optional
|
|
392
401
|
|
|
393
|
-
|
|
402
|
+
Independent inward treatments on every material rim. Twisted extrusions admit chamfers with cap and normal-section wall setbacks; other treatments require zero twist. Enabled treatments require unit scale and preserve boundary topology. The base slices grid is retained, with additional treatment/refinement rings where necessary.
|
|
394
403
|
|
|
395
|
-
- [`
|
|
404
|
+
- [`center`](ExtrudeOptions.md#center) · `boolean` · Optional
|
|
396
405
|
|
|
397
|
-
|
|
406
|
+
Center the extrusion on Z; otherwise its bottom is at zero. Defaults to false.
|
|
398
407
|
|
|
399
408
|
|
|
400
409
|
|
|
@@ -408,7 +417,7 @@ Extrudes along +Z with degree twist and top scaling.
|
|
|
408
417
|
|
|
409
418
|
|
|
410
419
|
|
|
411
|
-
**revolve**(`options?`: [`RevolveOptions`](
|
|
420
|
+
**revolve**(`options?`: [`RevolveOptions`](RevolveOptions.md)): [`Solid`](Solid.md)
|
|
412
421
|
|
|
413
422
|
|
|
414
423
|
|
|
@@ -418,20 +427,20 @@ Revolves a filled radial/Z shape around +Z, with caps for partial sweeps.
|
|
|
418
427
|
|
|
419
428
|
<a id="options-4"></a>
|
|
420
429
|
|
|
421
|
-
**`options`** · [`RevolveOptions`](
|
|
430
|
+
**`options`** · [`RevolveOptions`](RevolveOptions.md) · Optional
|
|
422
431
|
|
|
423
|
-
- [`segments`](
|
|
432
|
+
- [`segments`](RevolveOptions.md#segments) · `number` · Optional
|
|
424
433
|
|
|
425
434
|
Exact circumferential segment count from three through the configured safety limit.
|
|
426
435
|
|
|
427
436
|
This local topology override takes precedence over [CircularPrimitiveOptions.resolution](../geometry/CircularPrimitiveOptions.md#resolution)
|
|
428
437
|
and any active model-wide resolution policy.
|
|
429
438
|
|
|
430
|
-
- [`resolution`](
|
|
439
|
+
- [`resolution`](RevolveOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
|
|
431
440
|
|
|
432
441
|
Operation-level physical tessellation policy over the active model-wide policy.
|
|
433
442
|
|
|
434
|
-
- [`degrees`](
|
|
443
|
+
- [`degrees`](RevolveOptions.md#degrees) · `number` · Optional · Default: `360`
|
|
435
444
|
|
|
436
445
|
Positive sweep in degrees, no greater than 360. Defaults to a full revolution;
|
|
437
446
|
smaller sweeps form partial revolutions with end caps.
|
|
@@ -439,7 +448,7 @@ Revolves a filled radial/Z shape around +Z, with caps for partial sweeps.
|
|
|
439
448
|
revolutions require at least three sweep intervals: adaptive sampling refines to that floor,
|
|
440
449
|
while exact counts that imply fewer intervals reject. Pure mesh.revolve supports one interval.
|
|
441
450
|
|
|
442
|
-
- [`limits`](
|
|
451
|
+
- [`limits`](RevolveOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
|
|
443
452
|
|
|
444
453
|
Explicit output and sampling allocation ceilings.
|
|
445
454
|
|
|
@@ -453,61 +462,119 @@ Revolves a filled radial/Z shape around +Z, with caps for partial sweeps.
|
|
|
453
462
|
|
|
454
463
|
### sweep()
|
|
455
464
|
|
|
465
|
+
#### Call Signature
|
|
456
466
|
|
|
457
467
|
|
|
458
|
-
**sweep**(`path`: [`Path3Input`](../geometry/Path3Input.md), `options?`: [`SweepOptions`](../geometry/SweepOptions.md)): [`Solid`](Solid.md)
|
|
459
468
|
|
|
469
|
+
**sweep**(`path`: [`Path3Input`](../geometry/Path3Input.md), `options?`: [`SweepOptions`](SweepOptions.md)): [`Solid`](Solid.md)
|
|
460
470
|
|
|
461
471
|
|
|
462
|
-
Sweeps this filled section using the selected frame policy and degree twist.
|
|
463
472
|
|
|
464
|
-
|
|
473
|
+
Sweeps this filled section along a path or through explicit affine placements.
|
|
474
|
+
|
|
475
|
+
##### Parameters
|
|
465
476
|
|
|
466
477
|
<a id="path"></a>
|
|
467
478
|
|
|
468
479
|
**`path`** · [`Path3Input`](../geometry/Path3Input.md) · Required
|
|
469
480
|
|
|
481
|
+
XYZ path in millimetres.
|
|
482
|
+
|
|
470
483
|
|
|
471
484
|
|
|
472
485
|
<a id="options-5"></a>
|
|
473
486
|
|
|
474
|
-
**`options`** · [`SweepOptions`](
|
|
487
|
+
**`options`** · [`SweepOptions`](SweepOptions.md) · Optional
|
|
475
488
|
|
|
476
|
-
- [`closed`](
|
|
489
|
+
- [`closed`](SweepOptions.md#closed) · `boolean` · Optional
|
|
477
490
|
|
|
478
491
|
Raw point closure defaults to false; a Path3 supplies its closure and rejects conflicts.
|
|
479
492
|
|
|
480
|
-
- [`limits`](
|
|
493
|
+
- [`limits`](SweepOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
|
|
481
494
|
|
|
482
495
|
Explicit output and sampling allocation ceilings.
|
|
483
496
|
|
|
484
|
-
- [`orientation`](
|
|
497
|
+
- [`orientation`](SweepOptions.md#orientation) · [`SweepOrientation`](SweepOrientation.md) · Optional
|
|
485
498
|
|
|
486
|
-
|
|
499
|
+
Default transport minimizes rotations, initially projecting +X then +Y then +Z.
|
|
487
500
|
|
|
488
|
-
- [`resolution`](
|
|
501
|
+
- [`resolution`](SweepOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
|
|
489
502
|
|
|
490
|
-
Physical sampling of
|
|
503
|
+
Physical sampling of twist and varying scale, plus optional segment-length limits. Inserted stations retain authored controls.
|
|
491
504
|
|
|
492
|
-
- [`twist`](
|
|
505
|
+
- [`twist`](SweepOptions.md#twist) · `number` · Optional
|
|
493
506
|
|
|
494
|
-
Total additional profile rotation in degrees
|
|
507
|
+
Total additional profile rotation in degrees; compatible closed boundaries are aligned automatically.
|
|
495
508
|
|
|
496
|
-
- [`twistBy`](
|
|
509
|
+
- [`twistBy`](SweepOptions.md#twistby) · `"length"` \| `"stations"` · Optional
|
|
497
510
|
|
|
498
511
|
Twist advances by physical path length (default), or normalized authored station position, including a closed seam gap.
|
|
499
512
|
|
|
500
|
-
- [`scale`](
|
|
513
|
+
- [`scale`](SweepOptions.md#scale) · `number` \| [`Vector2Input`](../geometry/Vector2Input.md) \| readonly [`Vector2Input`](../geometry/Vector2Input.md)[] · Optional
|
|
501
514
|
|
|
502
|
-
Positive uniform/XY scale,
|
|
515
|
+
Positive final uniform/XY scale on open paths, interpolated from one by path length. Closed paths use a uniform scale. Explicit XY pairs set each original station; omitted is one.
|
|
503
516
|
|
|
504
|
-
- [`seamProfileOffset`](../geometry/SweepOptions.md#seamprofileoffset) · `number` · Optional
|
|
505
517
|
|
|
506
|
-
Corresponding point-index advance at a rotationally equivalent closed seam.
|
|
507
518
|
|
|
519
|
+
##### Returns
|
|
508
520
|
|
|
521
|
+
[`Solid`](Solid.md)
|
|
509
522
|
|
|
510
|
-
####
|
|
523
|
+
#### Call Signature
|
|
524
|
+
|
|
525
|
+
|
|
526
|
+
|
|
527
|
+
**sweep**(`transforms`: readonly [`Transform3Input`](../geometry/Transform3Input.md)[], `options?`: [`SweepTransformOptions`](SweepTransformOptions.md)): [`Solid`](Solid.md)
|
|
528
|
+
|
|
529
|
+
|
|
530
|
+
|
|
531
|
+
Connects this section through exactly the supplied affine placements.
|
|
532
|
+
|
|
533
|
+
##### Parameters
|
|
534
|
+
|
|
535
|
+
<a id="transforms"></a>
|
|
536
|
+
|
|
537
|
+
**`transforms`** · readonly [`Transform3Input`](../geometry/Transform3Input.md)[] · Required
|
|
538
|
+
|
|
539
|
+
Ordered local-to-model placements.
|
|
540
|
+
|
|
541
|
+
|
|
542
|
+
|
|
543
|
+
<a id="options-6"></a>
|
|
544
|
+
|
|
545
|
+
**`options`** · [`SweepTransformOptions`](SweepTransformOptions.md) · Optional
|
|
546
|
+
|
|
547
|
+
- [`closed`](SweepTransformOptions.md#closed) · `boolean` · Optional
|
|
548
|
+
|
|
549
|
+
Connect the last supplied station to the first without caps. Defaults to false.
|
|
550
|
+
|
|
551
|
+
- [`limits`](SweepTransformOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
|
|
552
|
+
|
|
553
|
+
Explicit output and station allocation ceilings.
|
|
554
|
+
|
|
555
|
+
- [`orientation`](SweepTransformOptions.md#orientation) · `undefined` · Optional
|
|
556
|
+
|
|
557
|
+
Encoded by the explicit transforms.
|
|
558
|
+
|
|
559
|
+
- [`resolution`](SweepTransformOptions.md#resolution) · `undefined` · Optional
|
|
560
|
+
|
|
561
|
+
Explicit stations are never refined.
|
|
562
|
+
|
|
563
|
+
- [`twist`](SweepTransformOptions.md#twist) · `undefined` · Optional
|
|
564
|
+
|
|
565
|
+
Encoded by the explicit transforms.
|
|
566
|
+
|
|
567
|
+
- [`twistBy`](SweepTransformOptions.md#twistby) · `undefined` · Optional
|
|
568
|
+
|
|
569
|
+
Encoded by the explicit transforms.
|
|
570
|
+
|
|
571
|
+
- [`scale`](SweepTransformOptions.md#scale) · `undefined` · Optional
|
|
572
|
+
|
|
573
|
+
Encoded by the explicit transforms.
|
|
574
|
+
|
|
575
|
+
|
|
576
|
+
|
|
577
|
+
##### Returns
|
|
511
578
|
|
|
512
579
|
[`Solid`](Solid.md)
|
|
513
580
|
|
|
@@ -589,18 +656,13 @@ Reads a copied immutable named anchor during active synchronous model execution.
|
|
|
589
656
|
|
|
590
657
|
## Related APIs
|
|
591
658
|
|
|
592
|
-
- [
|
|
593
|
-
- [
|
|
594
|
-
- [Path3Input](../geometry/Path3Input.md)
|
|
595
|
-
- [Pivot2Options](../geometry/Pivot2Options.md)
|
|
596
|
-
- [RegionData](../geometry/RegionData.md)
|
|
597
|
-
- [RevolveOptions](../geometry/RevolveOptions.md)
|
|
659
|
+
- [ExtrudeOptions](ExtrudeOptions.md)
|
|
660
|
+
- [RevolveOptions](RevolveOptions.md)
|
|
598
661
|
- [SectionInspection](SectionInspection.md)
|
|
599
662
|
- [SectionOffsetOptions](SectionOffsetOptions.md)
|
|
600
663
|
- [Solid](Solid.md)
|
|
601
|
-
- [SweepOptions](
|
|
602
|
-
- [
|
|
603
|
-
- [Vector2Input](../geometry/Vector2Input.md)
|
|
664
|
+
- [SweepOptions](SweepOptions.md)
|
|
665
|
+
- [SweepTransformOptions](SweepTransformOptions.md)
|
|
604
666
|
|
|
605
667
|
## Guides
|
|
606
668
|
|
|
@@ -608,10 +670,10 @@ Reads a copied immutable named anchor during active synchronous model execution.
|
|
|
608
670
|
- [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
609
671
|
- [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
|
|
610
672
|
|
|
611
|
-
##
|
|
673
|
+
## Import
|
|
612
674
|
|
|
613
675
|
```ts
|
|
614
676
|
import type { Section } from "@metamesh/modeling";
|
|
615
677
|
```
|
|
616
678
|
|
|
617
|
-
Package: `@metamesh/modeling@0.
|
|
679
|
+
Package: `@metamesh/modeling@0.20.0`.
|
|
@@ -62,7 +62,6 @@ Section input excludes point input.
|
|
|
62
62
|
## Related APIs
|
|
63
63
|
|
|
64
64
|
- [Section](Section.md)
|
|
65
|
-
- [Vector2Input](../geometry/Vector2Input.md)
|
|
66
65
|
|
|
67
66
|
## Guides
|
|
68
67
|
|
|
@@ -70,10 +69,10 @@ Section input excludes point input.
|
|
|
70
69
|
- [Primitive booleans and repeated placement](../../guides/transforms-and-placement.md#primitive-booleans-and-repeated-placement)
|
|
71
70
|
- [Join an independently modeled feature](../../guides/solid-joins.md#join-an-independently-modeled-feature)
|
|
72
71
|
|
|
73
|
-
##
|
|
72
|
+
## Import
|
|
74
73
|
|
|
75
74
|
```ts
|
|
76
75
|
import type { SectionHullOptions } from "@metamesh/modeling";
|
|
77
76
|
```
|
|
78
77
|
|
|
79
|
-
Package: `@metamesh/modeling@0.
|
|
78
|
+
Package: `@metamesh/modeling@0.20.0`.
|
|
@@ -75,18 +75,14 @@ Number of disconnected filled section components.
|
|
|
75
75
|
Number of native section vertices.
|
|
76
76
|
|
|
77
77
|
|
|
78
|
-
## Related APIs
|
|
79
|
-
|
|
80
|
-
- [Bounds2Data](../geometry/Bounds2Data.md)
|
|
81
|
-
|
|
82
78
|
## Guides
|
|
83
79
|
|
|
84
80
|
- [Solid inspection](../../guides/resolution-and-inspection.md#solid-inspection)
|
|
85
81
|
|
|
86
|
-
##
|
|
82
|
+
## Import
|
|
87
83
|
|
|
88
84
|
```ts
|
|
89
85
|
import type { SectionInspection } from "@metamesh/modeling";
|
|
90
86
|
```
|
|
91
87
|
|
|
92
|
-
Package: `@metamesh/modeling@0.
|
|
88
|
+
Package: `@metamesh/modeling@0.20.0`.
|
|
@@ -13,10 +13,10 @@ Clipper2 join styles accepted by robust region offsets.
|
|
|
13
13
|
- [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
14
14
|
- [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
|
|
15
15
|
|
|
16
|
-
##
|
|
16
|
+
## Import
|
|
17
17
|
|
|
18
18
|
```ts
|
|
19
19
|
import type { SectionOffsetJoin } from "@metamesh/modeling";
|
|
20
20
|
```
|
|
21
21
|
|
|
22
|
-
Package: `@metamesh/modeling@0.
|
|
22
|
+
Package: `@metamesh/modeling@0.20.0`.
|
|
@@ -53,7 +53,6 @@ Operation-level physical tessellation policy over the active model-wide policy.
|
|
|
53
53
|
|
|
54
54
|
## Related APIs
|
|
55
55
|
|
|
56
|
-
- [GeometryResolution](../geometry/GeometryResolution.md)
|
|
57
56
|
- [SectionOffsetJoin](SectionOffsetJoin.md)
|
|
58
57
|
|
|
59
58
|
## Guides
|
|
@@ -62,10 +61,10 @@ Operation-level physical tessellation policy over the active model-wide policy.
|
|
|
62
61
|
- [SVG sections: fills and strokes are different inputs](../../guides/svg-and-text.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
63
62
|
- [Text and font variability](../../guides/svg-and-text.md#text-and-font-variability)
|
|
64
63
|
|
|
65
|
-
##
|
|
64
|
+
## Import
|
|
66
65
|
|
|
67
66
|
```ts
|
|
68
67
|
import type { SectionOffsetOptions } from "@metamesh/modeling";
|
|
69
68
|
```
|
|
70
69
|
|
|
71
|
-
Package: `@metamesh/modeling@0.
|
|
70
|
+
Package: `@metamesh/modeling@0.20.0`.
|
|
@@ -11,12 +11,17 @@ A no-op may reuse the receiver; final part placement belongs in `part` options.
|
|
|
11
11
|
|
|
12
12
|
## Example: Shape a body with a through bore
|
|
13
13
|
|
|
14
|
+
|
|
15
|
+
|
|
14
16
|
```ts
|
|
15
17
|
const body = box({ size: [30, 20, 6] })
|
|
16
18
|
.subtract(cylinder({ height: 8, radius: 3 }))
|
|
17
19
|
.rotate([0, 0, 45]);
|
|
20
|
+
body;
|
|
18
21
|
```
|
|
19
22
|
|
|
23
|
+
|
|
24
|
+
|
|
20
25
|
## Methods
|
|
21
26
|
|
|
22
27
|
### translate()
|
|
@@ -121,7 +126,7 @@ Uniform or per-axis nonsingular scaling; negative factors reflect geometry.
|
|
|
121
126
|
|
|
122
127
|
|
|
123
128
|
|
|
124
|
-
|
|
129
|
+
Reflects across a plane through the origin.
|
|
125
130
|
|
|
126
131
|
#### Parameters
|
|
127
132
|
|
|
@@ -129,6 +134,8 @@ Reflection across an origin line/plane.
|
|
|
129
134
|
|
|
130
135
|
**`normal`** · [`Vector3Input`](../geometry/Vector3Input.md) · Required
|
|
131
136
|
|
|
137
|
+
Nonzero XYZ plane normal; length has no effect.
|
|
138
|
+
|
|
132
139
|
|
|
133
140
|
|
|
134
141
|
#### Returns
|
|
@@ -145,7 +152,7 @@ Reflection across an origin line/plane.
|
|
|
145
152
|
|
|
146
153
|
|
|
147
154
|
|
|
148
|
-
Applies
|
|
155
|
+
Applies an XYZ frame, transform value, or canonical row-major affine matrix.
|
|
149
156
|
|
|
150
157
|
#### Parameters
|
|
151
158
|
|
|
@@ -165,7 +172,7 @@ Applies a reusable XYZ placement or canonical row-major matrix.
|
|
|
165
172
|
|
|
166
173
|
|
|
167
174
|
|
|
168
|
-
**toMesh**(): [`TriangleMesh`](../
|
|
175
|
+
**toMesh**(): [`TriangleMesh`](../mesh/TriangleMesh.md)
|
|
169
176
|
|
|
170
177
|
|
|
171
178
|
|
|
@@ -174,7 +181,7 @@ Requires an active synchronous model execution; the returned TriangleMesh is cal
|
|
|
174
181
|
|
|
175
182
|
#### Returns
|
|
176
183
|
|
|
177
|
-
[`TriangleMesh`](../
|
|
184
|
+
[`TriangleMesh`](../mesh/TriangleMesh.md)
|
|
178
185
|
|
|
179
186
|
***
|
|
180
187
|
|
|
@@ -221,6 +228,8 @@ The result has no inherited anchors. This is not a rolling-ball fillet.
|
|
|
221
228
|
|
|
222
229
|
**`feature`** · `Solid` · Required
|
|
223
230
|
|
|
231
|
+
Positioned feature that owns the source datum.
|
|
232
|
+
|
|
224
233
|
|
|
225
234
|
|
|
226
235
|
<a id="options-2"></a>
|
|
@@ -370,12 +379,16 @@ Places an explicit or named source anchor against an explicit target anchor.
|
|
|
370
379
|
|
|
371
380
|
**`source`** · `string` \| [`Anchor3`](../geometry/Anchor3-type.md) · Required
|
|
372
381
|
|
|
382
|
+
Anchor on this solid, supplied directly or by name.
|
|
383
|
+
|
|
373
384
|
|
|
374
385
|
|
|
375
386
|
<a id="target"></a>
|
|
376
387
|
|
|
377
388
|
**`target`** · [`Anchor3`](../geometry/Anchor3-type.md) · Required
|
|
378
389
|
|
|
390
|
+
Anchor in shared modeling coordinates.
|
|
391
|
+
|
|
379
392
|
|
|
380
393
|
|
|
381
394
|
<a id="options-3"></a>
|
|
@@ -589,12 +602,16 @@ Requires active synchronous model execution.
|
|
|
589
602
|
|
|
590
603
|
**`origin`** · [`Vector3Input`](../geometry/Vector3Input.md) · Required
|
|
591
604
|
|
|
605
|
+
Segment start in modeling coordinates.
|
|
606
|
+
|
|
592
607
|
|
|
593
608
|
|
|
594
609
|
<a id="endpoint"></a>
|
|
595
610
|
|
|
596
611
|
**`endpoint`** · [`Vector3Input`](../geometry/Vector3Input.md) · Required
|
|
597
612
|
|
|
613
|
+
Segment end in modeling coordinates.
|
|
614
|
+
|
|
598
615
|
|
|
599
616
|
|
|
600
617
|
#### Returns
|
|
@@ -655,28 +672,23 @@ readonly \[`Solid`, `Solid`\]
|
|
|
655
672
|
|
|
656
673
|
## Related APIs
|
|
657
674
|
|
|
658
|
-
- [Anchor3](../geometry/Anchor3-type.md)
|
|
659
|
-
- [AttachOptions](../geometry/AttachOptions.md)
|
|
660
675
|
- [JoinOptions](JoinOptions.md)
|
|
661
|
-
- [Pivot3Options](../geometry/Pivot3Options.md)
|
|
662
676
|
- [PlaneOptions](PlaneOptions.md)
|
|
663
677
|
- [Section](Section.md)
|
|
664
678
|
- [SolidInspection](SolidInspection.md)
|
|
665
679
|
- [SolidSegmentHit](SolidSegmentHit.md)
|
|
666
|
-
- [Transform3Input](../geometry/Transform3Input.md)
|
|
667
|
-
- [TriangleMesh](../geometry/TriangleMesh.md)
|
|
668
|
-
- [Vector3Input](../geometry/Vector3Input.md)
|
|
669
680
|
|
|
670
681
|
## Guides
|
|
671
682
|
|
|
672
683
|
- [Choose a primitive](../../guides/profiles-and-extrusion.md#choose-a-primitive)
|
|
673
684
|
- [Treated boxes, frustums, and mirrored arrays](../../guides/profiles-and-extrusion.md#treated-boxes-frustums-and-mirrored-arrays)
|
|
674
685
|
- [Finish a profile with a hole](../../guides/profiles-and-extrusion.md#finish-a-profile-with-a-hole)
|
|
686
|
+
- [Shape openings and local edges](../../guides/profiles-and-extrusion.md#shape-openings-and-local-edges)
|
|
675
687
|
|
|
676
|
-
##
|
|
688
|
+
## Import
|
|
677
689
|
|
|
678
690
|
```ts
|
|
679
691
|
import type { Solid } from "@metamesh/modeling";
|
|
680
692
|
```
|
|
681
693
|
|
|
682
|
-
Package: `@metamesh/modeling@0.
|
|
694
|
+
Package: `@metamesh/modeling@0.20.0`.
|
|
@@ -75,18 +75,14 @@ Total native surface area in square millimetres.
|
|
|
75
75
|
Effective native geometric tolerance in millimetres.
|
|
76
76
|
|
|
77
77
|
|
|
78
|
-
## Related APIs
|
|
79
|
-
|
|
80
|
-
- [Bounds3Data](../geometry/Bounds3Data.md)
|
|
81
|
-
|
|
82
78
|
## Guides
|
|
83
79
|
|
|
84
80
|
- [Solid inspection](../../guides/resolution-and-inspection.md#solid-inspection)
|
|
85
81
|
|
|
86
|
-
##
|
|
82
|
+
## Import
|
|
87
83
|
|
|
88
84
|
```ts
|
|
89
85
|
import type { SolidInspection } from "@metamesh/modeling";
|
|
90
86
|
```
|
|
91
87
|
|
|
92
|
-
Package: `@metamesh/modeling@0.
|
|
88
|
+
Package: `@metamesh/modeling@0.20.0`.
|
|
@@ -51,18 +51,14 @@ Intersection position in millimetres.
|
|
|
51
51
|
Outward unit surface normal at the intersection.
|
|
52
52
|
|
|
53
53
|
|
|
54
|
-
## Related APIs
|
|
55
|
-
|
|
56
|
-
- [Vector3Data](../geometry/Vector3Data.md)
|
|
57
|
-
|
|
58
54
|
## Guides
|
|
59
55
|
|
|
60
56
|
- [Solid inspection](../../guides/resolution-and-inspection.md#solid-inspection)
|
|
61
57
|
|
|
62
|
-
##
|
|
58
|
+
## Import
|
|
63
59
|
|
|
64
60
|
```ts
|
|
65
61
|
import type { SolidSegmentHit } from "@metamesh/modeling";
|
|
66
62
|
```
|
|
67
63
|
|
|
68
|
-
Package: `@metamesh/modeling@0.
|
|
64
|
+
Package: `@metamesh/modeling@0.20.0`.
|