@metamesh/modeling 0.14.0 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +61 -0
- package/README.md +55 -13
- package/dist/api/engine.d.ts +15 -7
- package/dist/api/geometry.d.ts +853 -562
- package/dist/api/index.d.ts +604 -227
- package/dist/api/text.d.ts +9 -7
- package/dist/docs/guides/concepts.md +295 -91
- package/dist/docs/guides/fonts.md +9 -8
- package/dist/docs/guides/fundamentals.md +22 -23
- package/dist/docs/guides/generation.md +24 -23
- package/dist/docs/guides/hosting.md +26 -11
- package/dist/docs/guides/recipes.md +74 -48
- package/dist/docs/guides/standalone-model.md +42 -0
- package/dist/docs/manifest.json +1555 -749
- package/dist/docs/reference/engine/Export3mfOptions.md +1 -1
- package/dist/docs/reference/engine/ExportMeshPart.md +1 -1
- package/dist/docs/reference/engine/GenerationOptions.md +1 -1
- package/dist/docs/reference/engine/GeometryResource.md +1 -1
- package/dist/docs/reference/engine/ModelDependencies.md +1 -1
- package/dist/docs/reference/engine/ModelEngine.md +1 -1
- package/dist/docs/reference/engine/ModelEngineOptions.md +4 -8
- package/dist/docs/reference/engine/ModelSession.md +1 -1
- package/dist/docs/reference/engine/ModelSnapshot.md +21 -10
- package/dist/docs/reference/engine/SessionOptions.md +1 -1
- package/dist/docs/reference/engine/SnapshotPart.md +6 -3
- package/dist/docs/reference/engine/categories/host-lifecycle.md +7 -2
- package/dist/docs/reference/engine/createModelEngine.md +3 -3
- package/dist/docs/reference/engine/defaultModelingLimits.md +1 -1
- package/dist/docs/reference/engine/modelingWasmUrl.md +1 -1
- package/dist/docs/reference/engine/validateModel.md +1 -1
- package/dist/docs/reference/engine.md +6 -2
- package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +4 -4
- package/dist/docs/reference/geometry/{Anchor3.md → Anchor3-type.md} +6 -5
- package/dist/docs/reference/geometry/ArcCurve2.md +11 -7
- package/dist/docs/reference/geometry/ArcCurve3.md +13 -9
- package/dist/docs/reference/geometry/{AttachTransformOptions.md → AttachOptions.md} +11 -5
- package/dist/docs/reference/geometry/AxisAngleRotation3.md +2 -1
- package/dist/docs/reference/geometry/Bounds2-type.md +127 -0
- package/dist/docs/reference/geometry/Bounds2Data.md +45 -0
- package/dist/docs/reference/geometry/Bounds2Input.md +21 -0
- package/dist/docs/reference/geometry/Bounds3-type.md +127 -0
- package/dist/docs/reference/geometry/Bounds3Data.md +45 -0
- package/dist/docs/reference/geometry/Bounds3Input.md +21 -0
- package/dist/docs/reference/geometry/BoundsFit2.md +6 -5
- package/dist/docs/reference/geometry/BoundsFit3.md +6 -5
- package/dist/docs/reference/geometry/BoundsFitOptions.md +2 -1
- package/dist/docs/reference/geometry/BoundsFromSizeOptions.md +2 -1
- package/dist/docs/reference/geometry/BoxAnchorFace.md +2 -1
- package/dist/docs/reference/geometry/BoxAnchorOptions.md +5 -4
- package/dist/docs/reference/geometry/BoxEdge.md +1 -1
- package/dist/docs/reference/geometry/BoxEdgeSelection.md +1 -1
- package/dist/docs/reference/geometry/BoxEdgeTreatments.md +1 -1
- package/dist/docs/reference/geometry/BoxOptions.md +10 -10
- package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +8 -1
- package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/CircleContourOptions.md +5 -1
- package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +1 -1
- package/dist/docs/reference/geometry/CircularResolutionOptions.md +7 -7
- package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +6 -1
- package/dist/docs/reference/geometry/ClearanceHoleFit.md +8 -1
- package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +6 -1
- package/dist/docs/reference/geometry/Contour.md +10 -4
- package/dist/docs/reference/geometry/ContourCurve.md +5 -1
- package/dist/docs/reference/geometry/ContourPoint.md +6 -1
- package/dist/docs/reference/geometry/ContourSegment.md +5 -1
- package/dist/docs/reference/geometry/CorrespondingComponent.md +5 -1
- package/dist/docs/reference/geometry/CorrespondingContour.md +5 -1
- package/dist/docs/reference/geometry/CorrespondingProfile.md +5 -1
- package/dist/docs/reference/geometry/CorrespondingProfileStation.md +5 -1
- package/dist/docs/reference/geometry/CubicBezierCurve2.md +10 -6
- package/dist/docs/reference/geometry/CubicBezierCurve3.md +10 -6
- package/dist/docs/reference/geometry/Curve2.md +5 -1
- package/dist/docs/reference/geometry/Curve3.md +5 -1
- package/dist/docs/reference/geometry/CurveSamplingOptions.md +9 -3
- package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +7 -3
- package/dist/docs/reference/geometry/CylinderAnchorFace.md +2 -1
- package/dist/docs/reference/geometry/CylinderAnchorOptions.md +6 -5
- package/dist/docs/reference/geometry/CylinderOptions.md +3 -3
- package/dist/docs/reference/geometry/CylindricalGearDimensions.md +8 -3
- package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +8 -1
- package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +5 -1
- package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +7 -3
- package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +5 -1
- package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +6 -1
- package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +5 -1
- package/dist/docs/reference/geometry/CylindricalGearSpec.md +11 -6
- package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +1 -1
- package/dist/docs/reference/geometry/EdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/EllipseContourOptions.md +7 -3
- package/dist/docs/reference/geometry/EndTreatments.md +1 -1
- package/dist/docs/reference/geometry/ExtrudeOptions.md +10 -6
- package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +9 -5
- package/dist/docs/reference/geometry/FittedTextLayout.md +7 -3
- package/dist/docs/reference/geometry/Frame3.md +10 -6
- package/dist/docs/reference/geometry/GeometryError.md +1 -1
- package/dist/docs/reference/geometry/GeometryErrorCode.md +1 -1
- package/dist/docs/reference/geometry/GeometryErrorContext.md +1 -1
- package/dist/docs/reference/geometry/GeometryResolution.md +5 -5
- package/dist/docs/reference/geometry/GeometrySamplingLimits.md +5 -1
- package/dist/docs/reference/geometry/GeometryToleranceOptions.md +1 -1
- package/dist/docs/reference/geometry/GridPatternOptions.md +11 -5
- package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +5 -1
- package/dist/docs/reference/geometry/HeightfieldOptions.md +9 -5
- package/dist/docs/reference/geometry/HeightfieldPreflight.md +9 -4
- package/dist/docs/reference/geometry/HelicalThreadRidgeMeshOptions.md +9 -5
- package/dist/docs/reference/geometry/HelicalThreadSolidMeshOptions.md +10 -6
- package/dist/docs/reference/geometry/HelicalThreadSolidMeshPreflight.md +7 -2
- package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +4 -3
- package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +10 -6
- package/dist/docs/reference/geometry/KnuckleHingeBaseSpec.md +82 -0
- package/dist/docs/reference/geometry/KnuckleHingeDimensions.md +148 -0
- package/dist/docs/reference/geometry/KnuckleHingeInterval.md +46 -0
- package/dist/docs/reference/geometry/KnuckleHingeSamplingOptions.md +51 -0
- package/dist/docs/reference/geometry/KnuckleHingeSpec.md +22 -0
- package/dist/docs/reference/geometry/LineCurve2.md +8 -4
- package/dist/docs/reference/geometry/LineCurve3.md +8 -4
- package/dist/docs/reference/geometry/LinearPatternOptions.md +12 -5
- package/dist/docs/reference/geometry/LoftCorrespondence.md +6 -1
- package/dist/docs/reference/geometry/LoftMeshStation.md +8 -4
- package/dist/docs/reference/geometry/LoftOptions.md +5 -1
- package/dist/docs/reference/geometry/LoftPlacement.md +5 -1
- package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +5 -1
- package/dist/docs/reference/geometry/MatchProfilesOptions.md +5 -1
- package/dist/docs/reference/geometry/MetricFastenerSize.md +9 -2
- package/dist/docs/reference/geometry/MetricFastenerStandard.md +5 -1
- package/dist/docs/reference/geometry/MetricHexNutDimensions.md +6 -1
- package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +6 -1
- package/dist/docs/reference/geometry/ModelingLimits.md +1 -1
- package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +5 -1
- package/dist/docs/reference/geometry/Path2-type.md +196 -0
- package/dist/docs/reference/geometry/Path2Data.md +50 -0
- package/dist/docs/reference/geometry/Path2Input.md +20 -0
- package/dist/docs/reference/geometry/Path3-type.md +196 -0
- package/dist/docs/reference/geometry/Path3Data.md +50 -0
- package/dist/docs/reference/geometry/Path3Input.md +20 -0
- package/dist/docs/reference/geometry/PathFrame.md +9 -5
- package/dist/docs/reference/geometry/PathLocation.md +69 -0
- package/dist/docs/reference/geometry/PathNormalGuide.md +10 -5
- package/dist/docs/reference/geometry/PathOptions.md +38 -0
- package/dist/docs/reference/geometry/PathPatternOptions.md +3 -3
- package/dist/docs/reference/geometry/PathPlacement.md +8 -4
- package/dist/docs/reference/geometry/PathResamplingOptions.md +84 -0
- package/dist/docs/reference/geometry/Pivot2Options.md +2 -1
- package/dist/docs/reference/geometry/Pivot3Options.md +2 -1
- package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +8 -1
- package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +26 -22
- package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +5 -1
- package/dist/docs/reference/geometry/PlanarPatchQuality.md +7 -3
- package/dist/docs/reference/geometry/PolygonData.md +7 -2
- package/dist/docs/reference/geometry/PolylineResamplingOptions.md +8 -4
- package/dist/docs/reference/geometry/PrimitiveAttachment.md +31 -0
- package/dist/docs/reference/geometry/PrimitiveAttachmentOptions.md +104 -0
- package/dist/docs/reference/geometry/PrintableThreadFit.md +8 -1
- package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +6 -1
- package/dist/docs/reference/geometry/Profile.md +8 -2
- package/dist/docs/reference/geometry/ProfileComponent2.md +5 -1
- package/dist/docs/reference/geometry/ProfileContour2.md +8 -2
- package/dist/docs/reference/geometry/ProfileSpan2.md +7 -3
- package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +3 -3
- package/dist/docs/reference/geometry/RackPitchDimensions.md +6 -1
- package/dist/docs/reference/geometry/RackPitchSpec.md +10 -5
- package/dist/docs/reference/geometry/RadialPatternOptions.md +17 -22
- package/dist/docs/reference/geometry/RadialSizing.md +1 -1
- package/dist/docs/reference/geometry/RadialSizingOptions.md +1 -1
- package/dist/docs/reference/geometry/RectangleContourOptions.md +7 -3
- package/dist/docs/reference/geometry/RectangleCornerTreatment.md +5 -1
- package/dist/docs/reference/geometry/RectangleCornerTreatments.md +5 -1
- package/dist/docs/reference/geometry/RectangleProfileOptions.md +7 -3
- package/dist/docs/reference/geometry/RegionData.md +6 -2
- package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +7 -3
- package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +1 -1
- package/dist/docs/reference/geometry/RevolveOptions.md +13 -4
- package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/RowLayoutOptions.md +2 -1
- package/dist/docs/reference/geometry/SampleContourOptions.md +7 -3
- package/dist/docs/reference/geometry/SampleHelixOptions.md +5 -1
- package/dist/docs/reference/geometry/SampleSideProfileOptions.md +7 -3
- package/dist/docs/reference/geometry/SampledCurve2.md +8 -4
- package/dist/docs/reference/geometry/SampledCurve3.md +8 -4
- package/dist/docs/reference/geometry/SampledThreadHelices.md +7 -3
- package/dist/docs/reference/geometry/SideProfileCurve.md +5 -1
- package/dist/docs/reference/geometry/SideProfilePoint.md +6 -1
- package/dist/docs/reference/geometry/SideProfileSegment.md +5 -1
- package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +7 -3
- package/dist/docs/reference/geometry/SphereOptions.md +3 -3
- package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/StrokeCap.md +14 -0
- package/dist/docs/reference/geometry/StrokeJoin.md +14 -0
- package/dist/docs/reference/geometry/{StrokePathRegionOptions.md → StrokeOptions.md} +11 -7
- package/dist/docs/reference/geometry/SvgImportOptions.md +5 -1
- package/dist/docs/reference/geometry/SvgRegionPreflight.md +6 -2
- package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +19 -15
- package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +16 -11
- package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +14 -9
- package/dist/docs/reference/geometry/SweepOptions.md +10 -6
- package/dist/docs/reference/geometry/SweepOrientation.md +11 -7
- package/dist/docs/reference/geometry/ThreadBevelOptions.md +5 -1
- package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +9 -5
- package/dist/docs/reference/geometry/ThreadCompensationOptions.md +5 -1
- package/dist/docs/reference/geometry/ThreadEndStyle.md +8 -1
- package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +5 -1
- package/dist/docs/reference/geometry/ThreadHandedness.md +8 -1
- package/dist/docs/reference/geometry/ThreadHelixOptions.md +7 -3
- package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +8 -1
- package/dist/docs/reference/geometry/ThreadLeadInShape.md +8 -1
- package/dist/docs/reference/geometry/{ThreadProfile.md → ThreadProfile-type.md} +7 -3
- package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +5 -1
- package/dist/docs/reference/geometry/ThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/ThreadRole.md +8 -1
- package/dist/docs/reference/geometry/ThreadedNutBevel.md +8 -1
- package/dist/docs/reference/geometry/ThreadedNutOptions.md +10 -6
- package/dist/docs/reference/geometry/ThreadedNutPreflight.md +7 -3
- package/dist/docs/reference/geometry/ThreadedNutShape.md +8 -1
- package/dist/docs/reference/geometry/ThreadedRodOptions.md +10 -6
- package/dist/docs/reference/geometry/TorusOptions.md +8 -8
- package/dist/docs/reference/geometry/Transform2-type.md +6 -5
- package/dist/docs/reference/geometry/Transform2Data.md +15 -0
- package/dist/docs/reference/geometry/Transform2Input.md +4 -3
- package/dist/docs/reference/geometry/Transform3-type.md +6 -5
- package/dist/docs/reference/geometry/Transform3Data.md +18 -0
- package/dist/docs/reference/geometry/Transform3Input.md +4 -3
- package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +9 -4
- package/dist/docs/reference/geometry/TriangleMesh.md +6 -1
- package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +8 -4
- package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +5 -1
- package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +7 -3
- package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +7 -3
- package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +5 -1
- package/dist/docs/reference/geometry/TriangleMeshSignature.md +8 -4
- package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +8 -3
- package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +6 -1
- package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +5 -1
- package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/TubeOptions.md +8 -8
- package/dist/docs/reference/geometry/Vector2-type.md +6 -5
- package/dist/docs/reference/geometry/Vector2Data.md +15 -0
- package/dist/docs/reference/geometry/Vector2Input.md +4 -3
- package/dist/docs/reference/geometry/Vector3-type.md +6 -5
- package/dist/docs/reference/geometry/Vector3Data.md +15 -0
- package/dist/docs/reference/geometry/Vector3Input.md +4 -3
- package/dist/docs/reference/geometry/VectorTextArcBaseline.md +8 -3
- package/dist/docs/reference/geometry/VectorTextLayout.md +5 -1
- package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +5 -1
- package/dist/docs/reference/geometry/VectorTextMetrics.md +7 -3
- package/dist/docs/reference/geometry/VectorTextOptions.md +5 -1
- package/dist/docs/reference/geometry/add2.md +7 -6
- package/dist/docs/reference/geometry/add3.md +7 -6
- package/dist/docs/reference/geometry/analyzeTriangleMesh.md +5 -1
- package/dist/docs/reference/geometry/analyzeTriangleMeshQuality.md +6 -2
- package/dist/docs/reference/geometry/{createAnchor3.md → anchor3.md} +10 -9
- package/dist/docs/reference/geometry/anchorFrame3.md +9 -5
- package/dist/docs/reference/geometry/applyTransformDirection3.md +8 -7
- package/dist/docs/reference/geometry/applyTransformPoint3.md +8 -7
- package/dist/docs/reference/geometry/{attachTransform.md → attachmentTransform3.md} +16 -15
- package/dist/docs/reference/geometry/bounds2.md +38 -0
- package/dist/docs/reference/geometry/bounds3.md +38 -0
- package/dist/docs/reference/geometry/boundsCenter.md +12 -11
- package/dist/docs/reference/geometry/boundsFromSize.md +12 -11
- package/dist/docs/reference/geometry/boundsSize.md +12 -11
- package/dist/docs/reference/geometry/boxAnchor3.md +7 -6
- package/dist/docs/reference/geometry/categories/bounds-layout.md +23 -6
- package/dist/docs/reference/geometry/categories/curves-paths.md +27 -13
- package/dist/docs/reference/geometry/categories/mechanical.md +27 -15
- package/dist/docs/reference/geometry/categories/meshes.md +18 -10
- package/dist/docs/reference/geometry/categories/pattern-placement.md +11 -9
- package/dist/docs/reference/geometry/categories/primitive-options.md +10 -4
- package/dist/docs/reference/geometry/categories/profiles-regions.md +21 -13
- package/dist/docs/reference/geometry/categories/resolution-errors.md +5 -3
- package/dist/docs/reference/geometry/categories/transforms-math.md +25 -16
- package/dist/docs/reference/geometry/categories/vector-import.md +15 -9
- package/dist/docs/reference/geometry/circleContour.md +5 -1
- package/dist/docs/reference/geometry/closeToAxis.md +14 -5
- package/dist/docs/reference/geometry/compensateThreadDiameters.md +5 -1
- package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +9 -5
- package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +9 -5
- package/dist/docs/reference/geometry/composeTransform3.md +7 -6
- package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +14 -6
- package/dist/docs/reference/geometry/computeParallelTransportFrames.md +17 -7
- package/dist/docs/reference/geometry/computeTriangleMeshCentroid.md +13 -5
- package/dist/docs/reference/geometry/{createTriangleMeshSignature.md → computeTriangleMeshSignature.md} +8 -4
- package/dist/docs/reference/geometry/containsBounds.md +10 -9
- package/dist/docs/reference/geometry/contourContainsPoint.md +8 -4
- package/dist/docs/reference/geometry/cross2.md +6 -5
- package/dist/docs/reference/geometry/cross3.md +7 -6
- package/dist/docs/reference/geometry/cylinderAnchor3.md +7 -6
- package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +5 -1
- package/dist/docs/reference/geometry/distance2.md +6 -5
- package/dist/docs/reference/geometry/distance3.md +6 -5
- package/dist/docs/reference/geometry/distributeAlongPath.md +12 -6
- package/dist/docs/reference/geometry/dot2.md +6 -5
- package/dist/docs/reference/geometry/dot3.md +6 -5
- package/dist/docs/reference/geometry/ellipseContour.md +5 -1
- package/dist/docs/reference/geometry/eulerTransform3.md +7 -6
- package/dist/docs/reference/geometry/extrudeMesh.md +12 -8
- package/dist/docs/reference/geometry/fitBounds.md +10 -9
- package/dist/docs/reference/geometry/fitTextLayout.md +13 -5
- package/dist/docs/reference/geometry/frameTransform3.md +5 -4
- package/dist/docs/reference/geometry/{getMetricClearanceHole.md → getMetricClearanceHoleDiameter.md} +7 -3
- package/dist/docs/reference/geometry/getMetricFastenerStandard.md +5 -1
- package/dist/docs/reference/geometry/gridPatternTransforms.md +5 -5
- package/dist/docs/reference/geometry/heightfieldMesh.md +11 -2
- package/dist/docs/reference/geometry/{buildHelicalThreadRidgeMesh.md → helicalThreadRidgeMesh.md} +9 -5
- package/dist/docs/reference/geometry/{buildHelicalThreadSolidMesh.md → helicalThreadSolidMesh.md} +9 -5
- package/dist/docs/reference/geometry/inverseTransform3.md +6 -5
- package/dist/docs/reference/geometry/isGeometryError.md +5 -2
- package/dist/docs/reference/geometry/joinTriangleMeshes.md +5 -1
- package/dist/docs/reference/geometry/layoutRow.md +11 -7
- package/dist/docs/reference/geometry/length2.md +5 -4
- package/dist/docs/reference/geometry/length3.md +5 -4
- package/dist/docs/reference/geometry/lerp2.md +7 -6
- package/dist/docs/reference/geometry/lerp3.md +7 -6
- package/dist/docs/reference/geometry/linearPatternTransforms.md +5 -5
- package/dist/docs/reference/geometry/loftMesh.md +6 -1
- package/dist/docs/reference/geometry/matchProfiles.md +11 -2
- package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +5 -1
- package/dist/docs/reference/geometry/meshBounds.md +8 -4
- package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +7 -3
- package/dist/docs/reference/geometry/normalize2.md +10 -6
- package/dist/docs/reference/geometry/normalize3.md +10 -6
- package/dist/docs/reference/geometry/normalizeContour.md +8 -4
- package/dist/docs/reference/geometry/normalizePolygon.md +5 -1
- package/dist/docs/reference/geometry/normalizeRegion.md +5 -1
- package/dist/docs/reference/geometry/optimizePlanarPatches.md +15 -11
- package/dist/docs/reference/geometry/path2.md +54 -0
- package/dist/docs/reference/geometry/path3.md +49 -0
- package/dist/docs/reference/geometry/pathPatternTransforms.md +13 -9
- package/dist/docs/reference/geometry/preflightHeightfield.md +11 -2
- package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +13 -4
- package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +15 -4
- package/dist/docs/reference/geometry/preflightSvgRegion.md +15 -2
- package/dist/docs/reference/geometry/preflightThreadedNut.md +14 -4
- package/dist/docs/reference/geometry/preflightThreadedRod.md +14 -4
- package/dist/docs/reference/geometry/projectOntoPlane3.md +7 -6
- package/dist/docs/reference/geometry/radialPatternTransforms.md +4 -20
- package/dist/docs/reference/geometry/rectangleContour.md +10 -3
- package/dist/docs/reference/geometry/rectangleProfile.md +10 -2
- package/dist/docs/reference/geometry/regionArea.md +5 -1
- package/dist/docs/reference/geometry/regionBounds.md +8 -4
- package/dist/docs/reference/geometry/regularPolygonContour.md +9 -5
- package/dist/docs/reference/geometry/resamplePolyline2.md +9 -5
- package/dist/docs/reference/geometry/resamplePolyline3.md +9 -5
- package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +4 -4
- package/dist/docs/reference/geometry/resolveArcSegments.md +4 -4
- package/dist/docs/reference/geometry/resolveCircularSegments.md +1 -1
- package/dist/docs/reference/geometry/resolveCylindricalGear.md +5 -1
- package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +5 -1
- package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +7 -3
- package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +5 -1
- package/dist/docs/reference/geometry/resolveGeometryTolerance.md +1 -1
- package/dist/docs/reference/geometry/resolveKnuckleHinge.md +59 -0
- package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +5 -1
- package/dist/docs/reference/geometry/resolveRackPitch.md +5 -1
- package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +8 -4
- package/dist/docs/reference/geometry/reverseTriangleMesh.md +5 -1
- package/dist/docs/reference/geometry/revolveMesh.md +14 -10
- package/dist/docs/reference/geometry/rotate2.md +6 -5
- package/dist/docs/reference/geometry/rotationTransform3.md +7 -6
- package/dist/docs/reference/geometry/roundClosedPolylinePath.md +12 -6
- package/dist/docs/reference/geometry/sampleContour.md +14 -4
- package/dist/docs/reference/geometry/sampleCurve2.md +8 -5
- package/dist/docs/reference/geometry/sampleCurve3.md +6 -2
- package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +5 -1
- package/dist/docs/reference/geometry/sampleHelix.md +13 -5
- package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +5 -1
- package/dist/docs/reference/geometry/sampleRackToothPath.md +8 -4
- package/dist/docs/reference/geometry/sampleSideProfile.md +17 -7
- package/dist/docs/reference/geometry/sampleTextContours.md +5 -1
- package/dist/docs/reference/geometry/sampleThreadHelices.md +6 -2
- package/dist/docs/reference/geometry/scale2.md +6 -5
- package/dist/docs/reference/geometry/scale3.md +6 -5
- package/dist/docs/reference/geometry/scaleTransform3.md +7 -6
- package/dist/docs/reference/geometry/signedContourArea.md +5 -1
- package/dist/docs/reference/geometry/starContour.md +8 -4
- package/dist/docs/reference/geometry/strokeRegionData.md +67 -0
- package/dist/docs/reference/geometry/subtract2.md +7 -6
- package/dist/docs/reference/geometry/subtract3.md +7 -6
- package/dist/docs/reference/geometry/sweepMesh.md +13 -9
- package/dist/docs/reference/geometry/{createThreadProfile.md → threadProfile.md} +10 -6
- package/dist/docs/reference/geometry/transform2.md +14 -7
- package/dist/docs/reference/geometry/transform3.md +16 -7
- package/dist/docs/reference/geometry/transformDeterminant3.md +5 -4
- package/dist/docs/reference/geometry/transformRegionData.md +5 -1
- package/dist/docs/reference/geometry/transformTriangleMesh.md +10 -6
- package/dist/docs/reference/geometry/translationTransform3.md +7 -6
- package/dist/docs/reference/geometry/triangulateContour.md +5 -1
- package/dist/docs/reference/geometry/validateSolidMesh.md +10 -3
- package/dist/docs/reference/geometry/validateTransform3.md +6 -5
- package/dist/docs/reference/geometry/validateTriangleMesh.md +5 -1
- package/dist/docs/reference/geometry/vector2.md +10 -2
- package/dist/docs/reference/geometry/vector3.md +10 -2
- package/dist/docs/reference/geometry.md +8 -6
- package/dist/docs/reference/model/Anchor3.md +6 -5
- package/dist/docs/reference/model/AttachOptions.md +11 -5
- package/dist/docs/reference/model/Bounds2-type.md +125 -0
- package/dist/docs/reference/model/Bounds2Data.md +44 -0
- package/dist/docs/reference/model/Bounds2Input.md +19 -0
- package/dist/docs/reference/model/Bounds3-type.md +125 -0
- package/dist/docs/reference/model/Bounds3Data.md +44 -0
- package/dist/docs/reference/model/Bounds3Input.md +19 -0
- package/dist/docs/reference/model/BoxEdge.md +1 -1
- package/dist/docs/reference/model/BoxEdgeSelection.md +1 -1
- package/dist/docs/reference/model/BoxEdgeTreatments.md +1 -1
- package/dist/docs/reference/model/BoxOptions.md +10 -10
- package/dist/docs/reference/model/ChamferedEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/CircleContourOptions.md +1 -1
- package/dist/docs/reference/model/CircleOptions.md +3 -3
- package/dist/docs/reference/model/CircularPrimitiveOptions.md +1 -1
- package/dist/docs/reference/model/Computed.md +6 -1
- package/dist/docs/reference/model/ComputedValue.md +5 -1
- package/dist/docs/reference/model/Contour.md +6 -4
- package/dist/docs/reference/model/CorrespondingComponent.md +1 -1
- package/dist/docs/reference/model/CorrespondingContour.md +1 -1
- package/dist/docs/reference/model/CorrespondingProfile.md +1 -1
- package/dist/docs/reference/model/CorrespondingProfileStation.md +1 -1
- package/dist/docs/reference/model/CylinderOptions.md +3 -3
- package/dist/docs/reference/model/DiagnosticOptions.md +6 -1
- package/dist/docs/reference/model/EdgeTreatment.md +1 -1
- package/dist/docs/reference/model/EllipseContourOptions.md +3 -3
- package/dist/docs/reference/model/EllipseOptions.md +3 -3
- package/dist/docs/reference/model/EndTreatments.md +1 -1
- package/dist/docs/reference/model/ExtrudeOptions.md +6 -6
- package/dist/docs/reference/model/FinalizedModel.md +20 -10
- package/dist/docs/reference/model/FinalizedPart.md +1 -1
- package/dist/docs/reference/model/Frame3.md +6 -6
- package/dist/docs/reference/model/GenerateCallback.md +5 -1
- package/dist/docs/reference/model/GenerateContext.md +5 -1
- package/dist/docs/reference/model/GeneratedPart.md +5 -1
- package/dist/docs/reference/model/GenerationDiagnostic.md +6 -1
- package/dist/docs/reference/model/GenerationError.md +5 -1
- package/dist/docs/reference/model/GeometryResolution.md +5 -5
- package/dist/docs/reference/model/GeometrySamplingLimits.md +1 -1
- package/dist/docs/reference/model/GeometryToleranceOptions.md +1 -1
- package/dist/docs/reference/model/GridPatternOptions.md +12 -5
- package/dist/docs/reference/model/HeightfieldOptions.md +5 -5
- package/dist/docs/reference/model/HelicalThreadRidgeMeshOptions.md +4 -3
- package/dist/docs/reference/model/HelicalThreadSolidMeshPreflight.md +3 -2
- package/dist/docs/reference/model/HullOptions.md +5 -5
- package/dist/docs/reference/model/ImmutableBuffer-type.md +5 -1
- package/dist/docs/reference/model/ImmutableTriangleMesh.md +5 -1
- package/dist/docs/reference/model/ImplicitOptions.md +6 -6
- package/dist/docs/reference/model/InternalThreadCutterOptions.md +5 -4
- package/dist/docs/reference/model/KnuckleHinge-type.md +47 -0
- package/dist/docs/reference/model/KnuckleHingeBaseSpec.md +77 -0
- package/dist/docs/reference/model/KnuckleHingeHalfOptions.md +34 -0
- package/dist/docs/reference/model/KnuckleHingeOptions.md +38 -0
- package/dist/docs/reference/model/KnuckleHingeSamplingOptions.md +47 -0
- package/dist/docs/reference/model/KnuckleHingeSpec.md +18 -0
- package/dist/docs/reference/model/KnuckleHingeWeb.md +53 -0
- package/dist/docs/reference/model/LinearPatternOptions.md +13 -5
- package/dist/docs/reference/model/LoftCorrespondence.md +1 -1
- package/dist/docs/reference/model/LoftOptions.md +1 -1
- package/dist/docs/reference/model/LoftPlacement.md +1 -1
- package/dist/docs/reference/model/LoftStation.md +3 -3
- package/dist/docs/reference/model/MatchProfilesOptions.md +1 -1
- package/dist/docs/reference/model/ModelProgram.md +5 -1
- package/dist/docs/reference/model/ModelingLimits.md +1 -1
- package/dist/docs/reference/model/NumericArray.md +8 -1
- package/dist/docs/reference/model/PartGeometry.md +5 -1
- package/dist/docs/reference/model/PartOptions.md +5 -1
- package/dist/docs/reference/model/Path2-type.md +196 -0
- package/dist/docs/reference/model/Path2Data.md +50 -0
- package/dist/docs/reference/model/Path2Input.md +20 -0
- package/dist/docs/reference/model/Path3-type.md +196 -0
- package/dist/docs/reference/model/Path3Data.md +50 -0
- package/dist/docs/reference/model/Path3Input.md +20 -0
- package/dist/docs/reference/model/PathLocation.md +69 -0
- package/dist/docs/reference/model/PathNormalGuide.md +6 -5
- package/dist/docs/reference/model/PathOptions.md +38 -0
- package/dist/docs/reference/model/PathPatternOptions.md +4 -3
- package/dist/docs/reference/model/PathResamplingOptions.md +83 -0
- package/dist/docs/reference/model/PatternSource.md +2 -1
- package/dist/docs/reference/model/Pivot2Options.md +2 -1
- package/dist/docs/reference/model/Pivot3Options.md +2 -1
- package/dist/docs/reference/model/PlaneOptions.md +3 -3
- package/dist/docs/reference/model/PolygonData.md +3 -2
- package/dist/docs/reference/model/PolygonOptions.md +8 -8
- package/dist/docs/reference/model/{PrimitivePlacement.md → PrimitiveAttachment.md} +8 -7
- package/dist/docs/reference/model/{PrimitivePlacementOptions.md → PrimitiveAttachmentOptions.md} +42 -20
- package/dist/docs/reference/model/PrintableThreadFit.md +2 -1
- package/dist/docs/reference/model/PrintableThreadFitPolicy.md +2 -1
- package/dist/docs/reference/model/Profile.md +4 -2
- package/dist/docs/reference/model/ProfileComponent2.md +1 -1
- package/dist/docs/reference/model/ProfileContour2.md +4 -2
- package/dist/docs/reference/model/ProfileSpan2.md +3 -3
- package/dist/docs/reference/model/ProfiledEdgeTreatment.md +3 -3
- package/dist/docs/reference/model/RadialPatternOptions.md +18 -22
- package/dist/docs/reference/model/RadialSizing.md +1 -1
- package/dist/docs/reference/model/RadialSizingOptions.md +1 -1
- package/dist/docs/reference/model/RectangleContourOptions.md +3 -3
- package/dist/docs/reference/model/RectangleCornerTreatment.md +1 -1
- package/dist/docs/reference/model/RectangleCornerTreatments.md +1 -1
- package/dist/docs/reference/model/RectangleOptions.md +10 -10
- package/dist/docs/reference/model/RegionData.md +2 -2
- package/dist/docs/reference/model/RegularPolygonOptions.md +5 -5
- package/dist/docs/reference/model/RevolveOptions.md +9 -4
- package/dist/docs/reference/model/RoundedEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/Section.md +20 -12
- package/dist/docs/reference/model/SectionHullOptions.md +5 -5
- package/dist/docs/reference/model/SectionInspection.md +10 -10
- package/dist/docs/reference/model/SectionOffsetJoin.md +1 -1
- package/dist/docs/reference/model/SectionOffsetOptions.md +1 -1
- package/dist/docs/reference/model/SmoothEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/Solid.md +31 -7
- package/dist/docs/reference/model/SolidInspection.md +7 -7
- package/dist/docs/reference/model/{SolidRayHit.md → SolidSegmentHit.md} +6 -6
- package/dist/docs/reference/model/SphereOptions.md +3 -3
- package/dist/docs/reference/model/StarOptions.md +10 -10
- package/dist/docs/reference/model/{StrokePathCap.md → StrokeCap.md} +3 -3
- package/dist/docs/reference/model/{StrokePathJoin.md → StrokeJoin.md} +3 -3
- package/dist/docs/reference/model/StrokeOptions.md +6 -6
- package/dist/docs/reference/model/SvgOrigin.md +1 -1
- package/dist/docs/reference/model/SvgPathSectionOptions.md +1 -1
- package/dist/docs/reference/model/SvgSectionOptions.md +1 -1
- package/dist/docs/reference/model/SweepOptions.md +6 -6
- package/dist/docs/reference/model/SweepOrientation.md +7 -7
- package/dist/docs/reference/model/TextSectionOptions.md +1 -1
- package/dist/docs/reference/model/ThreadEndStyle.md +2 -1
- package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +2 -1
- package/dist/docs/reference/model/ThreadHandedness.md +2 -1
- package/dist/docs/reference/model/ThreadLeadInEnvelope.md +2 -1
- package/dist/docs/reference/model/ThreadLeadInShape.md +2 -1
- package/dist/docs/reference/model/ThreadProfile.md +4 -3
- package/dist/docs/reference/model/ThreadRidgeOptions.md +2 -1
- package/dist/docs/reference/model/ThreadedNutBevel.md +2 -1
- package/dist/docs/reference/model/ThreadedNutOptions.md +5 -4
- package/dist/docs/reference/model/ThreadedNutPreflight.md +4 -3
- package/dist/docs/reference/model/ThreadedNutShape.md +2 -1
- package/dist/docs/reference/model/ThreadedRodOptions.md +5 -4
- package/dist/docs/reference/model/TorusOptions.md +8 -8
- package/dist/docs/reference/model/Transform2-type.md +6 -5
- package/dist/docs/reference/model/Transform2Data.md +16 -0
- package/dist/docs/reference/model/Transform2Input.md +4 -3
- package/dist/docs/reference/model/Transform3-type.md +6 -5
- package/dist/docs/reference/model/Transform3Data.md +19 -0
- package/dist/docs/reference/model/Transform3Input.md +4 -3
- package/dist/docs/reference/model/TriangleMesh.md +1 -1
- package/dist/docs/reference/model/TriangleMeshAnalysis.md +4 -4
- package/dist/docs/reference/model/TriangleMeshMeasurements.md +3 -3
- package/dist/docs/reference/model/TubeOptions.md +8 -8
- package/dist/docs/reference/model/Vector2-type.md +6 -5
- package/dist/docs/reference/model/{Vector2Tuple.md → Vector2Data.md} +3 -3
- package/dist/docs/reference/model/Vector2Input.md +4 -3
- package/dist/docs/reference/model/Vector3-type.md +6 -5
- package/dist/docs/reference/model/{Vector3Tuple.md → Vector3Data.md} +3 -3
- package/dist/docs/reference/model/Vector3Input.md +4 -3
- package/dist/docs/reference/model/VectorTextLayout.md +1 -1
- package/dist/docs/reference/model/VectorTextMetrics.md +3 -3
- package/dist/docs/reference/model/anchor.md +2 -1
- package/dist/docs/reference/model/bounds2.md +36 -0
- package/dist/docs/reference/model/bounds3.md +36 -0
- package/dist/docs/reference/model/box.md +4 -4
- package/dist/docs/reference/model/castSegment.md +40 -0
- package/dist/docs/reference/model/categories/boolean-operations.md +10 -3
- package/dist/docs/reference/model/categories/bounded-surfaces.md +5 -3
- package/dist/docs/reference/model/categories/bounds.md +36 -0
- package/dist/docs/reference/model/categories/contracts.md +4 -2
- package/dist/docs/reference/model/categories/core-values-errors.md +11 -11
- package/dist/docs/reference/model/categories/explicit-profiles.md +7 -5
- package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +12 -3
- package/dist/docs/reference/model/categories/generation.md +11 -2
- package/dist/docs/reference/model/categories/hinges.md +38 -0
- package/dist/docs/reference/model/categories/inspection.md +12 -6
- package/dist/docs/reference/model/categories/mesh-inspection.md +5 -3
- package/dist/docs/reference/model/categories/paths.md +41 -0
- package/dist/docs/reference/model/categories/primitives.md +10 -4
- package/dist/docs/reference/model/categories/resolution.md +4 -2
- package/dist/docs/reference/model/categories/sections.md +12 -8
- package/dist/docs/reference/model/categories/threads.md +11 -8
- package/dist/docs/reference/model/categories/transforms-placement.md +23 -15
- package/dist/docs/reference/model/circle.md +1 -1
- package/dist/docs/reference/model/components.md +6 -6
- package/dist/docs/reference/model/compose.md +1 -1
- package/dist/docs/reference/model/cylinder.md +1 -1
- package/dist/docs/reference/model/distance.md +1 -1
- package/dist/docs/reference/model/ellipse.md +1 -1
- package/dist/docs/reference/model/extrude.md +3 -3
- package/dist/docs/reference/model/generate.md +5 -1
- package/dist/docs/reference/model/gridPattern.md +5 -4
- package/dist/docs/reference/model/heightfield.md +5 -2
- package/dist/docs/reference/model/hull.md +1 -1
- package/dist/docs/reference/model/immutableBuffer.md +5 -1
- package/dist/docs/reference/model/immutableMesh.md +5 -1
- package/dist/docs/reference/model/implicit.md +3 -3
- package/dist/docs/reference/model/inspectSection.md +1 -1
- package/dist/docs/reference/model/inspectSolid.md +1 -1
- package/dist/docs/reference/model/internalThreadCutter.md +5 -4
- package/dist/docs/reference/model/intersect.md +1 -1
- package/dist/docs/reference/model/isEmpty.md +1 -1
- package/dist/docs/reference/model/knuckleHinge.md +47 -0
- package/dist/docs/reference/model/linearPattern.md +5 -4
- package/dist/docs/reference/model/loft.md +1 -1
- package/dist/docs/reference/model/matchProfiles.md +2 -2
- package/dist/docs/reference/model/minkowskiSum.md +1 -1
- package/dist/docs/reference/model/path2.md +54 -0
- package/dist/docs/reference/model/path3.md +49 -0
- package/dist/docs/reference/model/pathPattern.md +14 -12
- package/dist/docs/reference/model/polygon.md +8 -5
- package/dist/docs/reference/model/preflightInternalThreadCutter.md +9 -3
- package/dist/docs/reference/model/preflightThreadedNut.md +9 -3
- package/dist/docs/reference/model/preflightThreadedRod.md +9 -3
- package/dist/docs/reference/model/radialPattern.md +6 -37
- package/dist/docs/reference/model/rectangle.md +7 -4
- package/dist/docs/reference/model/regularPolygon.md +1 -1
- package/dist/docs/reference/model/revolve.md +5 -4
- package/dist/docs/reference/model/solidFromMesh.md +1 -1
- package/dist/docs/reference/model/sphere.md +1 -1
- package/dist/docs/reference/model/split.md +1 -1
- package/dist/docs/reference/model/splitByPlane.md +1 -1
- package/dist/docs/reference/model/star.md +4 -4
- package/dist/docs/reference/model/stroke.md +8 -8
- package/dist/docs/reference/model/svgPathSection.md +1 -1
- package/dist/docs/reference/model/svgSection.md +1 -1
- package/dist/docs/reference/model/sweep.md +7 -7
- package/dist/docs/reference/model/textSection.md +1 -1
- package/dist/docs/reference/model/threadRidge.md +3 -2
- package/dist/docs/reference/model/threadedNut.md +5 -4
- package/dist/docs/reference/model/threadedRod.md +5 -4
- package/dist/docs/reference/model/torus.md +3 -3
- package/dist/docs/reference/model/transform2.md +14 -7
- package/dist/docs/reference/model/transform3.md +16 -7
- package/dist/docs/reference/model/tube.md +3 -3
- package/dist/docs/reference/model/union.md +1 -1
- package/dist/docs/reference/model/vector2.md +10 -2
- package/dist/docs/reference/model/vector3.md +10 -2
- package/dist/docs/reference/model.md +17 -9
- package/dist/docs/reference/text/Bounds2Data.md +34 -0
- package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +1 -1
- package/dist/docs/reference/text/Vector2Data.md +7 -0
- package/dist/docs/reference/text/VectorFont.md +2 -2
- package/dist/docs/reference/text/VectorFontOptions.md +1 -1
- package/dist/docs/reference/text/VectorTextArcBaseline.md +3 -3
- package/dist/docs/reference/text/VectorTextLayout.md +1 -1
- package/dist/docs/reference/text/VectorTextLayoutOptions.md +1 -1
- package/dist/docs/reference/text/VectorTextMetrics.md +3 -3
- package/dist/docs/reference/text/VectorTextOptions.md +1 -1
- package/dist/docs/reference/text/categories/font-preparation.md +8 -6
- package/dist/docs/reference/text/prepareVectorFont.md +2 -2
- package/dist/docs/reference/text.md +4 -2
- package/dist/engine/construction-operations.js +31 -14
- package/dist/engine/execution.js +39 -8
- package/dist/engine/extrusion-finishing.js +1 -1
- package/dist/engine/index.js +6 -1
- package/dist/engine/inspection-operations.js +13 -11
- package/dist/engine/knuckle-hinge-operation.js +85 -0
- package/dist/engine/loft-operations.js +35 -14
- package/dist/engine/mechanical-operations.js +3 -1
- package/dist/engine/model-summary.js +8 -5
- package/dist/engine/modeling-context.js +8 -1
- package/dist/engine/native/material-components.js +305 -0
- package/dist/engine/native/regions.js +2 -1
- package/dist/engine/native/threads.js +3 -3
- package/dist/engine/native/transforms.js +5 -7
- package/dist/engine/operation-environment.js +2 -2
- package/dist/engine/pattern-operations.js +1 -1
- package/dist/engine/placement.js +2 -2
- package/dist/engine/primitive-anchors.js +17 -17
- package/dist/engine/primitive-operations.js +1 -1
- package/dist/engine/primitive-profiles.js +7 -7
- package/dist/engine/profile-mesh.js +7 -7
- package/dist/engine/recipe-realization.js +10 -2
- package/dist/engine/section-operations.js +33 -8
- package/dist/engine/session-snapshot.js +14 -4
- package/dist/engine/session.js +10 -5
- package/dist/engine/shape-anchors.js +3 -3
- package/dist/engine/transform-operations.js +27 -27
- package/dist/geometry/anchors.js +40 -33
- package/dist/geometry/bounds-value.js +93 -0
- package/dist/geometry/bounds.js +10 -8
- package/dist/geometry/curves/sampling.js +15 -16
- package/dist/geometry/edge-finishing.js +1 -1
- package/dist/geometry/errors.js +1 -0
- package/dist/geometry/extrusion.js +13 -16
- package/dist/geometry/heightfield.js +12 -1
- package/dist/geometry/index.js +12 -11
- package/dist/geometry/loft/loft-simple-mesh.js +6 -6
- package/dist/geometry/loft/loft.js +22 -13
- package/dist/geometry/math/immutable-value.js +1 -1
- package/dist/geometry/math/vector-value.js +11 -3
- package/dist/geometry/math/vector2.js +1 -0
- package/dist/geometry/math/vector3.js +1 -0
- package/dist/geometry/mechanical/gear-motion.js +3 -3
- package/dist/geometry/mechanical/gears.js +38 -38
- package/dist/geometry/mechanical/index.js +4 -3
- package/dist/geometry/mechanical/knuckle-hinge.js +110 -0
- package/dist/geometry/mechanical/standards.js +1 -1
- package/dist/geometry/mechanical/thread-helices.js +2 -3
- package/dist/geometry/mechanical/thread-mesh-plan.js +11 -7
- package/dist/geometry/mechanical/thread-mesh.js +7 -7
- package/dist/geometry/mechanical/thread-profiles.js +5 -5
- package/dist/geometry/mechanical/thread-solids.js +31 -6
- package/dist/geometry/mechanical/thread-surface.js +1 -1
- package/dist/geometry/mechanical/threads.js +8 -8
- package/dist/geometry/mesh/mesh-centroid.js +1 -0
- package/dist/geometry/mesh/mesh-planar.js +25 -27
- package/dist/geometry/mesh/mesh-quality.js +5 -5
- package/dist/geometry/mesh/mesh-signature.js +13 -13
- package/dist/geometry/mesh/mesh-solid.js +8 -7
- package/dist/geometry/mesh/mesh.js +4 -15
- package/dist/geometry/paths/closest-point.js +8 -19
- package/dist/geometry/paths/frames.js +42 -11
- package/dist/geometry/paths/helix.js +17 -6
- package/dist/geometry/paths/path-value.js +268 -0
- package/dist/geometry/paths/planar.js +36 -23
- package/dist/geometry/paths/resampling.js +27 -5
- package/dist/geometry/patterns/placements.js +100 -27
- package/dist/geometry/patterns.js +5 -3
- package/dist/geometry/polygon-clipping.js +17 -0
- package/dist/geometry/profiles/contour.js +7 -6
- package/dist/geometry/profiles/matched.js +5 -4
- package/dist/geometry/profiles/profiles.js +4 -4
- package/dist/geometry/profiles/rectangle.js +14 -5
- package/dist/geometry/profiles/side-profile.js +9 -7
- package/dist/geometry/profiles/span-sampling.js +1 -1
- package/dist/geometry/resolution.js +34 -34
- package/dist/geometry/revolve/revolve-mesh.js +12 -7
- package/dist/geometry/stroke-path.js +12 -27
- package/dist/geometry/svg/fill.js +7 -21
- package/dist/geometry/svg-import.js +31 -25
- package/dist/geometry/sweeps/options.js +5 -4
- package/dist/geometry/sweeps/orientation.js +5 -5
- package/dist/geometry/sweeps/stations.js +10 -10
- package/dist/geometry/sweeps/sweep-closed.js +2 -2
- package/dist/geometry/sweeps/sweep-mesh.js +9 -3
- package/dist/geometry/sweeps/sweep-open.js +1 -1
- package/dist/geometry/sweeps/validation.js +4 -7
- package/dist/geometry/text-fitting.js +1 -0
- package/dist/geometry/transform-geometry.js +7 -14
- package/dist/geometry/transform-matrix.js +1 -1
- package/dist/geometry/{transform-chain.js → transform-value.js} +24 -15
- package/dist/index.js +3 -1
- package/dist/model/execution-binding.js +3 -3
- package/dist/model/geometry-recipes.js +1 -1
- package/dist/model/immutable-generation-data.js +62 -10
- package/dist/model/knuckle-hinge.js +1 -0
- package/dist/model/operations.js +79 -26
- package/dist/model/recipe-declaration.js +21 -7
- package/dist/model/shape-handles.js +2 -1
- package/dist/text/index.js +15 -9
- package/dist/text/vector-text-layout.js +31 -26
- package/package.json +1 -1
- package/dist/docs/reference/geometry/Bounds2.md +0 -39
- package/dist/docs/reference/geometry/Bounds3.md +0 -39
- package/dist/docs/reference/geometry/ClosestPointOnPathOptions.md +0 -34
- package/dist/docs/reference/geometry/ClosestPointOnPathResult.md +0 -65
- package/dist/docs/reference/geometry/Path2.md +0 -14
- package/dist/docs/reference/geometry/Path3.md +0 -14
- package/dist/docs/reference/geometry/PrimitivePlacement.md +0 -31
- package/dist/docs/reference/geometry/PrimitivePlacementOptions.md +0 -83
- package/dist/docs/reference/geometry/StrokePathCap.md +0 -7
- package/dist/docs/reference/geometry/StrokePathJoin.md +0 -7
- package/dist/docs/reference/geometry/Transform2Matrix.md +0 -14
- package/dist/docs/reference/geometry/Transform3Matrix.md +0 -17
- package/dist/docs/reference/geometry/Vector2Tuple.md +0 -14
- package/dist/docs/reference/geometry/Vector3Tuple.md +0 -14
- package/dist/docs/reference/geometry/closestPointOnPath.md +0 -110
- package/dist/docs/reference/geometry/cumulativePathLengths.md +0 -33
- package/dist/docs/reference/geometry/measureTriangleMesh.md +0 -55
- package/dist/docs/reference/geometry/pathLength.md +0 -33
- package/dist/docs/reference/geometry/strokePathRegion.md +0 -63
- package/dist/docs/reference/geometry/transformContour.md +0 -42
- package/dist/docs/reference/geometry/transformPath2.md +0 -40
- package/dist/docs/reference/geometry/transformPath3.md +0 -33
- package/dist/docs/reference/model/Bounds2.md +0 -39
- package/dist/docs/reference/model/Bounds3.md +0 -39
- package/dist/docs/reference/model/Path2.md +0 -20
- package/dist/docs/reference/model/Transform2Matrix.md +0 -15
- package/dist/docs/reference/model/Transform3Matrix.md +0 -18
- package/dist/docs/reference/model/rayCast.md +0 -40
- package/dist/docs/reference/model/toTriangleMesh.md +0 -27
- package/dist/docs/reference/text/Bounds2.md +0 -34
- package/dist/docs/reference/text/Vector2Tuple.md +0 -7
- package/dist/geometry/paths/path.js +0 -32
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# polygon
|
|
2
2
|
|
|
3
|
-
Fills one closed millimetre XY outline, explicit outer/hole topology, or compound contours.
|
|
3
|
+
Fills one closed millimetre XY outline, explicit outer/hole topology, or compound contours.
|
|
4
4
|
|
|
5
|
-
**polygon**(`input`: [`
|
|
5
|
+
**polygon**(`input`: [`Path2Input`](Path2Input.md) \| [`PolygonOptions`](PolygonOptions.md)): [`Section`](Section.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -12,11 +12,14 @@ Fills one closed millimetre XY outline, explicit outer/hole topology, or compoun
|
|
|
12
12
|
polygon([[0, 0], [20, 0], [10, 12]]).extrude({ height: 3 });
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
+
Closing edges are implicit. Compound contours use nonzero fill unless selected otherwise.
|
|
16
|
+
Explicit topology must be simple and disjoint; compound winding may resolve overlaps.
|
|
17
|
+
|
|
15
18
|
## Parameters
|
|
16
19
|
|
|
17
20
|
<a id="input"></a>
|
|
18
21
|
|
|
19
|
-
**`input`** · [`
|
|
22
|
+
**`input`** · [`Path2Input`](Path2Input.md) \| [`PolygonOptions`](PolygonOptions.md) · Required
|
|
20
23
|
|
|
21
24
|
|
|
22
25
|
|
|
@@ -27,7 +30,7 @@ polygon([[0, 0], [20, 0], [10, 12]]).extrude({ height: 3 });
|
|
|
27
30
|
|
|
28
31
|
## Related APIs
|
|
29
32
|
|
|
30
|
-
- [
|
|
33
|
+
- [Path2Input](Path2Input.md)
|
|
31
34
|
- [PolygonOptions](PolygonOptions.md)
|
|
32
35
|
- [Section](Section.md)
|
|
33
36
|
|
|
@@ -37,4 +40,4 @@ polygon([[0, 0], [20, 0], [10, 12]]).extrude({ height: 3 });
|
|
|
37
40
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
38
41
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
39
42
|
|
|
40
|
-
Package: `@metamesh/modeling@0.
|
|
43
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
# preflightInternalThreadCutter
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Checks compensated cutter dimensions and conservative mesh estimates against host output limits.
|
|
4
4
|
|
|
5
5
|
**preflightInternalThreadCutter**(`options`: [`InternalThreadCutterOptions`](InternalThreadCutterOptions.md)): [`HelicalThreadSolidMeshPreflight`](HelicalThreadSolidMeshPreflight.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
Requires active synchronous model execution and uses its resolution and limits. Estimates include
|
|
10
|
+
the one-pitch extension beyond each requested face, without mesh buffers or native objects.
|
|
11
|
+
Mesh validity, native construction, and aggregate output limits are checked later.
|
|
12
|
+
|
|
9
13
|
## Parameters
|
|
10
14
|
|
|
11
15
|
<a id="options"></a>
|
|
@@ -37,7 +41,7 @@ Allocation-free internal-thread facts.
|
|
|
37
41
|
|
|
38
42
|
Explicit output and circular allocation ceilings.
|
|
39
43
|
|
|
40
|
-
- [`
|
|
44
|
+
- [`phase`](InternalThreadCutterOptions.md#phase) · `number` · Optional
|
|
41
45
|
|
|
42
46
|
Angular offset of the first start in degrees. Default: `0`.
|
|
43
47
|
|
|
@@ -81,9 +85,11 @@ Allocation-free internal-thread facts.
|
|
|
81
85
|
|
|
82
86
|
- [HelicalThreadSolidMeshPreflight](HelicalThreadSolidMeshPreflight.md)
|
|
83
87
|
- [InternalThreadCutterOptions](InternalThreadCutterOptions.md)
|
|
88
|
+
- [internalThreadCutter](internalThreadCutter.md)
|
|
84
89
|
|
|
85
90
|
## Guides
|
|
86
91
|
|
|
87
92
|
- [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
|
|
93
|
+
- [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
|
|
88
94
|
|
|
89
|
-
Package: `@metamesh/modeling@0.
|
|
95
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
# preflightThreadedNut
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Checks nut dimensions, chamfers, end-face wall, and the extended compensated cutter's allocation plan.
|
|
4
4
|
|
|
5
5
|
**preflightThreadedNut**(`options`: [`ThreadedNutOptions`](ThreadedNutOptions.md)): [`ThreadedNutPreflight`](ThreadedNutPreflight.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
Requires active synchronous model execution and uses its resolution and limits, without mesh
|
|
10
|
+
buffers or native objects. Returned thread estimates cover the cutter, excluding the body and
|
|
11
|
+
Boolean result. Mesh validity, native construction, and aggregate output limits are checked later.
|
|
12
|
+
|
|
9
13
|
## Parameters
|
|
10
14
|
|
|
11
15
|
<a id="options"></a>
|
|
@@ -45,7 +49,7 @@ Allocation-free nut/cutter facts.
|
|
|
45
49
|
|
|
46
50
|
Explicit output and circular allocation ceilings.
|
|
47
51
|
|
|
48
|
-
- [`
|
|
52
|
+
- [`phase`](ThreadedNutOptions.md#phase) · `number` · Optional
|
|
49
53
|
|
|
50
54
|
Angular offset of the first start in degrees. Default: `0`.
|
|
51
55
|
|
|
@@ -92,9 +96,11 @@ Allocation-free nut/cutter facts.
|
|
|
92
96
|
|
|
93
97
|
- [ThreadedNutOptions](ThreadedNutOptions.md)
|
|
94
98
|
- [ThreadedNutPreflight](ThreadedNutPreflight.md)
|
|
99
|
+
- [threadedNut](threadedNut.md)
|
|
95
100
|
|
|
96
101
|
## Guides
|
|
97
102
|
|
|
98
103
|
- [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
|
|
104
|
+
- [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
|
|
99
105
|
|
|
100
|
-
Package: `@metamesh/modeling@0.
|
|
106
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
# preflightThreadedRod
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Checks compensated rod dimensions and conservative mesh estimates against host output limits.
|
|
4
4
|
|
|
5
5
|
**preflightThreadedRod**(`options`: [`ThreadedRodOptions`](ThreadedRodOptions.md)): [`HelicalThreadSolidMeshPreflight`](HelicalThreadSolidMeshPreflight.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
Requires active synchronous model execution and uses its resolution and limits. Returns selected
|
|
10
|
+
sampling and conservative row/triangle estimates without mesh buffers or native objects.
|
|
11
|
+
Mesh validity, native construction, and aggregate output limits are checked later.
|
|
12
|
+
|
|
9
13
|
## Parameters
|
|
10
14
|
|
|
11
15
|
<a id="options"></a>
|
|
@@ -37,7 +41,7 @@ Allocation-free external-thread facts.
|
|
|
37
41
|
|
|
38
42
|
Explicit output and circular allocation ceilings.
|
|
39
43
|
|
|
40
|
-
- [`
|
|
44
|
+
- [`phase`](ThreadedRodOptions.md#phase) · `number` · Optional
|
|
41
45
|
|
|
42
46
|
Angular offset of the first start in degrees. Default: `0`.
|
|
43
47
|
|
|
@@ -81,9 +85,11 @@ Allocation-free external-thread facts.
|
|
|
81
85
|
|
|
82
86
|
- [HelicalThreadSolidMeshPreflight](HelicalThreadSolidMeshPreflight.md)
|
|
83
87
|
- [ThreadedRodOptions](ThreadedRodOptions.md)
|
|
88
|
+
- [threadedRod](threadedRod.md)
|
|
84
89
|
|
|
85
90
|
## Guides
|
|
86
91
|
|
|
87
92
|
- [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
|
|
93
|
+
- [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
|
|
88
94
|
|
|
89
|
-
Package: `@metamesh/modeling@0.
|
|
95
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -14,7 +14,7 @@ Repeats one solid about an axis.
|
|
|
14
14
|
|
|
15
15
|
```ts
|
|
16
16
|
const pin = cylinder({ height: 6, radius: 2 }).translate([12, 0, 0]);
|
|
17
|
-
radialPattern(pin, { count: 6, axis: [0, 0, 1],
|
|
17
|
+
radialPattern(pin, { count: 6, axis: [0, 0, 1], angle: 60 });
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
Repeats one solid about an axis.
|
|
@@ -31,22 +31,6 @@ Repeats one solid about an axis.
|
|
|
31
31
|
|
|
32
32
|
**`options`** · [`RadialPatternOptions`](RadialPatternOptions.md) · Required
|
|
33
33
|
|
|
34
|
-
- [`count`](RadialPatternOptions.md#count) · `number` · Required
|
|
35
|
-
|
|
36
|
-
Number of solids to return, including the original.
|
|
37
|
-
|
|
38
|
-
- [`axis`](RadialPatternOptions.md#axis) · [`Vector3Tuple`](Vector3Tuple.md) · Required
|
|
39
|
-
|
|
40
|
-
Axis of the right-handed rotation. Its magnitude is ignored.
|
|
41
|
-
|
|
42
|
-
- [`angleDegrees`](RadialPatternOptions.md#angledegrees) · `number` · Required
|
|
43
|
-
|
|
44
|
-
Signed rotation from one copy to the next, in degrees.
|
|
45
|
-
|
|
46
|
-
- [`center`](RadialPatternOptions.md#center) · [`Vector3Tuple`](Vector3Tuple.md) · Optional
|
|
47
|
-
|
|
48
|
-
Rotation center in world coordinates. Defaults to the origin.
|
|
49
|
-
|
|
50
34
|
|
|
51
35
|
|
|
52
36
|
### Returns
|
|
@@ -57,11 +41,11 @@ readonly [`Solid`](Solid.md)[]
|
|
|
57
41
|
|
|
58
42
|
|
|
59
43
|
|
|
60
|
-
**radialPattern**(`source`: [`PatternSource`](PatternSource.md)\<[`Section`](Section.md)\>, `options`: [`RadialPatternOptions`](RadialPatternOptions.md)): readonly [`Section`](Section.md)[]
|
|
44
|
+
**radialPattern**(`source`: [`PatternSource`](PatternSource.md)\<[`Section`](Section.md)\>, `options`: [`RadialPatternOptions`](RadialPatternOptions.md)\<`2`\>): readonly [`Section`](Section.md)[]
|
|
61
45
|
|
|
62
46
|
|
|
63
47
|
|
|
64
|
-
Repeats a filled Section about
|
|
48
|
+
Repeats a filled Section counterclockwise about a fixed XY pivot, using the implicit +Z axis.
|
|
65
49
|
|
|
66
50
|
### Parameters
|
|
67
51
|
|
|
@@ -73,23 +57,7 @@ Repeats a filled Section about an axis; placements must preserve its XY plane.
|
|
|
73
57
|
|
|
74
58
|
<a id="options-1"></a>
|
|
75
59
|
|
|
76
|
-
**`options`** · [`RadialPatternOptions`](RadialPatternOptions.md) · Required
|
|
77
|
-
|
|
78
|
-
- [`count`](RadialPatternOptions.md#count) · `number` · Required
|
|
79
|
-
|
|
80
|
-
Number of solids to return, including the original.
|
|
81
|
-
|
|
82
|
-
- [`axis`](RadialPatternOptions.md#axis) · [`Vector3Tuple`](Vector3Tuple.md) · Required
|
|
83
|
-
|
|
84
|
-
Axis of the right-handed rotation. Its magnitude is ignored.
|
|
85
|
-
|
|
86
|
-
- [`angleDegrees`](RadialPatternOptions.md#angledegrees) · `number` · Required
|
|
87
|
-
|
|
88
|
-
Signed rotation from one copy to the next, in degrees.
|
|
89
|
-
|
|
90
|
-
- [`center`](RadialPatternOptions.md#center) · [`Vector3Tuple`](Vector3Tuple.md) · Optional
|
|
91
|
-
|
|
92
|
-
Rotation center in world coordinates. Defaults to the origin.
|
|
60
|
+
**`options`** · [`RadialPatternOptions`](RadialPatternOptions.md)\<`2`\> · Required
|
|
93
61
|
|
|
94
62
|
|
|
95
63
|
|
|
@@ -109,5 +77,6 @@ readonly [`Section`](Section.md)[]
|
|
|
109
77
|
|
|
110
78
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
111
79
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
80
|
+
- [Fluent values and standalone algorithms](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
112
81
|
|
|
113
|
-
Package: `@metamesh/modeling@0.
|
|
82
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -12,19 +12,22 @@ Filled rectangular section with uniform or independently treated corners.
|
|
|
12
12
|
rectangle({ size: [30, 20], treatment: { kind: "round", radius: 3 } });
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
+
Use [rectangleContour](../geometry/rectangleContour.md) for sampled boundary coordinates,
|
|
16
|
+
or [rectangleProfile](../geometry/rectangleProfile.md) to retain identified loft landmarks.
|
|
17
|
+
|
|
15
18
|
## Parameters
|
|
16
19
|
|
|
17
20
|
<a id="options"></a>
|
|
18
21
|
|
|
19
22
|
**`options`** · [`RectangleOptions`](RectangleOptions.md) · Required
|
|
20
23
|
|
|
21
|
-
- [`size`](RectangleOptions.md#size) · `number` \| [`
|
|
24
|
+
- [`size`](RectangleOptions.md#size) · `number` \| [`Vector2Data`](Vector2Data.md) · Required
|
|
22
25
|
|
|
23
26
|
Positive uniform size or explicit XY extents in millimetres.
|
|
24
27
|
|
|
25
|
-
- [`
|
|
28
|
+
- [`attachment`](RectangleOptions.md#attachment) · [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md) · Optional
|
|
26
29
|
|
|
27
|
-
Applied after local construction; Section
|
|
30
|
+
Applied after local construction; Section attachment must preserve the XY plane.
|
|
28
31
|
|
|
29
32
|
- [`center`](RectangleOptions.md#center) · `boolean` · Optional
|
|
30
33
|
|
|
@@ -56,4 +59,4 @@ rectangle({ size: [30, 20], treatment: { kind: "round", radius: 3 } });
|
|
|
56
59
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
57
60
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
58
61
|
|
|
59
|
-
Package: `@metamesh/modeling@0.
|
|
62
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -36,4 +36,4 @@ regularPolygon({ radius: 10, sides: 6, sizing: "face" });
|
|
|
36
36
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
37
37
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
38
38
|
|
|
39
|
-
Package: `@metamesh/modeling@0.
|
|
39
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -14,7 +14,7 @@ import { rectangleProfile } from "@metamesh/modeling/geometry";
|
|
|
14
14
|
|
|
15
15
|
// Contour coordinates are [radius, Z].
|
|
16
16
|
const [profile] = matchProfiles([rectangleProfile({ size: [4, 16], center: false })]);
|
|
17
|
-
revolve(profile!, {
|
|
17
|
+
revolve(profile!, { degrees: 270 });
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
## Parameters
|
|
@@ -40,9 +40,10 @@ revolve(profile!, { revolveDegrees: 270 });
|
|
|
40
40
|
|
|
41
41
|
Operation-level physical tessellation policy over the active model-wide policy.
|
|
42
42
|
|
|
43
|
-
- [`
|
|
43
|
+
- [`degrees`](RevolveOptions.md#degrees) · `number` · Optional · Default: `360`
|
|
44
44
|
|
|
45
|
-
Positive
|
|
45
|
+
Positive sweep in degrees, no greater than 360. Defaults to a full revolution;
|
|
46
|
+
smaller sweeps form partial revolutions with end caps.
|
|
46
47
|
Segment counts describe a complete circle and scale to this angular span. Native filled
|
|
47
48
|
revolutions require at least three sweep intervals: adaptive sampling refines to that floor,
|
|
48
49
|
while exact counts that imply fewer intervals reject. Pure revolveMesh supports one interval.
|
|
@@ -71,4 +72,4 @@ revolve(profile!, { revolveDegrees: 270 });
|
|
|
71
72
|
- [Matched-section loft](../../guides/recipes.md#matched-section-loft)
|
|
72
73
|
- [Choose a modeling path](../../guides/concepts.md#choose-a-modeling-path)
|
|
73
74
|
|
|
74
|
-
Package: `@metamesh/modeling@0.
|
|
75
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -39,4 +39,4 @@ sphere({ diameter: 20 });
|
|
|
39
39
|
- [Choose a primitive](../../guides/recipes.md#choose-a-primitive)
|
|
40
40
|
- [Treated boxes, frustums, and mirrored arrays](../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
|
|
41
41
|
|
|
42
|
-
Package: `@metamesh/modeling@0.
|
|
42
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -51,4 +51,4 @@ readonly \[[`Solid`](Solid.md), [`Solid`](Solid.md)\]
|
|
|
51
51
|
- [Choose the Boolean by the material you want](../../guides/fundamentals.md#choose-the-boolean-by-the-material-you-want)
|
|
52
52
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
53
53
|
|
|
54
|
-
Package: `@metamesh/modeling@0.
|
|
54
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -63,4 +63,4 @@ readonly \[[`Solid`](Solid.md), [`Solid`](Solid.md)\]
|
|
|
63
63
|
- [Choose the Boolean by the material you want](../../guides/fundamentals.md#choose-the-boolean-by-the-material-you-want)
|
|
64
64
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
65
65
|
|
|
66
|
-
Package: `@metamesh/modeling@0.
|
|
66
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -30,15 +30,15 @@ star({ outerRadius: 12, innerRadius: 6, points: 5 });
|
|
|
30
30
|
|
|
31
31
|
Integer outer point count from three through 50000.
|
|
32
32
|
|
|
33
|
-
- [`
|
|
33
|
+
- [`attachment`](StarOptions.md#attachment) · [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md) · Optional
|
|
34
34
|
|
|
35
|
-
Applied after local construction; Section
|
|
35
|
+
Applied after local construction; Section attachment must preserve the XY plane.
|
|
36
36
|
|
|
37
37
|
- [`limits`](StarOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
|
|
38
38
|
|
|
39
39
|
Explicit sampling ceilings, bounded by the host policy.
|
|
40
40
|
|
|
41
|
-
- [`
|
|
41
|
+
- [`rotation`](StarOptions.md#rotation) · `number` · Optional
|
|
42
42
|
|
|
43
43
|
Initial counterclockwise rotation in degrees; defaults to zero.
|
|
44
44
|
|
|
@@ -60,4 +60,4 @@ star({ outerRadius: 12, innerRadius: 6, points: 5 });
|
|
|
60
60
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
61
61
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
62
62
|
|
|
63
|
-
Package: `@metamesh/modeling@0.
|
|
63
|
+
Package: `@metamesh/modeling@0.16.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`: [`
|
|
5
|
+
**stroke**(`path`: [`Path2Input`](Path2Input.md), `options`: [`StrokeOptions`](StrokeOptions.md)): [`Section`](Section.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -12,7 +12,7 @@ Creates a centered-width native Section along a sampled XY path.
|
|
|
12
12
|
stroke([[0, 0], [20, 0], [20, 10]], { width: 3, join: "round", cap: "round" }).extrude({ height: 2 });
|
|
13
13
|
```
|
|
14
14
|
|
|
15
|
-
Shares caps, joins and physical sampling with Geometry's
|
|
15
|
+
Shares caps, joins and physical sampling with Geometry's strokeRegionData. Native union
|
|
16
16
|
resolves overlapping stroke primitives. Session resolution and resource ceilings apply;
|
|
17
17
|
closed paths omit the duplicated seam. Returns an immutable deferred recipe.
|
|
18
18
|
|
|
@@ -20,7 +20,7 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
|
|
|
20
20
|
|
|
21
21
|
<a id="path"></a>
|
|
22
22
|
|
|
23
|
-
**`path`** · [`
|
|
23
|
+
**`path`** · [`Path2Input`](Path2Input.md) · Required
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
|
|
@@ -38,13 +38,13 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
|
|
|
38
38
|
|
|
39
39
|
- [`closed`](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) · [`
|
|
43
|
+
- [`cap`](StrokeOptions.md#cap) · [`StrokeCap`](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) · [`
|
|
47
|
+
- [`join`](StrokeOptions.md#join) · [`StrokeJoin`](StrokeJoin.md) · Optional
|
|
48
48
|
|
|
49
49
|
Corner treatment; miters exceeding SVG's default limit of 4 become bevels. Default: `miter`.
|
|
50
50
|
|
|
@@ -61,7 +61,7 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
|
|
|
61
61
|
|
|
62
62
|
## Related APIs
|
|
63
63
|
|
|
64
|
-
- [
|
|
64
|
+
- [Path2Input](Path2Input.md)
|
|
65
65
|
- [Section](Section.md)
|
|
66
66
|
- [StrokeOptions](StrokeOptions.md)
|
|
67
67
|
|
|
@@ -71,4 +71,4 @@ closed paths omit the duplicated seam. Returns an immutable deferred recipe.
|
|
|
71
71
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
72
72
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
73
73
|
|
|
74
|
-
Package: `@metamesh/modeling@0.
|
|
74
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -62,4 +62,4 @@ svgPathSection("M0 0H20V12H0Z", { origin: "center", scale: 1 });
|
|
|
62
62
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
63
63
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
64
64
|
|
|
65
|
-
Package: `@metamesh/modeling@0.
|
|
65
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -61,4 +61,4 @@ svgSection(
|
|
|
61
61
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
62
62
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
63
63
|
|
|
64
|
-
Package: `@metamesh/modeling@0.
|
|
64
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Sweeps explicit corresponding contours using the selected frame policy. Filled Sections use `section.sweep(path, options)`.
|
|
4
4
|
|
|
5
|
-
**sweep**(`shape`: [`CorrespondingProfile`](CorrespondingProfile.md), `path`:
|
|
5
|
+
**sweep**(`shape`: [`CorrespondingProfile`](CorrespondingProfile.md), `path`: [`Path3Input`](Path3Input.md), `options?`: [`SweepOptions`](SweepOptions.md)): [`Solid`](Solid.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -28,7 +28,7 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
|
|
|
28
28
|
|
|
29
29
|
<a id="path"></a>
|
|
30
30
|
|
|
31
|
-
**`path`** ·
|
|
31
|
+
**`path`** · [`Path3Input`](Path3Input.md) · Required
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
|
|
@@ -38,7 +38,7 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
|
|
|
38
38
|
|
|
39
39
|
- [`closed`](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
43
|
- [`limits`](SweepOptions.md#limits) · `Partial`\<[`ModelingLimits`](ModelingLimits.md)\> · Optional
|
|
44
44
|
|
|
@@ -52,7 +52,7 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
|
|
|
52
52
|
|
|
53
53
|
Physical sampling of nonzero twist; inserted stations retain authored station controls.
|
|
54
54
|
|
|
55
|
-
- [`
|
|
55
|
+
- [`twist`](SweepOptions.md#twist) · `number` · Optional
|
|
56
56
|
|
|
57
57
|
Total additional profile rotation in degrees, with progression selected by twistBy.
|
|
58
58
|
|
|
@@ -60,7 +60,7 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
|
|
|
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` \| [`
|
|
63
|
+
- [`scale`](SweepOptions.md#scale) · `number` \| [`Vector2Input`](Vector2Input.md) \| readonly [`Vector2Input`](Vector2Input.md)[] · Optional
|
|
64
64
|
|
|
65
65
|
Positive uniform/XY scale, or one XY pair per path station. Defaults to one.
|
|
66
66
|
|
|
@@ -78,9 +78,9 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
|
|
|
78
78
|
## Related APIs
|
|
79
79
|
|
|
80
80
|
- [CorrespondingProfile](CorrespondingProfile.md)
|
|
81
|
+
- [Path3Input](Path3Input.md)
|
|
81
82
|
- [Solid](Solid.md)
|
|
82
83
|
- [SweepOptions](SweepOptions.md)
|
|
83
|
-
- [Vector3Tuple](Vector3Tuple.md)
|
|
84
84
|
|
|
85
85
|
## Guides
|
|
86
86
|
|
|
@@ -89,4 +89,4 @@ sweep(profile!, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
|
|
|
89
89
|
- [Matched-section loft](../../guides/recipes.md#matched-section-loft)
|
|
90
90
|
- [Choose a modeling path](../../guides/concepts.md#choose-a-modeling-path)
|
|
91
91
|
|
|
92
|
-
Package: `@metamesh/modeling@0.
|
|
92
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -54,4 +54,4 @@ function labelSection(layout: VectorTextLayout) {
|
|
|
54
54
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
55
55
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
56
56
|
|
|
57
|
-
Package: `@metamesh/modeling@0.
|
|
57
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -37,7 +37,7 @@ Helical ridge mesh construction.
|
|
|
37
37
|
|
|
38
38
|
Explicit output and circular allocation ceilings.
|
|
39
39
|
|
|
40
|
-
- [`
|
|
40
|
+
- [`phase`](HelicalThreadRidgeMeshOptions.md#phase) · `number` · Optional
|
|
41
41
|
|
|
42
42
|
Angular offset of the first start in degrees. Default: `0`.
|
|
43
43
|
|
|
@@ -68,5 +68,6 @@ Helical ridge mesh construction.
|
|
|
68
68
|
## Guides
|
|
69
69
|
|
|
70
70
|
- [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
|
|
71
|
+
- [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
|
|
71
72
|
|
|
72
|
-
Package: `@metamesh/modeling@0.
|
|
73
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -10,9 +10,9 @@ Compensated threaded nut.
|
|
|
10
10
|
|
|
11
11
|
```ts
|
|
12
12
|
import { threadedNut } from "@metamesh/modeling";
|
|
13
|
-
import {
|
|
13
|
+
import { threadProfile } from "@metamesh/modeling/geometry";
|
|
14
14
|
|
|
15
|
-
const profile =
|
|
15
|
+
const profile = threadProfile({ kind: "triangular", pitch: 1.75 });
|
|
16
16
|
threadedNut({ nominalMajorDiameter: 12, thickness: 8, width: 20, shape: "hex", profile, fit: "normal" });
|
|
17
17
|
```
|
|
18
18
|
|
|
@@ -55,7 +55,7 @@ threadedNut({ nominalMajorDiameter: 12, thickness: 8, width: 20, shape: "hex", p
|
|
|
55
55
|
|
|
56
56
|
Explicit output and circular allocation ceilings.
|
|
57
57
|
|
|
58
|
-
- [`
|
|
58
|
+
- [`phase`](ThreadedNutOptions.md#phase) · `number` · Optional
|
|
59
59
|
|
|
60
60
|
Angular offset of the first start in degrees. Default: `0`.
|
|
61
61
|
|
|
@@ -106,5 +106,6 @@ threadedNut({ nominalMajorDiameter: 12, thickness: 8, width: 20, shape: "hex", p
|
|
|
106
106
|
## Guides
|
|
107
107
|
|
|
108
108
|
- [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
|
|
109
|
+
- [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
|
|
109
110
|
|
|
110
|
-
Package: `@metamesh/modeling@0.
|
|
111
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -10,9 +10,9 @@ Compensated external threaded rod.
|
|
|
10
10
|
|
|
11
11
|
```ts
|
|
12
12
|
import { threadedRod } from "@metamesh/modeling";
|
|
13
|
-
import {
|
|
13
|
+
import { threadProfile } from "@metamesh/modeling/geometry";
|
|
14
14
|
|
|
15
|
-
const profile =
|
|
15
|
+
const profile = threadProfile({ kind: "triangular", pitch: 1.75 });
|
|
16
16
|
threadedRod({ nominalMajorDiameter: 12, length: 24, profile, fit: "normal" });
|
|
17
17
|
```
|
|
18
18
|
|
|
@@ -47,7 +47,7 @@ threadedRod({ nominalMajorDiameter: 12, length: 24, profile, fit: "normal" });
|
|
|
47
47
|
|
|
48
48
|
Explicit output and circular allocation ceilings.
|
|
49
49
|
|
|
50
|
-
- [`
|
|
50
|
+
- [`phase`](ThreadedRodOptions.md#phase) · `number` · Optional
|
|
51
51
|
|
|
52
52
|
Angular offset of the first start in degrees. Default: `0`.
|
|
53
53
|
|
|
@@ -95,5 +95,6 @@ threadedRod({ nominalMajorDiameter: 12, length: 24, profile, fit: "normal" });
|
|
|
95
95
|
## Guides
|
|
96
96
|
|
|
97
97
|
- [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
|
|
98
|
+
- [Preflight guarantees and host settings](../../guides/concepts.md#check-preflight-guarantees)
|
|
98
99
|
|
|
99
|
-
Package: `@metamesh/modeling@0.
|
|
100
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -30,9 +30,9 @@ torus({ majorRadius: 12, minorRadius: 3 });
|
|
|
30
30
|
|
|
31
31
|
Radius of the swept circular profile in millimetres.
|
|
32
32
|
|
|
33
|
-
- [`
|
|
33
|
+
- [`attachment`](TorusOptions.md#attachment) · [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md) · Optional
|
|
34
34
|
|
|
35
|
-
Applied after local construction; Section
|
|
35
|
+
Applied after local construction; Section attachment must preserve the XY plane.
|
|
36
36
|
|
|
37
37
|
- [`limits`](TorusOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
|
|
38
38
|
|
|
@@ -67,4 +67,4 @@ torus({ majorRadius: 12, minorRadius: 3 });
|
|
|
67
67
|
- [Choose a primitive](../../guides/recipes.md#choose-a-primitive)
|
|
68
68
|
- [Treated boxes, frustums, and mirrored arrays](../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
|
|
69
69
|
|
|
70
|
-
Package: `@metamesh/modeling@0.
|
|
70
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# transform2
|
|
2
2
|
|
|
3
|
-
Creates an immutable XY transform, identity by default.
|
|
3
|
+
Creates an immutable XY transform, identity by default.
|
|
4
4
|
|
|
5
|
-
**transform2**(`
|
|
5
|
+
**transform2**(`input?`: [`Transform2Input`](Transform2Input.md)): [`Transform2`](Transform2-type.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,14 +10,20 @@ Creates an immutable XY transform, identity by default. Matrices are copied and
|
|
|
10
10
|
|
|
11
11
|
```ts
|
|
12
12
|
const placement = transform2().rotate(90).translate([10, 0]);
|
|
13
|
-
placement.applyPoint([1, 0]).
|
|
13
|
+
placement.applyPoint([1, 0]).toData(); // approximately [10, 1]
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
+
Values and data are copied and validated.
|
|
17
|
+
Pass it directly to Section.transform() and planar data helpers; to3D() explicitly crosses into XYZ.
|
|
18
|
+
Zero scales and singular matrices throw GeometryError; negative scales reflect.
|
|
19
|
+
|
|
20
|
+
Use `toData()` for frozen matrix interchange.
|
|
21
|
+
|
|
16
22
|
## Parameters
|
|
17
23
|
|
|
18
|
-
<a id="
|
|
24
|
+
<a id="input"></a>
|
|
19
25
|
|
|
20
|
-
**`
|
|
26
|
+
**`input`** · [`Transform2Input`](Transform2Input.md) · Optional
|
|
21
27
|
|
|
22
28
|
|
|
23
29
|
|
|
@@ -29,11 +35,12 @@ placement.applyPoint([1, 0]).toArray(); // approximately [10, 1]
|
|
|
29
35
|
## Related APIs
|
|
30
36
|
|
|
31
37
|
- [Transform2](Transform2-type.md)
|
|
32
|
-
- [
|
|
38
|
+
- [Transform2Input](Transform2Input.md)
|
|
33
39
|
|
|
34
40
|
## Guides
|
|
35
41
|
|
|
36
42
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
37
43
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
44
|
+
- [Fluent values and standalone algorithms](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
38
45
|
|
|
39
|
-
Package: `@metamesh/modeling@0.
|
|
46
|
+
Package: `@metamesh/modeling@0.16.0`.
|