@metamesh/modeling 0.17.0 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +153 -0
- package/README.md +137 -163
- package/dist/api/engine.d.ts +128 -65
- package/dist/api/geometry.d.ts +246 -457
- package/dist/api/index.d.ts +394 -419
- package/dist/api/mesh.d.ts +460 -0
- package/dist/api/text.d.ts +1 -1
- package/dist/docs/guides/concepts.md +126 -86
- package/dist/docs/guides/fonts.md +11 -10
- package/dist/docs/guides/fundamentals.md +30 -29
- package/dist/docs/guides/generation.md +44 -31
- package/dist/docs/guides/hosting.md +122 -46
- package/dist/docs/guides/recipes.md +65 -54
- package/dist/docs/guides/standalone-model.md +8 -7
- package/dist/docs/manifest.json +2740 -902
- package/dist/docs/reference/engine/Export3mfOptions.md +19 -2
- package/dist/docs/reference/engine/ExportMeshPart.md +5 -39
- package/dist/docs/reference/engine/GenerationOptions.md +4 -3
- package/dist/docs/reference/engine/GeometryResource.md +13 -13
- package/dist/docs/reference/engine/ModelDependencies.md +1 -1
- package/dist/docs/reference/engine/ModelEngine.md +26 -23
- package/dist/docs/reference/engine/ModelEngineOptions.md +6 -1
- package/dist/docs/reference/engine/ModelPart.md +108 -0
- package/dist/docs/reference/engine/ModelResult.md +175 -0
- package/dist/docs/reference/engine/ModelRunArguments.md +28 -0
- package/dist/docs/reference/engine/ModelRunOptions.md +104 -0
- package/dist/docs/reference/engine/ModelSession.md +16 -16
- package/dist/docs/reference/engine/ModelingLimits.md +121 -0
- package/dist/docs/reference/engine/SessionOptions.md +13 -8
- package/dist/docs/reference/engine/categories/host-lifecycle.md +25 -15
- package/dist/docs/reference/engine/checkModel.md +43 -0
- package/dist/docs/reference/engine/createModelEngine.md +4 -13
- package/dist/docs/reference/engine/defaultModelingLimits.md +8 -1
- package/dist/docs/reference/engine/export3mf.md +55 -0
- package/dist/docs/reference/engine/modelingWasmUrl.md +1 -1
- package/dist/docs/reference/engine.md +8 -15
- package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +1 -1
- package/dist/docs/reference/geometry/Anchor3-type.md +1 -1
- package/dist/docs/reference/geometry/ArcCurve2.md +1 -1
- package/dist/docs/reference/geometry/ArcCurve3.md +1 -1
- package/dist/docs/reference/geometry/AttachOptions.md +1 -1
- package/dist/docs/reference/geometry/AxisAngleRotation3.md +1 -1
- package/dist/docs/reference/geometry/Bevel.md +18 -0
- package/dist/docs/reference/geometry/BevelSize.md +14 -0
- package/dist/docs/reference/geometry/Bounds2-type.md +1 -1
- package/dist/docs/reference/geometry/Bounds2Data.md +1 -1
- package/dist/docs/reference/geometry/Bounds2Input.md +1 -1
- package/dist/docs/reference/geometry/Bounds2Options.md +48 -8
- package/dist/docs/reference/geometry/Bounds3-type.md +1 -1
- package/dist/docs/reference/geometry/Bounds3Data.md +1 -1
- package/dist/docs/reference/geometry/Bounds3Input.md +1 -1
- package/dist/docs/reference/geometry/Bounds3Options.md +48 -8
- package/dist/docs/reference/geometry/BoundsFit2.md +1 -1
- package/dist/docs/reference/geometry/BoundsFit3.md +1 -1
- package/dist/docs/reference/geometry/BoundsFitOptions.md +1 -1
- package/dist/docs/reference/geometry/BoxAnchorFace.md +1 -1
- package/dist/docs/reference/geometry/BoxAnchorOptions.md +4 -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 +3 -3
- package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +1 -1
- package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/CircleContourOptions.md +1 -1
- package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +1 -3
- package/dist/docs/reference/geometry/CircularResolutionOptions.md +1 -1
- package/dist/docs/reference/geometry/CircularSampling.md +1 -1
- package/dist/docs/reference/geometry/CircularSamplingOptions.md +1 -1
- package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +1 -1
- package/dist/docs/reference/geometry/ClearanceHoleFit.md +1 -1
- package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +1 -1
- package/dist/docs/reference/geometry/Contour.md +1 -1
- package/dist/docs/reference/geometry/ContourCurve.md +1 -1
- package/dist/docs/reference/geometry/ContourPoint.md +1 -1
- package/dist/docs/reference/geometry/ContourSegment.md +1 -1
- package/dist/docs/reference/geometry/CorrespondingComponent.md +1 -1
- package/dist/docs/reference/geometry/CorrespondingContour.md +1 -1
- package/dist/docs/reference/geometry/CorrespondingProfile.md +1 -1
- package/dist/docs/reference/geometry/CorrespondingProfileStation.md +1 -1
- package/dist/docs/reference/geometry/CubicBezierCurve2.md +1 -1
- package/dist/docs/reference/geometry/CubicBezierCurve3.md +1 -1
- package/dist/docs/reference/geometry/Curve2.md +1 -1
- package/dist/docs/reference/geometry/Curve3.md +1 -1
- package/dist/docs/reference/geometry/CurveSamplingOptions.md +1 -1
- package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/CylinderAnchorFace.md +1 -1
- package/dist/docs/reference/geometry/CylinderAnchorOptions.md +3 -3
- package/dist/docs/reference/geometry/CylinderOptions.md +1 -1
- package/dist/docs/reference/geometry/CylindricalGearDimensions.md +1 -1
- package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +1 -1
- package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +1 -1
- package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +1 -1
- package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +1 -1
- package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +1 -1
- package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +1 -1
- package/dist/docs/reference/geometry/CylindricalGearSpec.md +1 -1
- 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 +3 -3
- package/dist/docs/reference/geometry/EndTreatments.md +1 -1
- package/dist/docs/reference/geometry/ExtrudeMeshOptions.md +130 -0
- package/dist/docs/reference/geometry/ExtrudeOptions.md +17 -9
- package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +3 -3
- package/dist/docs/reference/geometry/FittedTextLayout.md +1 -1
- package/dist/docs/reference/geometry/Frame3.md +1 -1
- 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 +1 -1
- package/dist/docs/reference/geometry/GeometrySamplingLimits.md +1 -1
- package/dist/docs/reference/geometry/GeometryToleranceOptions.md +1 -1
- package/dist/docs/reference/geometry/GridPatternOptions.md +1 -1
- package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +1 -1
- package/dist/docs/reference/geometry/HeightfieldOptions.md +3 -2
- package/dist/docs/reference/geometry/HeightfieldPreflight.md +1 -1
- package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +1 -1
- package/dist/docs/reference/geometry/ImmutableBuffer-type.md +108 -0
- package/dist/docs/reference/geometry/ImmutableTriangleMesh.md +43 -0
- package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +52 -83
- package/dist/docs/reference/geometry/KnuckleHingeBaseSpec.md +1 -1
- package/dist/docs/reference/geometry/KnuckleHingeDimensions.md +1 -1
- package/dist/docs/reference/geometry/KnuckleHingeInterval.md +1 -1
- package/dist/docs/reference/geometry/KnuckleHingeSamplingOptions.md +1 -1
- package/dist/docs/reference/geometry/KnuckleHingeSpec.md +1 -1
- package/dist/docs/reference/geometry/LineCurve2.md +1 -1
- package/dist/docs/reference/geometry/LineCurve3.md +1 -1
- package/dist/docs/reference/geometry/LinearPatternOptions.md +1 -1
- package/dist/docs/reference/geometry/LoftCorrespondence.md +1 -1
- package/dist/docs/reference/geometry/LoftMeshStation.md +1 -1
- package/dist/docs/reference/geometry/LoftOptions.md +3 -3
- package/dist/docs/reference/geometry/LoftPlacement.md +1 -1
- package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +1 -1
- package/dist/docs/reference/geometry/MatchProfilesOptions.md +1 -1
- package/dist/docs/reference/geometry/MetricFastenerSize.md +1 -1
- package/dist/docs/reference/geometry/MetricFastenerStandard.md +1 -1
- package/dist/docs/reference/geometry/MetricHexNutDimensions.md +1 -1
- package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +1 -1
- package/dist/docs/reference/geometry/ModelingLimits.md +1 -1
- package/dist/docs/reference/geometry/NumericArray.md +14 -0
- package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +1 -1
- package/dist/docs/reference/geometry/Path2-type.md +1 -1
- package/dist/docs/reference/geometry/Path2Data.md +1 -1
- package/dist/docs/reference/geometry/Path2Input.md +1 -1
- package/dist/docs/reference/geometry/Path3-type.md +1 -1
- package/dist/docs/reference/geometry/Path3Data.md +1 -1
- package/dist/docs/reference/geometry/Path3Input.md +1 -1
- package/dist/docs/reference/geometry/PathFrame.md +1 -1
- package/dist/docs/reference/geometry/PathLocation.md +1 -1
- package/dist/docs/reference/geometry/PathNormalGuide.md +1 -1
- package/dist/docs/reference/geometry/PathOptions.md +1 -1
- package/dist/docs/reference/geometry/PathPatternOptions.md +1 -1
- package/dist/docs/reference/geometry/PathPlacement.md +1 -1
- package/dist/docs/reference/geometry/PathResamplingOptions.md +1 -1
- package/dist/docs/reference/geometry/Pivot2Options.md +1 -1
- package/dist/docs/reference/geometry/Pivot3Options.md +1 -1
- package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +1 -1
- package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +1 -1
- package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +1 -1
- package/dist/docs/reference/geometry/PlanarPatchQuality.md +1 -1
- package/dist/docs/reference/geometry/PolygonData.md +1 -1
- package/dist/docs/reference/geometry/PolylineResamplingOptions.md +1 -1
- package/dist/docs/reference/geometry/PrimitiveAttachment.md +1 -3
- package/dist/docs/reference/geometry/PrimitiveAttachmentOptions.md +1 -1
- package/dist/docs/reference/geometry/PrintableThreadFit.md +1 -1
- package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +1 -1
- package/dist/docs/reference/geometry/Profile.md +1 -1
- package/dist/docs/reference/geometry/ProfileComponent2.md +1 -1
- package/dist/docs/reference/geometry/ProfileContour2.md +1 -1
- package/dist/docs/reference/geometry/ProfileSpan2.md +1 -1
- package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/RackPitchDimensions.md +1 -1
- package/dist/docs/reference/geometry/RackPitchSpec.md +1 -1
- package/dist/docs/reference/geometry/RadialPatternOptions.md +1 -1
- 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 +3 -3
- package/dist/docs/reference/geometry/RectangleCornerTreatment.md +1 -1
- package/dist/docs/reference/geometry/RectangleCornerTreatments.md +1 -1
- package/dist/docs/reference/geometry/RectangleProfileOptions.md +3 -3
- package/dist/docs/reference/geometry/RegionData.md +1 -1
- package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +1 -1
- package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +1 -1
- package/dist/docs/reference/geometry/RevolveOptions.md +2 -2
- package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/RowLayoutOptions.md +1 -1
- package/dist/docs/reference/geometry/SampleContourOptions.md +1 -1
- package/dist/docs/reference/geometry/SampleHelixOptions.md +1 -1
- package/dist/docs/reference/geometry/SampleSideProfileOptions.md +1 -1
- package/dist/docs/reference/geometry/SampledCurve2.md +1 -1
- package/dist/docs/reference/geometry/SampledCurve3.md +1 -1
- package/dist/docs/reference/geometry/SampledThreadHelices.md +1 -1
- package/dist/docs/reference/geometry/SideProfileCurve.md +1 -1
- package/dist/docs/reference/geometry/SideProfilePoint.md +1 -1
- package/dist/docs/reference/geometry/SideProfileSegment.md +1 -1
- package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +1 -1
- package/dist/docs/reference/geometry/SphereOptions.md +1 -1
- package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/StarContourOptions.md +74 -0
- package/dist/docs/reference/geometry/StrokeCap.md +1 -1
- package/dist/docs/reference/geometry/StrokeJoin.md +1 -1
- package/dist/docs/reference/geometry/StrokeOptions.md +1 -1
- package/dist/docs/reference/geometry/SvgImportOptions.md +1 -1
- package/dist/docs/reference/geometry/SvgRegionPreflight.md +1 -1
- package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +1 -1
- package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +1 -1
- package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +1 -1
- package/dist/docs/reference/geometry/SweepOptions.md +1 -1
- package/dist/docs/reference/geometry/SweepOrientation.md +1 -1
- package/dist/docs/reference/geometry/ThreadBevelOptions.md +7 -30
- package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +1 -1
- package/dist/docs/reference/geometry/ThreadCompensationOptions.md +1 -1
- package/dist/docs/reference/geometry/ThreadEndStyle.md +1 -1
- package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +1 -1
- package/dist/docs/reference/geometry/ThreadHandedness.md +1 -1
- package/dist/docs/reference/geometry/ThreadHelixOptions.md +1 -1
- package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +1 -1
- package/dist/docs/reference/geometry/ThreadLeadInShape.md +1 -1
- package/dist/docs/reference/geometry/ThreadProfile-type.md +2 -2
- package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +1 -1
- package/dist/docs/reference/geometry/ThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/{HelicalThreadRidgeMeshOptions.md → ThreadRidgeOptions.md} +4 -4
- package/dist/docs/reference/geometry/ThreadRole.md +1 -1
- package/dist/docs/reference/geometry/{HelicalThreadSolidMeshOptions.md → ThreadSolidOptions.md} +18 -65
- package/dist/docs/reference/geometry/{HelicalThreadSolidMeshPreflight.md → ThreadSolidPreflight.md} +2 -2
- package/dist/docs/reference/geometry/ThreadedNutOptions.md +75 -86
- package/dist/docs/reference/geometry/ThreadedNutPreflight.md +18 -6
- package/dist/docs/reference/geometry/ThreadedNutShape.md +1 -1
- package/dist/docs/reference/geometry/ThreadedRodOptions.md +52 -83
- package/dist/docs/reference/geometry/TorusOptions.md +1 -1
- package/dist/docs/reference/geometry/Transform2-type.md +1 -1
- package/dist/docs/reference/geometry/Transform2Data.md +1 -1
- package/dist/docs/reference/geometry/Transform2Input.md +1 -1
- package/dist/docs/reference/geometry/Transform3-type.md +1 -1
- package/dist/docs/reference/geometry/Transform3Data.md +1 -1
- package/dist/docs/reference/geometry/Transform3Input.md +1 -1
- package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/TriangleMesh.md +3 -8
- package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +10 -4
- package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +2 -2
- package/dist/docs/reference/geometry/TriangleMeshInput.md +19 -0
- package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +1 -1
- package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +1 -1
- package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +1 -1
- package/dist/docs/reference/geometry/TriangleMeshSignature.md +3 -3
- package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +1 -1
- package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +1 -1
- package/dist/docs/reference/geometry/TriangleMeshTopologyAnalysis.md +131 -0
- package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +1 -1
- package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/TubeOptions.md +10 -86
- package/dist/docs/reference/geometry/Vector2-type.md +1 -1
- package/dist/docs/reference/geometry/Vector2Data.md +1 -1
- package/dist/docs/reference/geometry/Vector2Input.md +1 -1
- package/dist/docs/reference/geometry/Vector3-type.md +1 -1
- package/dist/docs/reference/geometry/Vector3Data.md +1 -1
- package/dist/docs/reference/geometry/Vector3Input.md +1 -1
- package/dist/docs/reference/geometry/VectorTextArcBaseline.md +1 -1
- package/dist/docs/reference/geometry/VectorTextLayout.md +1 -1
- package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +3 -3
- package/dist/docs/reference/geometry/VectorTextMetrics.md +1 -1
- package/dist/docs/reference/geometry/VectorTextOptions.md +1 -1
- package/dist/docs/reference/geometry/add2.md +1 -1
- package/dist/docs/reference/geometry/add3.md +1 -1
- package/dist/docs/reference/geometry/anchor3.md +1 -1
- package/dist/docs/reference/geometry/anchorFrame3.md +1 -1
- package/dist/docs/reference/geometry/applyTransformDirection3.md +1 -1
- package/dist/docs/reference/geometry/applyTransformPoint3.md +1 -1
- package/dist/docs/reference/geometry/attachmentTransform3.md +1 -1
- package/dist/docs/reference/geometry/bounds2.md +4 -4
- package/dist/docs/reference/geometry/bounds3.md +4 -4
- package/dist/docs/reference/geometry/boundsCenter.md +1 -1
- package/dist/docs/reference/geometry/boundsSize.md +1 -1
- package/dist/docs/reference/geometry/boxAnchor3.md +3 -3
- package/dist/docs/reference/geometry/categories/bounds-layout.md +3 -3
- package/dist/docs/reference/geometry/categories/curves-paths.md +2 -2
- package/dist/docs/reference/geometry/categories/mechanical.md +8 -10
- package/dist/docs/reference/geometry/categories/meshes.md +19 -32
- package/dist/docs/reference/geometry/categories/pattern-placement.md +2 -2
- package/dist/docs/reference/geometry/categories/primitive-options.md +3 -3
- package/dist/docs/reference/geometry/categories/profiles-regions.md +5 -4
- package/dist/docs/reference/geometry/categories/resolution-errors.md +3 -3
- package/dist/docs/reference/geometry/categories/transforms-math.md +3 -2
- package/dist/docs/reference/geometry/categories/vector-import.md +3 -3
- package/dist/docs/reference/geometry/circleContour.md +1 -1
- package/dist/docs/reference/geometry/closeToAxis.md +1 -1
- package/dist/docs/reference/geometry/compensateThreadDiameters.md +1 -1
- package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +1 -1
- package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +1 -1
- package/dist/docs/reference/geometry/composeTransform3.md +1 -1
- package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +1 -1
- package/dist/docs/reference/geometry/computeParallelTransportFrames.md +1 -1
- package/dist/docs/reference/geometry/contourContainsPoint.md +1 -1
- package/dist/docs/reference/geometry/cross2.md +1 -1
- package/dist/docs/reference/geometry/cross3.md +1 -1
- package/dist/docs/reference/geometry/cylinderAnchor3.md +2 -2
- package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +1 -1
- package/dist/docs/reference/geometry/distance2.md +1 -1
- package/dist/docs/reference/geometry/distance3.md +1 -1
- package/dist/docs/reference/geometry/distributeAlongPath.md +1 -1
- package/dist/docs/reference/geometry/dot2.md +1 -1
- package/dist/docs/reference/geometry/dot3.md +1 -1
- package/dist/docs/reference/geometry/ellipseContour.md +1 -1
- package/dist/docs/reference/geometry/eulerTransform3.md +1 -1
- package/dist/docs/reference/geometry/fitBounds.md +1 -1
- package/dist/docs/reference/geometry/fitTextLayout.md +1 -1
- package/dist/docs/reference/geometry/frameTransform3.md +1 -1
- package/dist/docs/reference/geometry/getMetricClearanceHoleDiameter.md +1 -1
- package/dist/docs/reference/geometry/getMetricFastenerStandard.md +1 -1
- package/dist/docs/reference/geometry/gridPatternTransforms.md +1 -1
- package/dist/docs/reference/geometry/immutableBuffer.md +49 -0
- package/dist/docs/reference/geometry/inverseTransform3.md +1 -1
- package/dist/docs/reference/geometry/isGeometryError.md +1 -1
- package/dist/docs/reference/geometry/layoutRow.md +1 -1
- package/dist/docs/reference/geometry/length2.md +1 -1
- package/dist/docs/reference/geometry/length3.md +1 -1
- package/dist/docs/reference/geometry/lerp2.md +1 -1
- package/dist/docs/reference/geometry/lerp3.md +1 -1
- package/dist/docs/reference/geometry/linearPatternTransforms.md +1 -1
- package/dist/docs/reference/geometry/matchProfiles.md +1 -1
- package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +1 -1
- package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +1 -1
- package/dist/docs/reference/geometry/normalize2.md +1 -1
- package/dist/docs/reference/geometry/normalize3.md +1 -1
- package/dist/docs/reference/geometry/normalizeContour.md +1 -1
- package/dist/docs/reference/geometry/normalizePolygon.md +1 -1
- package/dist/docs/reference/geometry/normalizeRegion.md +1 -1
- package/dist/docs/reference/geometry/path2.md +1 -1
- package/dist/docs/reference/geometry/path3.md +1 -1
- package/dist/docs/reference/geometry/pathPatternTransforms.md +1 -1
- package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +18 -25
- package/dist/docs/reference/geometry/preflightSvgRegion.md +1 -1
- package/dist/docs/reference/geometry/preflightThreadedNut.md +24 -26
- package/dist/docs/reference/geometry/preflightThreadedRod.md +18 -25
- package/dist/docs/reference/geometry/projectOntoPlane3.md +1 -1
- package/dist/docs/reference/geometry/radialPatternTransforms.md +1 -1
- package/dist/docs/reference/geometry/rectangleContour.md +10 -5
- package/dist/docs/reference/geometry/rectangleProfile.md +2 -2
- package/dist/docs/reference/geometry/regionArea.md +1 -1
- package/dist/docs/reference/geometry/regionBounds.md +1 -1
- package/dist/docs/reference/geometry/regularPolygonContour.md +2 -2
- package/dist/docs/reference/geometry/resamplePolyline2.md +1 -1
- package/dist/docs/reference/geometry/resamplePolyline3.md +1 -1
- package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +1 -1
- package/dist/docs/reference/geometry/resolveArcSegments.md +1 -1
- package/dist/docs/reference/geometry/resolveCircularSampling.md +1 -1
- package/dist/docs/reference/geometry/resolveCircularSegments.md +1 -1
- package/dist/docs/reference/geometry/resolveCylindricalGear.md +1 -1
- package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +1 -1
- package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +1 -1
- package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +1 -1
- package/dist/docs/reference/geometry/resolveGeometryTolerance.md +1 -1
- package/dist/docs/reference/geometry/resolveKnuckleHinge.md +1 -1
- package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +1 -1
- package/dist/docs/reference/geometry/resolveRackPitch.md +1 -1
- package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +1 -1
- package/dist/docs/reference/geometry/rotate2.md +1 -1
- package/dist/docs/reference/geometry/rotationTransform3.md +1 -1
- package/dist/docs/reference/geometry/roundClosedPolylinePath.md +1 -1
- package/dist/docs/reference/geometry/sampleContour.md +1 -1
- package/dist/docs/reference/geometry/sampleCurve2.md +1 -1
- package/dist/docs/reference/geometry/sampleCurve3.md +1 -1
- package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +1 -1
- package/dist/docs/reference/geometry/sampleHelix.md +1 -1
- package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +1 -1
- package/dist/docs/reference/geometry/sampleRackToothPath.md +1 -1
- package/dist/docs/reference/geometry/sampleSideProfile.md +1 -1
- package/dist/docs/reference/geometry/sampleTextContours.md +1 -1
- package/dist/docs/reference/geometry/sampleThreadHelices.md +1 -1
- package/dist/docs/reference/geometry/scale2.md +1 -1
- package/dist/docs/reference/geometry/scale3.md +1 -1
- package/dist/docs/reference/geometry/scaleTransform3.md +1 -1
- package/dist/docs/reference/geometry/signedContourArea.md +1 -1
- package/dist/docs/reference/geometry/starContour.md +17 -15
- package/dist/docs/reference/geometry/strokeRegionData.md +1 -1
- package/dist/docs/reference/geometry/subtract2.md +1 -1
- package/dist/docs/reference/geometry/subtract3.md +1 -1
- package/dist/docs/reference/geometry/threadProfile.md +1 -1
- package/dist/docs/reference/geometry/transform2.md +1 -1
- package/dist/docs/reference/geometry/transform3.md +1 -1
- package/dist/docs/reference/geometry/transformDeterminant3.md +1 -1
- package/dist/docs/reference/geometry/transformRegionData.md +1 -1
- package/dist/docs/reference/geometry/translationTransform3.md +1 -1
- package/dist/docs/reference/geometry/triangulateContour.md +1 -1
- package/dist/docs/reference/geometry/validateRigidTransform3.md +35 -0
- package/dist/docs/reference/geometry/validateTransform3.md +1 -1
- package/dist/docs/reference/geometry/vector2.md +1 -1
- package/dist/docs/reference/geometry/vector3.md +1 -1
- package/dist/docs/reference/geometry.md +9 -9
- package/dist/docs/reference/mesh/AcmeThreadProfileSpec.md +79 -0
- package/dist/docs/reference/mesh/Bevel.md +18 -0
- package/dist/docs/reference/mesh/BevelSize.md +14 -0
- package/dist/docs/reference/mesh/Bounds2.md +125 -0
- package/dist/docs/reference/mesh/Bounds2Data.md +43 -0
- package/dist/docs/reference/mesh/Bounds2Input.md +19 -0
- package/dist/docs/reference/mesh/Bounds3.md +125 -0
- package/dist/docs/reference/mesh/Bounds3Data.md +43 -0
- package/dist/docs/reference/mesh/Bounds3Input.md +19 -0
- package/dist/docs/reference/mesh/ButtressPressureFlankSide.md +14 -0
- package/dist/docs/reference/mesh/ButtressThreadProfileSpec.md +97 -0
- package/dist/docs/reference/mesh/CircularPrimitiveOptions.md +60 -0
- package/dist/docs/reference/mesh/CurveSamplingOptions.md +69 -0
- package/dist/docs/reference/mesh/CustomThreadProfileSpec.md +77 -0
- package/dist/docs/reference/mesh/ExtrudeMeshOptions.md +129 -0
- package/dist/docs/reference/mesh/ExtrusionSamplingOptions.md +81 -0
- package/dist/docs/reference/mesh/Frame3.md +62 -0
- package/dist/docs/reference/mesh/GeometryResolution.md +74 -0
- package/dist/docs/reference/mesh/GeometrySamplingLimits.md +66 -0
- package/dist/docs/reference/mesh/GeometryToleranceOptions.md +46 -0
- package/dist/docs/reference/mesh/HeightfieldMeshLimits.md +18 -0
- package/dist/docs/reference/mesh/HeightfieldOptions.md +72 -0
- package/dist/docs/reference/mesh/HeightfieldPreflight.md +58 -0
- package/dist/docs/reference/mesh/ImmutableBuffer.md +108 -0
- package/dist/docs/reference/mesh/ImmutableTriangleMesh.md +43 -0
- package/dist/docs/reference/mesh/LoftCorrespondence.md +24 -0
- package/dist/docs/reference/mesh/LoftMeshStation.md +31 -0
- package/dist/docs/reference/mesh/LoftOptions.md +88 -0
- package/dist/docs/reference/mesh/LoftPlacement.md +70 -0
- package/dist/docs/reference/mesh/ModelingLimits.md +130 -0
- package/dist/docs/reference/mesh/NumericArray.md +14 -0
- package/dist/docs/reference/mesh/Path2.md +197 -0
- package/dist/docs/reference/mesh/Path2Data.md +50 -0
- package/dist/docs/reference/mesh/Path2Input.md +20 -0
- package/dist/docs/reference/mesh/Path3.md +197 -0
- package/dist/docs/reference/mesh/Path3Data.md +50 -0
- package/dist/docs/reference/mesh/Path3Input.md +20 -0
- package/dist/docs/reference/mesh/PathLocation.md +69 -0
- package/dist/docs/reference/mesh/PathNormalGuide.md +43 -0
- package/dist/docs/reference/mesh/PathResamplingOptions.md +84 -0
- package/dist/docs/reference/mesh/Pivot2Options.md +26 -0
- package/dist/docs/reference/mesh/Pivot3Options.md +26 -0
- package/dist/docs/reference/mesh/PlanarMeshOptimizationFallbackReason.md +14 -0
- package/dist/docs/reference/mesh/PlanarMeshOptimizationOptions.md +160 -0
- package/dist/docs/reference/mesh/PlanarMeshOptimizationResult.md +124 -0
- package/dist/docs/reference/mesh/PlanarPatchQuality.md +194 -0
- package/dist/docs/reference/mesh/RevolveOptions.md +91 -0
- package/dist/docs/reference/mesh/SolidMeshValidationOptions.md +38 -0
- package/dist/docs/reference/mesh/SquareThreadProfileSpec.md +79 -0
- package/dist/docs/reference/mesh/SweepOptions.md +113 -0
- package/dist/docs/reference/mesh/SweepOrientation.md +113 -0
- package/dist/docs/reference/mesh/ThreadEndStyle.md +14 -0
- package/dist/docs/reference/mesh/ThreadEndTreatmentOptions.md +117 -0
- package/dist/docs/reference/mesh/ThreadHandedness.md +14 -0
- package/dist/docs/reference/mesh/ThreadLeadInEnvelope.md +14 -0
- package/dist/docs/reference/mesh/ThreadLeadInShape.md +14 -0
- package/dist/docs/reference/mesh/ThreadProfile.md +86 -0
- package/dist/docs/reference/mesh/ThreadProfileBaseSpec.md +53 -0
- package/dist/docs/reference/mesh/ThreadProfileSpec.md +23 -0
- package/dist/docs/reference/{model/HelicalThreadRidgeMeshOptions.md → mesh/ThreadRidgeOptions.md} +14 -10
- package/dist/docs/reference/mesh/ThreadSolidOptions.md +222 -0
- package/dist/docs/reference/mesh/ThreadSolidPreflight.md +58 -0
- package/dist/docs/reference/mesh/Transform2.md +256 -0
- package/dist/docs/reference/mesh/Transform2Data.md +14 -0
- package/dist/docs/reference/mesh/Transform2Input.md +19 -0
- package/dist/docs/reference/mesh/Transform3.md +296 -0
- package/dist/docs/reference/mesh/Transform3Data.md +17 -0
- package/dist/docs/reference/mesh/Transform3Input.md +19 -0
- package/dist/docs/reference/mesh/TrapezoidalThreadProfileSpec.md +96 -0
- package/dist/docs/reference/mesh/TriangleMesh.md +34 -0
- package/dist/docs/reference/mesh/TriangleMeshAnalysis.md +129 -0
- package/dist/docs/reference/mesh/TriangleMeshAnalysisOptions.md +79 -0
- package/dist/docs/reference/mesh/TriangleMeshInput.md +19 -0
- package/dist/docs/reference/mesh/TriangleMeshMeasurements.md +79 -0
- package/dist/docs/reference/mesh/TriangleMeshQualityOptions.md +43 -0
- package/dist/docs/reference/mesh/TriangleMeshQualityReport.md +194 -0
- package/dist/docs/reference/mesh/TriangleMeshSignature.md +111 -0
- package/dist/docs/reference/mesh/TriangleMeshSignatureOptions.md +46 -0
- package/dist/docs/reference/mesh/TriangleMeshSignatureTolerances.md +34 -0
- package/dist/docs/reference/mesh/TriangleMeshTopologyAnalysis.md +131 -0
- package/dist/docs/reference/mesh/TriangleMeshValidationOptions.md +55 -0
- package/dist/docs/reference/mesh/TriangularThreadProfileSpec.md +95 -0
- package/dist/docs/reference/mesh/Vector2.md +270 -0
- package/dist/docs/reference/mesh/Vector2Data.md +14 -0
- package/dist/docs/reference/mesh/Vector2Input.md +19 -0
- package/dist/docs/reference/mesh/Vector3.md +282 -0
- package/dist/docs/reference/mesh/Vector3Data.md +14 -0
- package/dist/docs/reference/mesh/Vector3Input.md +19 -0
- package/dist/docs/reference/mesh/analyze.md +96 -0
- package/dist/docs/reference/{geometry/analyzeTriangleMeshQuality.md → mesh/analyzeQuality.md} +9 -9
- package/dist/docs/reference/mesh/bounds.md +39 -0
- package/dist/docs/reference/mesh/categories/operations.md +147 -0
- package/dist/docs/reference/{geometry/computeTriangleMeshCentroid.md → mesh/centroid.md} +7 -7
- package/dist/docs/reference/mesh/extrude.md +73 -0
- package/dist/docs/reference/{geometry/heightfieldMesh.md → mesh/heightfield.md} +7 -8
- package/dist/docs/reference/mesh/immutable.md +47 -0
- package/dist/docs/reference/{geometry/joinTriangleMeshes.md → mesh/join.md} +7 -6
- package/dist/docs/reference/{geometry/loftMesh.md → mesh/loft.md} +15 -15
- package/dist/docs/reference/mesh/optimizePlanarPatches.md +96 -0
- package/dist/docs/reference/{geometry → mesh}/preflightHeightfield.md +5 -6
- package/dist/docs/reference/mesh/preflightThreadSolid.md +90 -0
- package/dist/docs/reference/{geometry/reverseTriangleMesh.md → mesh/reverse.md} +6 -5
- package/dist/docs/reference/{geometry/revolveMesh.md → mesh/revolve.md} +13 -13
- package/dist/docs/reference/{geometry/computeTriangleMeshSignature.md → mesh/signature.md} +11 -11
- package/dist/docs/reference/mesh/sweep.md +86 -0
- package/dist/docs/reference/mesh/threadRidge.md +72 -0
- package/dist/docs/reference/mesh/threadSolid.md +90 -0
- package/dist/docs/reference/{geometry/transformTriangleMesh.md → mesh/transform.md} +7 -6
- package/dist/docs/reference/{geometry/validateTriangleMesh.md → mesh/validate.md} +17 -11
- package/dist/docs/reference/{geometry/validateSolidMesh.md → mesh/validateSolid.md} +15 -9
- package/dist/docs/reference/mesh.md +21 -0
- package/dist/docs/reference/model/AcmeThreadProfileSpec.md +80 -0
- package/dist/docs/reference/model/Anchor3.md +1 -1
- package/dist/docs/reference/model/AttachOptions.md +1 -1
- package/dist/docs/reference/model/Bevel.md +19 -0
- package/dist/docs/reference/model/{ThreadedNutBevel.md → BevelSize.md} +4 -4
- package/dist/docs/reference/model/Bounds2-type.md +1 -1
- package/dist/docs/reference/model/Bounds2Data.md +1 -1
- package/dist/docs/reference/model/Bounds2Input.md +1 -1
- package/dist/docs/reference/model/Bounds2Options.md +48 -8
- package/dist/docs/reference/model/Bounds3-type.md +1 -1
- package/dist/docs/reference/model/Bounds3Data.md +1 -1
- package/dist/docs/reference/model/Bounds3Input.md +1 -1
- package/dist/docs/reference/model/Bounds3Options.md +48 -8
- 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 +3 -3
- package/dist/docs/reference/model/ButtressPressureFlankSide.md +15 -0
- package/dist/docs/reference/model/ButtressThreadProfileSpec.md +98 -0
- 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 +1 -1
- package/dist/docs/reference/model/CircularPrimitiveOptions.md +1 -3
- package/dist/docs/reference/model/Computed.md +7 -3
- package/dist/docs/reference/model/ComputedValue.md +1 -1
- package/dist/docs/reference/model/Contour.md +1 -1
- 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/CurveSamplingOptions.md +68 -0
- package/dist/docs/reference/model/CustomThreadProfileSpec.md +78 -0
- package/dist/docs/reference/model/CylinderOptions.md +1 -1
- package/dist/docs/reference/model/DiagnosticOptions.md +15 -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 +1 -1
- package/dist/docs/reference/model/EndTreatments.md +1 -1
- package/dist/docs/reference/model/ExtrudeMeshOptions.md +133 -0
- package/dist/docs/reference/model/ExtrudeOptions.md +17 -8
- package/dist/docs/reference/model/ExtrusionSamplingOptions.md +84 -0
- package/dist/docs/reference/model/Frame3.md +1 -1
- package/dist/docs/reference/model/GenerateCallback.md +5 -5
- package/dist/docs/reference/model/GenerateContext.md +15 -63
- package/dist/docs/reference/model/GenerationDiagnostic.md +13 -1
- package/dist/docs/reference/model/GenerationError.md +1 -1
- package/dist/docs/reference/model/GeometryError.md +102 -0
- package/dist/docs/reference/model/GeometryErrorCode.md +15 -0
- package/dist/docs/reference/model/GeometryErrorContext.md +35 -0
- package/dist/docs/reference/model/GeometryResolution.md +1 -1
- 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 +1 -1
- package/dist/docs/reference/model/HeightfieldOptions.md +3 -2
- package/dist/docs/reference/model/HoleCutterOptions.md +1 -1
- package/dist/docs/reference/model/HoleCutterOverrun.md +1 -1
- package/dist/docs/reference/model/HoleCutterRecess.md +1 -1
- package/dist/docs/reference/model/HullOptions.md +1 -1
- package/dist/docs/reference/model/ImmutableBuffer-type.md +27 -3
- package/dist/docs/reference/model/ImmutableTriangleMesh.md +8 -3
- package/dist/docs/reference/model/ImmutableValue.md +20 -0
- package/dist/docs/reference/model/ImplicitOptions.md +1 -1
- package/dist/docs/reference/model/InternalThreadCutterOptions.md +54 -84
- package/dist/docs/reference/model/KnuckleHinge-type.md +1 -1
- package/dist/docs/reference/model/KnuckleHingeBaseSpec.md +1 -1
- package/dist/docs/reference/model/KnuckleHingeHalfOptions.md +1 -1
- package/dist/docs/reference/model/KnuckleHingeOptions.md +1 -1
- package/dist/docs/reference/model/KnuckleHingeSamplingOptions.md +1 -1
- package/dist/docs/reference/model/KnuckleHingeSpec.md +1 -1
- package/dist/docs/reference/model/KnuckleHingeWeb.md +1 -1
- package/dist/docs/reference/model/LinearPatternOptions.md +1 -1
- package/dist/docs/reference/model/LoftCorrespondence.md +1 -1
- package/dist/docs/reference/model/LoftOptions.md +3 -3
- package/dist/docs/reference/model/LoftPlacement.md +1 -1
- package/dist/docs/reference/model/LoftStation.md +1 -1
- package/dist/docs/reference/model/MatchProfilesOptions.md +1 -1
- package/dist/docs/reference/model/ModelProgram.md +2 -2
- package/dist/docs/reference/model/ModelingLimits.md +1 -1
- package/dist/docs/reference/model/NumericArray.md +1 -1
- package/dist/docs/reference/model/{GeneratedPart.md → PartDeclaration.md} +8 -23
- package/dist/docs/reference/model/PartGeometry.md +2 -2
- package/dist/docs/reference/model/PartOptions.md +8 -19
- package/dist/docs/reference/model/Path2-type.md +1 -1
- package/dist/docs/reference/model/Path2Data.md +1 -1
- package/dist/docs/reference/model/Path2Input.md +1 -1
- package/dist/docs/reference/model/Path3-type.md +1 -1
- package/dist/docs/reference/model/Path3Data.md +1 -1
- package/dist/docs/reference/model/Path3Input.md +1 -1
- package/dist/docs/reference/model/PathLocation.md +1 -1
- package/dist/docs/reference/model/PathNormalGuide.md +1 -1
- package/dist/docs/reference/model/PathOptions.md +1 -1
- package/dist/docs/reference/model/PathPatternOptions.md +1 -1
- package/dist/docs/reference/model/PathResamplingOptions.md +7 -6
- package/dist/docs/reference/model/PatternSource.md +1 -1
- package/dist/docs/reference/model/Pivot2Options.md +1 -1
- package/dist/docs/reference/model/Pivot3Options.md +1 -1
- package/dist/docs/reference/model/PlaneOptions.md +1 -1
- package/dist/docs/reference/model/PolygonData.md +1 -1
- package/dist/docs/reference/model/PolygonOptions.md +1 -1
- package/dist/docs/reference/model/PrimitiveAttachment.md +1 -3
- package/dist/docs/reference/model/PrimitiveAttachmentOptions.md +1 -1
- package/dist/docs/reference/model/PrintableThreadFit.md +1 -1
- package/dist/docs/reference/model/PrintableThreadFitPolicy.md +1 -1
- package/dist/docs/reference/model/Profile.md +1 -1
- package/dist/docs/reference/model/ProfileComponent2.md +1 -1
- package/dist/docs/reference/model/ProfileContour2.md +1 -1
- package/dist/docs/reference/model/ProfileSpan2.md +1 -1
- package/dist/docs/reference/model/ProfiledEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/RadialPatternOptions.md +1 -1
- 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 +3 -3
- package/dist/docs/reference/model/RegionData.md +1 -1
- package/dist/docs/reference/model/RegularPolygonOptions.md +1 -1
- package/dist/docs/reference/model/RevolveOptions.md +2 -2
- package/dist/docs/reference/model/RoundedEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/Section.md +131 -6
- package/dist/docs/reference/model/SectionHullOptions.md +1 -1
- package/dist/docs/reference/model/SectionInspection.md +5 -17
- 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 +245 -8
- package/dist/docs/reference/model/SolidInspection.md +5 -17
- package/dist/docs/reference/model/SolidSegmentHit.md +5 -1
- package/dist/docs/reference/model/SphereOptions.md +1 -1
- package/dist/docs/reference/model/SquareThreadProfileSpec.md +80 -0
- package/dist/docs/reference/model/StarContourOptions.md +81 -0
- package/dist/docs/reference/model/StarOptions.md +38 -16
- package/dist/docs/reference/model/StrokeCap.md +1 -1
- package/dist/docs/reference/model/StrokeJoin.md +1 -1
- package/dist/docs/reference/model/StrokeOptions.md +1 -1
- 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 +1 -1
- package/dist/docs/reference/model/SweepOrientation.md +1 -1
- package/dist/docs/reference/model/TextSectionOptions.md +1 -1
- package/dist/docs/reference/model/ThreadBevelOptions.md +35 -0
- package/dist/docs/reference/model/ThreadEndStyle.md +1 -1
- package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +1 -1
- package/dist/docs/reference/model/ThreadHandedness.md +1 -1
- package/dist/docs/reference/model/ThreadLeadInEnvelope.md +1 -1
- package/dist/docs/reference/model/ThreadLeadInShape.md +1 -1
- package/dist/docs/reference/model/ThreadProfile.md +2 -2
- package/dist/docs/reference/model/ThreadProfileBaseSpec.md +54 -0
- package/dist/docs/reference/model/ThreadProfileSpec.md +24 -0
- package/dist/docs/reference/model/ThreadRidgeOptions.md +126 -4
- package/dist/docs/reference/model/{HelicalThreadSolidMeshPreflight.md → ThreadSolidPreflight.md} +2 -2
- package/dist/docs/reference/model/ThreadedNutOptions.md +75 -86
- package/dist/docs/reference/model/ThreadedNutPreflight.md +18 -6
- package/dist/docs/reference/model/ThreadedNutShape.md +1 -1
- package/dist/docs/reference/model/ThreadedRodOptions.md +54 -84
- package/dist/docs/reference/model/TorusOptions.md +1 -1
- package/dist/docs/reference/model/Transform2-type.md +1 -1
- package/dist/docs/reference/model/Transform2Data.md +1 -1
- package/dist/docs/reference/model/Transform2Input.md +1 -1
- package/dist/docs/reference/model/Transform3-type.md +1 -1
- package/dist/docs/reference/model/Transform3Data.md +1 -1
- package/dist/docs/reference/model/Transform3Input.md +1 -1
- package/dist/docs/reference/model/TrapezoidalThreadProfileSpec.md +97 -0
- package/dist/docs/reference/model/TriangleMesh.md +3 -11
- package/dist/docs/reference/model/TriangleMeshAnalysis.md +10 -4
- package/dist/docs/reference/model/TriangleMeshMeasurements.md +1 -1
- package/dist/docs/reference/model/TriangleMeshTopologyAnalysis.md +131 -0
- package/dist/docs/reference/model/TriangularThreadProfileSpec.md +96 -0
- package/dist/docs/reference/model/TubeOptions.md +10 -86
- package/dist/docs/reference/model/Vector2-type.md +1 -1
- package/dist/docs/reference/model/Vector2Data.md +1 -1
- package/dist/docs/reference/model/Vector2Input.md +1 -1
- package/dist/docs/reference/model/Vector3-type.md +1 -1
- package/dist/docs/reference/model/Vector3Data.md +1 -1
- package/dist/docs/reference/model/Vector3Input.md +1 -1
- package/dist/docs/reference/model/VectorTextLayout.md +1 -1
- package/dist/docs/reference/model/VectorTextMetrics.md +1 -1
- package/dist/docs/reference/model/bounds2.md +4 -4
- package/dist/docs/reference/model/bounds3.md +4 -4
- package/dist/docs/reference/model/box.md +2 -2
- package/dist/docs/reference/model/categories/boolean-operations.md +6 -10
- package/dist/docs/reference/model/categories/bounded-surfaces.md +1 -1
- package/dist/docs/reference/model/categories/bounds.md +2 -2
- package/dist/docs/reference/model/categories/contracts.md +3 -5
- package/dist/docs/reference/model/categories/core-values-errors.md +17 -3
- package/dist/docs/reference/model/categories/explicit-profiles.md +1 -1
- package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +10 -8
- package/dist/docs/reference/model/categories/generation.md +8 -8
- package/dist/docs/reference/model/categories/hinges.md +1 -1
- package/dist/docs/reference/model/categories/mesh-inspection.md +15 -6
- package/dist/docs/reference/model/categories/paths.md +4 -3
- package/dist/docs/reference/model/categories/primitives.md +5 -5
- package/dist/docs/reference/model/categories/resolution.md +1 -1
- package/dist/docs/reference/model/categories/sections.md +4 -3
- package/dist/docs/reference/model/categories/threads.md +16 -6
- package/dist/docs/reference/model/categories/transforms-placement.md +2 -3
- package/dist/docs/reference/model/circle.md +1 -1
- package/dist/docs/reference/model/cylinder.md +1 -1
- package/dist/docs/reference/model/ellipse.md +1 -1
- package/dist/docs/reference/model/extrude.md +5 -4
- package/dist/docs/reference/model/generate.md +4 -4
- package/dist/docs/reference/model/gridPattern.md +1 -1
- package/dist/docs/reference/model/heightfield.md +1 -1
- package/dist/docs/reference/model/holeCutter.md +12 -2
- package/dist/docs/reference/model/hull.md +1 -1
- package/dist/docs/reference/model/immutableBuffer.md +5 -4
- package/dist/docs/reference/model/implicit.md +1 -1
- package/dist/docs/reference/model/internalThreadCutter.md +12 -20
- package/dist/docs/reference/model/intersect.md +3 -3
- package/dist/docs/reference/model/isGeometryError.md +34 -0
- package/dist/docs/reference/model/knuckleHinge.md +2 -2
- package/dist/docs/reference/model/linearPattern.md +1 -1
- package/dist/docs/reference/model/loft.md +6 -5
- package/dist/docs/reference/model/matchProfiles.md +1 -1
- package/dist/docs/reference/model/minkowskiSum.md +1 -1
- package/dist/docs/reference/model/path2.md +1 -1
- package/dist/docs/reference/model/path3.md +1 -1
- package/dist/docs/reference/model/pathPattern.md +1 -1
- package/dist/docs/reference/model/polygon.md +1 -1
- package/dist/docs/reference/model/preflightInternalThreadCutter.md +15 -23
- package/dist/docs/reference/model/preflightThreadedNut.md +22 -25
- package/dist/docs/reference/model/preflightThreadedRod.md +15 -23
- package/dist/docs/reference/model/radialPattern.md +1 -1
- package/dist/docs/reference/model/rectangle.md +2 -2
- package/dist/docs/reference/model/regularPolygon.md +1 -1
- package/dist/docs/reference/model/revolve.md +6 -5
- package/dist/docs/reference/model/solidFromMesh.md +7 -6
- package/dist/docs/reference/model/sphere.md +1 -1
- package/dist/docs/reference/model/star.md +7 -7
- package/dist/docs/reference/model/stroke.md +1 -1
- 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 +5 -4
- package/dist/docs/reference/model/textSection.md +1 -1
- package/dist/docs/reference/model/threadRidge.md +14 -14
- package/dist/docs/reference/model/threadedNut.md +22 -25
- package/dist/docs/reference/model/threadedRod.md +12 -20
- package/dist/docs/reference/model/torus.md +1 -1
- package/dist/docs/reference/model/transform2.md +1 -1
- package/dist/docs/reference/model/transform3.md +1 -1
- package/dist/docs/reference/model/tube.md +1 -36
- package/dist/docs/reference/model/union.md +3 -3
- package/dist/docs/reference/model/vector2.md +1 -1
- package/dist/docs/reference/model/vector3.md +1 -1
- package/dist/docs/reference/model.md +15 -19
- package/dist/docs/reference/text/Bounds2Data.md +1 -1
- package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +2 -2
- package/dist/docs/reference/text/Vector2Data.md +1 -1
- package/dist/docs/reference/text/VectorFont.md +7 -7
- package/dist/docs/reference/text/VectorFontOptions.md +1 -1
- package/dist/docs/reference/text/VectorTextArcBaseline.md +1 -1
- package/dist/docs/reference/text/VectorTextLayout.md +1 -1
- package/dist/docs/reference/text/VectorTextLayoutOptions.md +3 -3
- package/dist/docs/reference/text/VectorTextMetrics.md +1 -1
- package/dist/docs/reference/text/VectorTextOptions.md +1 -1
- package/dist/docs/reference/text/categories/font-preparation.md +3 -3
- package/dist/docs/reference/text/prepareVectorFont.md +1 -1
- package/dist/docs/reference/text.md +4 -4
- package/dist/engine/execution.js +10 -6
- package/dist/engine/export-3mf.js +22 -115
- package/dist/engine/finalization.js +10 -10
- package/dist/engine/index.js +25 -31
- package/dist/engine/model-parts.js +8 -0
- package/dist/engine/model-summary.js +5 -5
- package/dist/engine/native/index.js +1 -1
- package/dist/engine/native/material-components.js +3 -3
- package/dist/engine/native/operations.js +0 -7
- package/dist/engine/native/scoped-primitives.js +5 -4
- package/dist/engine/native/threads.js +14 -14
- package/dist/engine/{construction-operations.js → operations/construction.js} +25 -23
- package/dist/engine/{modeling-context.js → operations/context.js} +10 -10
- package/dist/engine/{operation-environment.js → operations/environment.js} +2 -2
- package/dist/engine/{extrusion-finishing.js → operations/extrusion-finishing.js} +7 -7
- package/dist/engine/{hole-cutter-operation.js → operations/hole-cutter.js} +3 -3
- package/dist/engine/{inspection-operations.js → operations/inspection.js} +6 -6
- package/dist/engine/{knuckle-hinge-operation.js → operations/knuckle-hinge.js} +4 -4
- package/dist/engine/{loft-operations.js → operations/loft.js} +13 -12
- package/dist/engine/{mechanical-operations.js → operations/mechanical.js} +2 -2
- package/dist/engine/{pattern-operations.js → operations/patterns.js} +4 -4
- package/dist/engine/{primitive-anchors.js → operations/primitives/anchors.js} +9 -4
- package/dist/engine/{primitive-operations.js → operations/primitives/construction.js} +18 -19
- package/dist/engine/{primitive-correspondence.js → operations/primitives/correspondence.js} +4 -4
- package/dist/engine/{profile-mesh.js → operations/primitives/profile-mesh.js} +12 -12
- package/dist/engine/{primitive-profiles.js → operations/primitives/profiles.js} +7 -7
- package/dist/engine/{section-operations.js → operations/sections.js} +8 -8
- package/dist/engine/{transform-operations.js → operations/transforms.js} +8 -8
- package/dist/engine/placement.js +3 -4
- package/dist/engine/recipe-realization.js +1 -1
- package/dist/engine/serialize-3mf.js +116 -0
- package/dist/engine/{deferred-context.js → session/deferred-context.js} +4 -4
- package/dist/engine/{model-dependencies.js → session/dependencies.js} +1 -1
- package/dist/engine/{session-graph.js → session/graph.js} +13 -11
- package/dist/engine/{session-native.js → session/native-cache.js} +1 -1
- package/dist/engine/{session.js → session/session.js} +16 -10
- package/dist/engine/{session-snapshot.js → session/snapshot-cache.js} +29 -59
- package/dist/geometry/anchors.js +4 -11
- package/dist/geometry/bounds-value.js +20 -10
- package/dist/geometry/heightfield.js +10 -12
- package/dist/{model → geometry}/immutable-buffer.js +28 -7
- package/dist/geometry/index.js +16 -22
- package/dist/geometry/loft/loft.js +11 -6
- package/dist/geometry/mechanical/index.js +5 -5
- package/dist/geometry/mechanical/threads/bevel.js +24 -0
- package/dist/geometry/mechanical/{threads.js → threads/fit.js} +4 -4
- package/dist/geometry/mechanical/{thread-helices.js → threads/helices.js} +3 -3
- package/dist/geometry/mechanical/{thread-mesh-plan.js → threads/mesh-plan.js} +38 -53
- package/dist/geometry/mechanical/{thread-mesh.js → threads/mesh.js} +9 -9
- package/dist/geometry/mechanical/{thread-profiles.js → threads/profiles.js} +3 -3
- package/dist/geometry/mechanical/{thread-solids.js → threads/solids.js} +58 -89
- package/dist/geometry/mechanical/{thread-surface.js → threads/surface.js} +7 -8
- package/dist/geometry/mesh/mesh-centroid.js +3 -2
- package/dist/geometry/mesh/mesh-planar.js +27 -8
- package/dist/geometry/mesh/mesh-quality.js +2 -1
- package/dist/geometry/mesh/mesh-signature.js +7 -6
- package/dist/geometry/mesh/mesh-solid.js +2 -3
- package/dist/geometry/mesh/mesh-types.js +1 -0
- package/dist/geometry/mesh/mesh.js +13 -22
- package/dist/geometry/mesh-api.js +14 -0
- package/dist/geometry/primitive-resolvers.js +42 -14
- package/dist/geometry/profiles/primitives/circle.js +19 -0
- package/dist/geometry/profiles/{shapes.js → primitives/ellipse.js} +6 -10
- package/dist/geometry/profiles/{rectangle.js → primitives/rectangle.js} +14 -12
- package/dist/geometry/profiles/primitives/regular-polygon.js +33 -0
- package/dist/geometry/profiles/primitives/star.js +28 -0
- package/dist/geometry/revolve/revolve-mesh.js +1 -1
- package/dist/geometry/{svg-import.js → svg/import.js} +10 -10
- package/dist/geometry/sweeps/sweep-mesh.js +1 -1
- package/dist/geometry/transform3.js +29 -0
- package/dist/index.js +2 -1
- package/dist/model/diagnostic-path.js +26 -0
- package/dist/model/execution-binding.js +3 -3
- package/dist/model/generation.js +8 -2
- package/dist/model/geometry-recipes.js +1 -1
- package/dist/model/immutable-generation-data.js +33 -2
- package/dist/model/operations.js +14 -144
- package/dist/model/recipe-declaration.js +6 -2
- package/dist/model/shape-handles.js +30 -7
- package/dist/text/index.js +1 -1
- package/package.json +21 -11
- package/dist/docs/reference/engine/ModelSnapshot.md +0 -184
- package/dist/docs/reference/engine/SnapshotPart.md +0 -133
- package/dist/docs/reference/engine/validateModel.md +0 -48
- package/dist/docs/reference/geometry/ThreadedNutBevel.md +0 -14
- package/dist/docs/reference/geometry/analyzeTriangleMesh.md +0 -61
- package/dist/docs/reference/geometry/extrudeMesh.md +0 -77
- package/dist/docs/reference/geometry/helicalThreadRidgeMesh.md +0 -72
- package/dist/docs/reference/geometry/helicalThreadSolidMesh.md +0 -106
- package/dist/docs/reference/geometry/meshBounds.md +0 -39
- package/dist/docs/reference/geometry/optimizePlanarPatches.md +0 -95
- package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +0 -105
- package/dist/docs/reference/geometry/sweepMesh.md +0 -86
- package/dist/docs/reference/model/FinalizedModel.md +0 -131
- package/dist/docs/reference/model/FinalizedPart.md +0 -87
- package/dist/docs/reference/model/anchor.md +0 -47
- package/dist/docs/reference/model/castSegment.md +0 -40
- package/dist/docs/reference/model/categories/inspection.md +0 -29
- package/dist/docs/reference/model/components.md +0 -71
- package/dist/docs/reference/model/compose.md +0 -31
- package/dist/docs/reference/model/distance.md +0 -45
- package/dist/docs/reference/model/immutableMesh.md +0 -44
- package/dist/docs/reference/model/inspectSection.md +0 -38
- package/dist/docs/reference/model/inspectSolid.md +0 -38
- package/dist/docs/reference/model/isEmpty.md +0 -39
- package/dist/docs/reference/model/split.md +0 -54
- package/dist/docs/reference/model/splitByPlane.md +0 -66
- package/dist/geometry/profiles/profiles.js +0 -71
- /package/dist/engine/{primitive-profile-types.js → operations/primitives/profile-types.js} +0 -0
- /package/dist/geometry/profiles/{matched.js → match-profiles.js} +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
#
|
|
1
|
+
# loft
|
|
2
2
|
|
|
3
3
|
Lofts simple point loops at z heights or explicit right-handed frames, in input order.
|
|
4
4
|
|
|
5
|
-
**
|
|
5
|
+
**loft**(`stations`: readonly [`LoftMeshStation`](../geometry/LoftMeshStation.md)[], `options?`: [`LoftOptions`](../geometry/LoftOptions.md)): [`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -11,10 +11,10 @@ Lofts simple point loops at z heights or explicit right-handed frames, in input
|
|
|
11
11
|
```ts
|
|
12
12
|
const bottom = rectangleContour({ size: [20, 12] });
|
|
13
13
|
const top = rectangleContour({ size: [30, 20], treatment: { kind: "round", radius: 3 } });
|
|
14
|
-
|
|
14
|
+
mesh.loft([{ profile: bottom, z: 0 }, { profile: top, z: 30 }], { correspondence: "reindex" });
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
Correspondence defaults to direct. CCW-normalized loops retain their
|
|
18
18
|
seam and original vertices; unequal counts gain subdivisions or repeated fan slots.
|
|
19
19
|
Both ends use ear-clipped caps, supporting concave profiles without center fans.
|
|
20
20
|
Intermediate slices interpolate placed world vertices, never frame axes.
|
|
@@ -25,35 +25,35 @@ Path2 profiles must be closed; raw point collections are interpreted as closed.
|
|
|
25
25
|
|
|
26
26
|
<a id="stations"></a>
|
|
27
27
|
|
|
28
|
-
**`stations`** · readonly [`LoftMeshStation`](LoftMeshStation.md)[] · Required
|
|
28
|
+
**`stations`** · readonly [`LoftMeshStation`](../geometry/LoftMeshStation.md)[] · Required
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<a id="options"></a>
|
|
33
33
|
|
|
34
|
-
**`options`** · [`LoftOptions`](LoftOptions.md) ·
|
|
34
|
+
**`options`** · [`LoftOptions`](../geometry/LoftOptions.md) · Optional
|
|
35
35
|
|
|
36
|
-
- [`correspondence`](LoftOptions.md#correspondence) · [`LoftCorrespondence`](LoftCorrespondence.md) \| readonly [`LoftCorrespondence`](LoftCorrespondence.md)[] · Optional
|
|
36
|
+
- [`correspondence`](../geometry/LoftOptions.md#correspondence) · [`LoftCorrespondence`](../geometry/LoftCorrespondence.md) \| readonly [`LoftCorrespondence`](../geometry/LoftCorrespondence.md)[] · Optional
|
|
37
37
|
|
|
38
|
-
One method or one per consecutive station gap. Omitted preserves known landmarks, including circle/ellipse-to-rectangle corners,
|
|
38
|
+
One method or one per consecutive station gap. Omitted preserves known primitive landmarks, including circle/ellipse-to-rectangle corners, and otherwise uses direct correspondence with the supplied seams.
|
|
39
39
|
|
|
40
|
-
- [`distribution`](LoftOptions.md#distribution) · `"perimeter"` \| `"segments"` · Optional
|
|
40
|
+
- [`distribution`](../geometry/LoftOptions.md#distribution) · `"perimeter"` \| `"segments"` · Optional
|
|
41
41
|
|
|
42
42
|
Extra points follow edge length or distribute equally across existing segments. Defaults to perimeter for direct/reindex, or segments when any distance method is selected; distance methods require segments.
|
|
43
43
|
|
|
44
|
-
- [`refine`](LoftOptions.md#refine) · `number` \| readonly `number`[] · Optional
|
|
44
|
+
- [`refine`](../geometry/LoftOptions.md#refine) · `number` \| readonly `number`[] · Optional
|
|
45
45
|
|
|
46
46
|
Positive integer point-density multiplier, uniformly or per input profile. Original vertices are retained. Defaults to one.
|
|
47
47
|
|
|
48
|
-
- [`slices`](LoftOptions.md#slices) · `number` \| readonly `number`[] · Optional
|
|
48
|
+
- [`slices`](../geometry/LoftOptions.md#slices) · `number` \| readonly `number`[] · Optional
|
|
49
49
|
|
|
50
50
|
Nonnegative count of world-linearly interpolated profiles, uniformly or per gap. Defaults to zero.
|
|
51
51
|
|
|
52
|
-
- [`resolution`](LoftOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
|
|
52
|
+
- [`resolution`](../geometry/LoftOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
|
|
53
53
|
|
|
54
54
|
Physical curve policy for retained primitives, and maximum edge length for point data. Exact primitive curve counts take precedence.
|
|
55
55
|
|
|
56
|
-
- [`limits`](LoftOptions.md#limits) · `Partial`\<[`ModelingLimits`](ModelingLimits.md)\> · Optional
|
|
56
|
+
- [`limits`](../geometry/LoftOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
|
|
57
57
|
|
|
58
58
|
Explicit output and sampling budgets; native operations may only lower host ceilings.
|
|
59
59
|
|
|
@@ -61,7 +61,7 @@ Path2 profiles must be closed; raw point collections are interpreted as closed.
|
|
|
61
61
|
|
|
62
62
|
## Returns
|
|
63
63
|
|
|
64
|
-
[`TriangleMesh`](TriangleMesh.md)
|
|
64
|
+
[`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
65
65
|
|
|
66
66
|
|
|
67
67
|
## Related APIs
|
|
@@ -74,4 +74,4 @@ Path2 profiles must be closed; raw point collections are interpreted as closed.
|
|
|
74
74
|
|
|
75
75
|
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
76
76
|
|
|
77
|
-
Package: `@metamesh/modeling@0.
|
|
77
|
+
Package: `@metamesh/modeling@0.18.0`.
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# optimizePlanarPatches
|
|
2
|
+
|
|
3
|
+
Improves pathological planar triangulation with bounded legal diagonal flips.
|
|
4
|
+
|
|
5
|
+
**optimizePlanarPatches**(`mesh`: [`TriangleMeshInput`](../geometry/TriangleMeshInput.md), `options?`: [`PlanarMeshOptimizationOptions`](../geometry/PlanarMeshOptimizationOptions.md)): [`PlanarMeshOptimizationResult`](../geometry/PlanarMeshOptimizationResult.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
The operation changes indices only: it never moves, adds, welds, or removes vertices; never
|
|
10
|
+
crosses a coplanar-patch boundary; and never changes the face count. Each accepted flip improves
|
|
11
|
+
a deterministic ordering of triangle angles, aspect ratio, diagonal locality, and local
|
|
12
|
+
incidence/valence concentration. Unsupported input or a failed final integrity check preserves the
|
|
13
|
+
original raw mesh object. Immutable inputs produce owned raw output buffers, including unchanged
|
|
14
|
+
results. Malformed buffers and the configured analysis complexity limit throw.
|
|
15
|
+
|
|
16
|
+
## Parameters
|
|
17
|
+
|
|
18
|
+
<a id="mesh"></a>
|
|
19
|
+
|
|
20
|
+
**`mesh`** · [`TriangleMeshInput`](../geometry/TriangleMeshInput.md) · Required
|
|
21
|
+
|
|
22
|
+
Closed, consistently wound indexed triangle mesh in arbitrary consistent units.
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
<a id="options"></a>
|
|
27
|
+
|
|
28
|
+
**`options`** · [`PlanarMeshOptimizationOptions`](../geometry/PlanarMeshOptimizationOptions.md) · Optional
|
|
29
|
+
|
|
30
|
+
Patch eligibility, numeric tolerance, and deterministic work bounds.
|
|
31
|
+
|
|
32
|
+
- [`maxFlipAttempts`](../geometry/PlanarMeshOptimizationOptions.md#maxflipattempts) · `number` · Optional
|
|
33
|
+
|
|
34
|
+
Maximum attempted edge evaluations. By default this is twenty times the initial candidate
|
|
35
|
+
edge count, capped at `1000000`.
|
|
36
|
+
|
|
37
|
+
- [`maxEdgeRevisits`](../geometry/PlanarMeshOptimizationOptions.md#maxedgerevisits) · `number` · Optional
|
|
38
|
+
|
|
39
|
+
Maximum times one edge may be reconsidered after neighbouring flips. Defaults to `12`.
|
|
40
|
+
|
|
41
|
+
- [`maxPatchTriangles`](../geometry/PlanarMeshOptimizationOptions.md#maxpatchtriangles) · `number` · Optional
|
|
42
|
+
|
|
43
|
+
Maximum triangles allowed in one selected patch. Defaults to `50000`.
|
|
44
|
+
|
|
45
|
+
- [`maxProcessedTriangles`](../geometry/PlanarMeshOptimizationOptions.md#maxprocessedtriangles) · `number` · Optional
|
|
46
|
+
|
|
47
|
+
Maximum cumulative triangles across selected patches. Defaults to `200000`.
|
|
48
|
+
|
|
49
|
+
- [`minPatchTriangles`](../geometry/PlanarMeshOptimizationOptions.md#minpatchtriangles) · `number` · Optional
|
|
50
|
+
|
|
51
|
+
Minimum triangles required before a planar patch is eligible. Defaults to `8`.
|
|
52
|
+
|
|
53
|
+
- [`triggerMaxAspectRatio`](../geometry/PlanarMeshOptimizationOptions.md#triggermaxaspectratio) · `number` · Optional
|
|
54
|
+
|
|
55
|
+
Select patches whose worst normalized aspect ratio exceeds this value. Defaults to `12`.
|
|
56
|
+
|
|
57
|
+
- [`triggerMaxFanRatio`](../geometry/PlanarMeshOptimizationOptions.md#triggermaxfanratio) · `number` · Optional
|
|
58
|
+
|
|
59
|
+
Select patches whose largest per-vertex triangle share exceeds this ratio. Defaults to `0.2`.
|
|
60
|
+
|
|
61
|
+
- [`triggerMaxVertexTriangleIncidence`](../geometry/PlanarMeshOptimizationOptions.md#triggermaxvertextriangleincidence) · `number` · Optional
|
|
62
|
+
|
|
63
|
+
Select patches whose largest vertex triangle incidence exceeds this value. Defaults to `16`.
|
|
64
|
+
|
|
65
|
+
- [`triggerMinAngleDegrees`](../geometry/PlanarMeshOptimizationOptions.md#triggerminangledegrees) · `number` · Optional
|
|
66
|
+
|
|
67
|
+
Select patches whose smallest interior angle is below this many degrees. Defaults to `8`.
|
|
68
|
+
|
|
69
|
+
- [`maxTriangles`](../geometry/PlanarMeshOptimizationOptions.md#maxtriangles) · `number` · Optional
|
|
70
|
+
|
|
71
|
+
Maximum number of triangles inspected. Defaults to `200000`.
|
|
72
|
+
|
|
73
|
+
- [`tolerance`](../geometry/PlanarMeshOptimizationOptions.md#tolerance) · [`GeometryToleranceOptions`](../geometry/GeometryToleranceOptions.md) · Optional
|
|
74
|
+
|
|
75
|
+
Numeric comparison overrides; model coordinates are interpreted in their existing units.
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
## Returns
|
|
80
|
+
|
|
81
|
+
[`PlanarMeshOptimizationResult`](../geometry/PlanarMeshOptimizationResult.md)
|
|
82
|
+
|
|
83
|
+
Optimized connectivity and before/after diagnostics, or an unchanged safe fallback.
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
## Related APIs
|
|
87
|
+
|
|
88
|
+
- [PlanarMeshOptimizationOptions](PlanarMeshOptimizationOptions.md)
|
|
89
|
+
- [PlanarMeshOptimizationResult](PlanarMeshOptimizationResult.md)
|
|
90
|
+
- [TriangleMeshInput](TriangleMeshInput.md)
|
|
91
|
+
|
|
92
|
+
## Guides
|
|
93
|
+
|
|
94
|
+
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
95
|
+
|
|
96
|
+
Package: `@metamesh/modeling@0.18.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Checks grid options, Float32 axis precision, and output limits; returns exact mesh buffer counts.
|
|
4
4
|
|
|
5
|
-
**preflightHeightfield**(`options`: [`HeightfieldOptions`](HeightfieldOptions.md), `limits?`: `Partial`\<`Pick`\<[`ModelingLimits`](ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\>): [`HeightfieldPreflight`](HeightfieldPreflight.md)
|
|
5
|
+
**preflightHeightfield**(`options`: [`HeightfieldOptions`](../geometry/HeightfieldOptions.md), `limits?`: `Partial`\<`Pick`\<[`ModelingLimits`](../geometry/ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\>): [`HeightfieldPreflight`](../geometry/HeightfieldPreflight.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -14,19 +14,19 @@ construction. `byteCount` covers position and index buffers, not total working m
|
|
|
14
14
|
|
|
15
15
|
<a id="options"></a>
|
|
16
16
|
|
|
17
|
-
**`options`** · [`HeightfieldOptions`](HeightfieldOptions.md) · Required
|
|
17
|
+
**`options`** · [`HeightfieldOptions`](../geometry/HeightfieldOptions.md) · Required
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
<a id="limits"></a>
|
|
22
22
|
|
|
23
|
-
**`limits`** · `Partial`\<`Pick`\<[`ModelingLimits`](ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\> · Optional
|
|
23
|
+
**`limits`** · `Partial`\<`Pick`\<[`ModelingLimits`](../geometry/ModelingLimits.md), `"maxVertices"` \| `"maxTriangles"` \| `"maxBytes"`\>\> · Optional
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
## Returns
|
|
28
28
|
|
|
29
|
-
[`HeightfieldPreflight`](HeightfieldPreflight.md)
|
|
29
|
+
[`HeightfieldPreflight`](../geometry/HeightfieldPreflight.md)
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
## Related APIs
|
|
@@ -34,10 +34,9 @@ construction. `byteCount` covers position and index buffers, not total working m
|
|
|
34
34
|
- [HeightfieldOptions](HeightfieldOptions.md)
|
|
35
35
|
- [HeightfieldPreflight](HeightfieldPreflight.md)
|
|
36
36
|
- [ModelingLimits](ModelingLimits.md)
|
|
37
|
-
- [heightfieldMesh](heightfieldMesh.md)
|
|
38
37
|
|
|
39
38
|
## Guides
|
|
40
39
|
|
|
41
40
|
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
42
41
|
|
|
43
|
-
Package: `@metamesh/modeling@0.
|
|
42
|
+
Package: `@metamesh/modeling@0.18.0`.
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# preflightThreadSolid
|
|
2
|
+
|
|
3
|
+
Checks thread dimensions, profile, end treatments, sampling, and conservative estimates against output limits.
|
|
4
|
+
|
|
5
|
+
**preflightThreadSolid**(`options`: [`ThreadSolidOptions`](../geometry/ThreadSolidOptions.md)): [`ThreadSolidPreflight`](../geometry/ThreadSolidPreflight.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
This pure operation needs no engine and constructs planning data without vertex or index buffers.
|
|
10
|
+
`circularSegments` is the selected count; row and triangle counts are conservative estimates.
|
|
11
|
+
Successful preflight leaves generated coordinate and topology checks to mesh construction.
|
|
12
|
+
|
|
13
|
+
See `mesh.threadSolid` for standalone mesh construction.
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
<a id="options"></a>
|
|
18
|
+
|
|
19
|
+
**`options`** · [`ThreadSolidOptions`](../geometry/ThreadSolidOptions.md) · Required
|
|
20
|
+
|
|
21
|
+
- [`length`](../geometry/ThreadSolidOptions.md#length) · `number` · Required
|
|
22
|
+
|
|
23
|
+
Total threaded axial length in millimetres.
|
|
24
|
+
|
|
25
|
+
- [`majorDiameter`](../geometry/ThreadSolidOptions.md#majordiameter) · `number` · Required
|
|
26
|
+
|
|
27
|
+
Nominal major diameter before any caller-owned fit compensation.
|
|
28
|
+
|
|
29
|
+
- [`profile`](../geometry/ThreadSolidOptions.md#profile) · [`ThreadProfile`](../geometry/ThreadProfile-type.md) · Required
|
|
30
|
+
|
|
31
|
+
Validated periodic profile repeated around the shaft.
|
|
32
|
+
|
|
33
|
+
- [`ends`](../geometry/ThreadSolidOptions.md#ends) · [`ThreadEndTreatmentOptions`](../geometry/ThreadEndTreatmentOptions.md) · Optional
|
|
34
|
+
|
|
35
|
+
Optional bottom/top ridge-end treatments. Standalone ridges honor the requested boundaries;
|
|
36
|
+
BOSL2-style non-cut lead-in scaling is available on complete thread solids.
|
|
37
|
+
|
|
38
|
+
- [`handedness`](../geometry/ThreadSolidOptions.md#handedness) · [`ThreadHandedness`](../geometry/ThreadHandedness.md) · Optional
|
|
39
|
+
|
|
40
|
+
Helix direction. Default: `right`.
|
|
41
|
+
|
|
42
|
+
- [`limits`](../geometry/ThreadSolidOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
|
|
43
|
+
|
|
44
|
+
Explicit output and circular allocation ceilings.
|
|
45
|
+
|
|
46
|
+
- [`phase`](../geometry/ThreadSolidOptions.md#phase) · `number` · Optional
|
|
47
|
+
|
|
48
|
+
Angular offset of the first start in degrees. Default: `0`.
|
|
49
|
+
|
|
50
|
+
- [`resolution`](../geometry/ThreadSolidOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
|
|
51
|
+
|
|
52
|
+
Optional circular-resolution policy.
|
|
53
|
+
|
|
54
|
+
- [`starts`](../geometry/ThreadSolidOptions.md#starts) · `number` · Optional
|
|
55
|
+
|
|
56
|
+
Number of evenly phased starts. Default: `1`.
|
|
57
|
+
|
|
58
|
+
- [`tolerance`](../geometry/ThreadSolidOptions.md#tolerance) · [`GeometryToleranceOptions`](../geometry/GeometryToleranceOptions.md) · Optional
|
|
59
|
+
|
|
60
|
+
Optional numerical tolerance overrides.
|
|
61
|
+
|
|
62
|
+
- [`bevel`](../geometry/ThreadSolidOptions.md#bevel) · [`Bevel`](../geometry/Bevel.md) · Optional
|
|
63
|
+
|
|
64
|
+
Independent 45-degree bottom/top bevels; omitted disables both. Auto uses profile depth.
|
|
65
|
+
|
|
66
|
+
- [`bevelOffset`](../geometry/ThreadSolidOptions.md#beveloffset) · `number` · Optional
|
|
67
|
+
|
|
68
|
+
Distance of each bevel target face inward from the corresponding mesh end.
|
|
69
|
+
|
|
70
|
+
- [`bevelMode`](../geometry/ThreadSolidOptions.md#bevelmode) · `"inset"` \| `"outset"` · Optional
|
|
71
|
+
|
|
72
|
+
`inset` trims an external rod; `outset` expands an internal cutter.
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
## Returns
|
|
77
|
+
|
|
78
|
+
[`ThreadSolidPreflight`](../geometry/ThreadSolidPreflight.md)
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
## Related APIs
|
|
82
|
+
|
|
83
|
+
- [ThreadSolidOptions](ThreadSolidOptions.md)
|
|
84
|
+
- [ThreadSolidPreflight](ThreadSolidPreflight.md)
|
|
85
|
+
|
|
86
|
+
## Guides
|
|
87
|
+
|
|
88
|
+
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
89
|
+
|
|
90
|
+
Package: `@metamesh/modeling@0.18.0`.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
#
|
|
1
|
+
# reverse
|
|
2
2
|
|
|
3
3
|
Returns a copy of a mesh with every triangle winding reversed.
|
|
4
4
|
|
|
5
|
-
**
|
|
5
|
+
**reverse**(`mesh`: [`TriangleMeshInput`](../geometry/TriangleMeshInput.md)): [`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,7 +10,7 @@ Returns a copy of a mesh with every triangle winding reversed.
|
|
|
10
10
|
|
|
11
11
|
<a id="mesh"></a>
|
|
12
12
|
|
|
13
|
-
**`mesh`** · [`
|
|
13
|
+
**`mesh`** · [`TriangleMeshInput`](../geometry/TriangleMeshInput.md) · Required
|
|
14
14
|
|
|
15
15
|
Mesh to copy and reverse.
|
|
16
16
|
|
|
@@ -18,7 +18,7 @@ Mesh to copy and reverse.
|
|
|
18
18
|
|
|
19
19
|
## Returns
|
|
20
20
|
|
|
21
|
-
[`TriangleMesh`](TriangleMesh.md)
|
|
21
|
+
[`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
22
22
|
|
|
23
23
|
Fresh position and index buffers; the input remains unchanged.
|
|
24
24
|
|
|
@@ -26,9 +26,10 @@ Fresh position and index buffers; the input remains unchanged.
|
|
|
26
26
|
## Related APIs
|
|
27
27
|
|
|
28
28
|
- [TriangleMesh](TriangleMesh.md)
|
|
29
|
+
- [TriangleMeshInput](TriangleMeshInput.md)
|
|
29
30
|
|
|
30
31
|
## Guides
|
|
31
32
|
|
|
32
33
|
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
33
34
|
|
|
34
|
-
Package: `@metamesh/modeling@0.
|
|
35
|
+
Package: `@metamesh/modeling@0.18.0`.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
#
|
|
1
|
+
# revolve
|
|
2
2
|
|
|
3
3
|
Revolves a non-duplicated closed `[radius, z]` profile around +Z.
|
|
4
4
|
|
|
5
|
-
`const` **
|
|
5
|
+
`const` **revolve**: (`input`: [`Path2Input`](../geometry/Path2Input.md), `options?`: [`RevolveOptions`](../geometry/RevolveOptions.md)) => [`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -18,43 +18,43 @@ Path2 profiles must be closed; raw point collections have an implicit closing ed
|
|
|
18
18
|
|
|
19
19
|
```ts
|
|
20
20
|
// Each point is [radius, Z]; the profile seam is implicit.
|
|
21
|
-
|
|
21
|
+
mesh.revolve([[0, 0], [12, 0], [8, 20], [0, 20]], { degrees: 270 });
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
## Parameters
|
|
25
25
|
|
|
26
26
|
<a id="input"></a>
|
|
27
27
|
|
|
28
|
-
**`input`** · [`Path2Input`](Path2Input.md) · Required
|
|
28
|
+
**`input`** · [`Path2Input`](../geometry/Path2Input.md) · Required
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<a id="options"></a>
|
|
33
33
|
|
|
34
|
-
**`options`** · [`RevolveOptions`](RevolveOptions.md) · Optional
|
|
34
|
+
**`options`** · [`RevolveOptions`](../geometry/RevolveOptions.md) · Optional
|
|
35
35
|
|
|
36
36
|
Optional physical or exact circumferential sampling controls. Defaults to `{}`.
|
|
37
37
|
|
|
38
|
-
- [`segments`](RevolveOptions.md#segments) · `number` · Optional
|
|
38
|
+
- [`segments`](../geometry/RevolveOptions.md#segments) · `number` · Optional
|
|
39
39
|
|
|
40
40
|
Exact circumferential segment count from three through the configured safety limit.
|
|
41
41
|
|
|
42
|
-
This local topology override takes precedence over [CircularPrimitiveOptions.resolution](CircularPrimitiveOptions.md#resolution)
|
|
42
|
+
This local topology override takes precedence over [CircularPrimitiveOptions.resolution](../geometry/CircularPrimitiveOptions.md#resolution)
|
|
43
43
|
and any active model-wide resolution policy.
|
|
44
44
|
|
|
45
|
-
- [`resolution`](RevolveOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
|
|
45
|
+
- [`resolution`](../geometry/RevolveOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
|
|
46
46
|
|
|
47
47
|
Operation-level physical tessellation policy over the active model-wide policy.
|
|
48
48
|
|
|
49
|
-
- [`degrees`](RevolveOptions.md#degrees) · `number` · Optional · Default: `360`
|
|
49
|
+
- [`degrees`](../geometry/RevolveOptions.md#degrees) · `number` · Optional · Default: `360`
|
|
50
50
|
|
|
51
51
|
Positive sweep in degrees, no greater than 360. Defaults to a full revolution;
|
|
52
52
|
smaller sweeps form partial revolutions with end caps.
|
|
53
53
|
Segment counts describe a complete circle and scale to this angular span. Native filled
|
|
54
54
|
revolutions require at least three sweep intervals: adaptive sampling refines to that floor,
|
|
55
|
-
while exact counts that imply fewer intervals reject. Pure
|
|
55
|
+
while exact counts that imply fewer intervals reject. Pure mesh.revolve supports one interval.
|
|
56
56
|
|
|
57
|
-
- [`limits`](RevolveOptions.md#limits) · `Partial`\<[`ModelingLimits`](ModelingLimits.md)\> · Optional
|
|
57
|
+
- [`limits`](../geometry/RevolveOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
|
|
58
58
|
|
|
59
59
|
Explicit output and sampling allocation ceilings.
|
|
60
60
|
|
|
@@ -62,7 +62,7 @@ Optional physical or exact circumferential sampling controls. Defaults to `{}`.
|
|
|
62
62
|
|
|
63
63
|
## Returns
|
|
64
64
|
|
|
65
|
-
[`TriangleMesh`](TriangleMesh.md)
|
|
65
|
+
[`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
66
66
|
|
|
67
67
|
A closed indexed triangle mesh revolved counter-clockwise around +Z.
|
|
68
68
|
|
|
@@ -77,4 +77,4 @@ A closed indexed triangle mesh revolved counter-clockwise around +Z.
|
|
|
77
77
|
|
|
78
78
|
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
79
79
|
|
|
80
|
-
Package: `@metamesh/modeling@0.
|
|
80
|
+
Package: `@metamesh/modeling@0.18.0`.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
#
|
|
1
|
+
# signature
|
|
2
2
|
|
|
3
3
|
Creates an order-independent regression signature for a manufacturing mesh.
|
|
4
4
|
|
|
5
|
-
**
|
|
5
|
+
**signature**(`mesh`: [`TriangleMeshInput`](../geometry/TriangleMeshInput.md), `options?`: [`TriangleMeshSignatureOptions`](../geometry/TriangleMeshSignatureOptions.md)): [`TriangleMeshSignature`](../geometry/TriangleMeshSignature.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -14,7 +14,7 @@ connectivity metrics do. The fingerprint is a regression aid, not a cryptographi
|
|
|
14
14
|
|
|
15
15
|
<a id="mesh"></a>
|
|
16
16
|
|
|
17
|
-
**`mesh`** · [`
|
|
17
|
+
**`mesh`** · [`TriangleMeshInput`](../geometry/TriangleMeshInput.md) · Required
|
|
18
18
|
|
|
19
19
|
Closed oriented mesh to measure without mutation.
|
|
20
20
|
|
|
@@ -22,19 +22,19 @@ Closed oriented mesh to measure without mutation.
|
|
|
22
22
|
|
|
23
23
|
<a id="options"></a>
|
|
24
24
|
|
|
25
|
-
**`options`** · [`TriangleMeshSignatureOptions`](TriangleMeshSignatureOptions.md) · Optional
|
|
25
|
+
**`options`** · [`TriangleMeshSignatureOptions`](../geometry/TriangleMeshSignatureOptions.md) · Optional
|
|
26
26
|
|
|
27
27
|
Absolute quantization and complexity limits.
|
|
28
28
|
|
|
29
|
-
- [`maxTriangles`](TriangleMeshSignatureOptions.md#maxtriangles) · `number` · Optional
|
|
29
|
+
- [`maxTriangles`](../geometry/TriangleMeshSignatureOptions.md#maxtriangles) · `number` · Optional
|
|
30
30
|
|
|
31
31
|
Maximum accepted triangle count. Defaults to 200,000.
|
|
32
32
|
|
|
33
|
-
- [`positionTolerance`](TriangleMeshSignatureOptions.md#positiontolerance) · `number` · Optional
|
|
33
|
+
- [`positionTolerance`](../geometry/TriangleMeshSignatureOptions.md#positiontolerance) · `number` · Optional
|
|
34
34
|
|
|
35
35
|
Position and bounds quantization in model units. Defaults to `1e-5`.
|
|
36
36
|
|
|
37
|
-
- [`volumeTolerance`](TriangleMeshSignatureOptions.md#volumetolerance) · `number` · Optional
|
|
37
|
+
- [`volumeTolerance`](../geometry/TriangleMeshSignatureOptions.md#volumetolerance) · `number` · Optional
|
|
38
38
|
|
|
39
39
|
Signed-volume quantization in cubic model units. Defaults to `1e-4`.
|
|
40
40
|
|
|
@@ -42,18 +42,18 @@ Absolute quantization and complexity limits.
|
|
|
42
42
|
|
|
43
43
|
## Returns
|
|
44
44
|
|
|
45
|
-
[`TriangleMeshSignature`](TriangleMeshSignature.md)
|
|
45
|
+
[`TriangleMeshSignature`](../geometry/TriangleMeshSignature.md)
|
|
46
46
|
|
|
47
47
|
Compact counts, bounds, volume, topology, tolerances, and canonical fingerprint.
|
|
48
48
|
|
|
49
49
|
|
|
50
50
|
## Throws
|
|
51
51
|
|
|
52
|
-
- GeometryError When validation, topology, tolerance, or complexity checks fail.
|
|
52
|
+
- `GeometryError` When validation, topology, tolerance, or complexity checks fail.
|
|
53
53
|
|
|
54
54
|
## Related APIs
|
|
55
55
|
|
|
56
|
-
- [
|
|
56
|
+
- [TriangleMeshInput](TriangleMeshInput.md)
|
|
57
57
|
- [TriangleMeshSignature](TriangleMeshSignature.md)
|
|
58
58
|
- [TriangleMeshSignatureOptions](TriangleMeshSignatureOptions.md)
|
|
59
59
|
|
|
@@ -61,4 +61,4 @@ Compact counts, bounds, volume, topology, tolerances, and canonical fingerprint.
|
|
|
61
61
|
|
|
62
62
|
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
63
63
|
|
|
64
|
-
Package: `@metamesh/modeling@0.
|
|
64
|
+
Package: `@metamesh/modeling@0.18.0`.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# sweep
|
|
2
|
+
|
|
3
|
+
Sweeps one explicitly ordered point loop, with caps or a geometrically matching closed seam.
|
|
4
|
+
|
|
5
|
+
**sweep**(`profile`: [`Path2Input`](../geometry/Path2Input.md), `path`: [`Path3Input`](../geometry/Path3Input.md), `options?`: [`SweepOptions`](../geometry/SweepOptions.md)): [`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Example: Sweep point data along a bent path
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
const profile = rectangleContour({ size: [6, 3] });
|
|
13
|
+
mesh.sweep(profile, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
|
|
14
|
+
orientation: { kind: "transport", initialNormal: [0, 1, 0] },
|
|
15
|
+
});
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Parameters
|
|
19
|
+
|
|
20
|
+
<a id="profile"></a>
|
|
21
|
+
|
|
22
|
+
**`profile`** · [`Path2Input`](../geometry/Path2Input.md) · Required
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
<a id="path"></a>
|
|
27
|
+
|
|
28
|
+
**`path`** · [`Path3Input`](../geometry/Path3Input.md) · Required
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
<a id="options"></a>
|
|
33
|
+
|
|
34
|
+
**`options`** · [`SweepOptions`](../geometry/SweepOptions.md) · Optional
|
|
35
|
+
|
|
36
|
+
- [`closed`](../geometry/SweepOptions.md#closed) · `boolean` · Optional
|
|
37
|
+
|
|
38
|
+
Raw point closure defaults to false; a Path3 supplies its closure and rejects conflicts.
|
|
39
|
+
|
|
40
|
+
- [`limits`](../geometry/SweepOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
|
|
41
|
+
|
|
42
|
+
Explicit output and sampling allocation ceilings.
|
|
43
|
+
|
|
44
|
+
- [`orientation`](../geometry/SweepOptions.md#orientation) · [`SweepOrientation`](../geometry/SweepOrientation.md) · Optional
|
|
45
|
+
|
|
46
|
+
Explicit frame policy; default transport minimizes rotations, initially projecting +X then +Y then +Z.
|
|
47
|
+
|
|
48
|
+
- [`resolution`](../geometry/SweepOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
|
|
49
|
+
|
|
50
|
+
Physical sampling of nonzero twist; inserted stations retain authored station controls.
|
|
51
|
+
|
|
52
|
+
- [`twist`](../geometry/SweepOptions.md#twist) · `number` · Optional
|
|
53
|
+
|
|
54
|
+
Total additional profile rotation in degrees, with progression selected by twistBy.
|
|
55
|
+
|
|
56
|
+
- [`twistBy`](../geometry/SweepOptions.md#twistby) · `"length"` \| `"stations"` · Optional
|
|
57
|
+
|
|
58
|
+
Twist advances by physical path length (default), or normalized authored station position, including a closed seam gap.
|
|
59
|
+
|
|
60
|
+
- [`scale`](../geometry/SweepOptions.md#scale) · `number` \| [`Vector2Input`](../geometry/Vector2Input.md) \| readonly [`Vector2Input`](../geometry/Vector2Input.md)[] · Optional
|
|
61
|
+
|
|
62
|
+
Positive uniform/XY scale, or one XY pair per path station. Defaults to one.
|
|
63
|
+
|
|
64
|
+
- [`seamProfileOffset`](../geometry/SweepOptions.md#seamprofileoffset) · `number` · Optional
|
|
65
|
+
|
|
66
|
+
Corresponding point-index advance at a rotationally equivalent closed seam.
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
## Returns
|
|
71
|
+
|
|
72
|
+
[`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
## Related APIs
|
|
76
|
+
|
|
77
|
+
- [Path2Input](Path2Input.md)
|
|
78
|
+
- [Path3Input](Path3Input.md)
|
|
79
|
+
- [SweepOptions](SweepOptions.md)
|
|
80
|
+
- [TriangleMesh](TriangleMesh.md)
|
|
81
|
+
|
|
82
|
+
## Guides
|
|
83
|
+
|
|
84
|
+
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
85
|
+
|
|
86
|
+
Package: `@metamesh/modeling@0.18.0`.
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# threadRidge
|
|
2
|
+
|
|
3
|
+
Builds closed thread-ridge components with every profile locked to the shaft's radial/axial frame. The mesh is intended for union with its minor-envelope cylinder and never owns WASM objects.
|
|
4
|
+
|
|
5
|
+
**threadRidge**(`options`: [`ThreadRidgeOptions`](../geometry/ThreadRidgeOptions.md)): [`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Parameters
|
|
10
|
+
|
|
11
|
+
<a id="options"></a>
|
|
12
|
+
|
|
13
|
+
**`options`** · [`ThreadRidgeOptions`](../geometry/ThreadRidgeOptions.md) · Required
|
|
14
|
+
|
|
15
|
+
- [`length`](../geometry/ThreadRidgeOptions.md#length) · `number` · Required
|
|
16
|
+
|
|
17
|
+
Total threaded axial length in millimetres.
|
|
18
|
+
|
|
19
|
+
- [`majorDiameter`](../geometry/ThreadRidgeOptions.md#majordiameter) · `number` · Required
|
|
20
|
+
|
|
21
|
+
Nominal major diameter before any caller-owned fit compensation.
|
|
22
|
+
|
|
23
|
+
- [`profile`](../geometry/ThreadRidgeOptions.md#profile) · [`ThreadProfile`](../geometry/ThreadProfile-type.md) · Required
|
|
24
|
+
|
|
25
|
+
Validated periodic profile repeated around the shaft.
|
|
26
|
+
|
|
27
|
+
- [`ends`](../geometry/ThreadRidgeOptions.md#ends) · [`ThreadEndTreatmentOptions`](../geometry/ThreadEndTreatmentOptions.md) · Optional
|
|
28
|
+
|
|
29
|
+
Optional bottom/top ridge-end treatments. Standalone ridges honor the requested boundaries;
|
|
30
|
+
BOSL2-style non-cut lead-in scaling is available on complete thread solids.
|
|
31
|
+
|
|
32
|
+
- [`handedness`](../geometry/ThreadRidgeOptions.md#handedness) · [`ThreadHandedness`](../geometry/ThreadHandedness.md) · Optional
|
|
33
|
+
|
|
34
|
+
Helix direction. Default: `right`.
|
|
35
|
+
|
|
36
|
+
- [`limits`](../geometry/ThreadRidgeOptions.md#limits) · `Partial`\<[`ModelingLimits`](../geometry/ModelingLimits.md)\> · Optional
|
|
37
|
+
|
|
38
|
+
Explicit output and circular allocation ceilings.
|
|
39
|
+
|
|
40
|
+
- [`phase`](../geometry/ThreadRidgeOptions.md#phase) · `number` · Optional
|
|
41
|
+
|
|
42
|
+
Angular offset of the first start in degrees. Default: `0`.
|
|
43
|
+
|
|
44
|
+
- [`resolution`](../geometry/ThreadRidgeOptions.md#resolution) · [`GeometryResolution`](../geometry/GeometryResolution.md) · Optional
|
|
45
|
+
|
|
46
|
+
Optional circular-resolution policy.
|
|
47
|
+
|
|
48
|
+
- [`starts`](../geometry/ThreadRidgeOptions.md#starts) · `number` · Optional
|
|
49
|
+
|
|
50
|
+
Number of evenly phased starts. Default: `1`.
|
|
51
|
+
|
|
52
|
+
- [`tolerance`](../geometry/ThreadRidgeOptions.md#tolerance) · [`GeometryToleranceOptions`](../geometry/GeometryToleranceOptions.md) · Optional
|
|
53
|
+
|
|
54
|
+
Optional numerical tolerance overrides.
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
## Returns
|
|
59
|
+
|
|
60
|
+
[`TriangleMesh`](../geometry/TriangleMesh.md)
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
## Related APIs
|
|
64
|
+
|
|
65
|
+
- [ThreadRidgeOptions](ThreadRidgeOptions.md)
|
|
66
|
+
- [TriangleMesh](TriangleMesh.md)
|
|
67
|
+
|
|
68
|
+
## Guides
|
|
69
|
+
|
|
70
|
+
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
71
|
+
|
|
72
|
+
Package: `@metamesh/modeling@0.18.0`.
|