@metamesh/modeling 0.14.0 → 0.15.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 +42 -0
- package/README.md +25 -10
- package/dist/api/engine.d.ts +11 -4
- package/dist/api/geometry.d.ts +345 -341
- package/dist/api/index.d.ts +262 -144
- package/dist/api/text.d.ts +3 -1
- package/dist/docs/guides/concepts.md +22 -7
- package/dist/docs/guides/fundamentals.md +8 -5
- package/dist/docs/guides/hosting.md +21 -11
- package/dist/docs/guides/recipes.md +42 -21
- package/dist/docs/manifest.json +710 -507
- 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 +20 -9
- package/dist/docs/reference/engine/SessionOptions.md +1 -1
- package/dist/docs/reference/engine/SnapshotPart.md +2 -2
- package/dist/docs/reference/engine/categories/host-lifecycle.md +2 -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 +2 -2
- package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +4 -4
- package/dist/docs/reference/geometry/{Anchor3.md → Anchor3-type.md} +1 -1
- package/dist/docs/reference/geometry/ArcCurve2.md +5 -5
- package/dist/docs/reference/geometry/ArcCurve3.md +5 -5
- package/dist/docs/reference/geometry/{AttachTransformOptions.md → AttachOptions.md} +10 -5
- package/dist/docs/reference/geometry/AxisAngleRotation3.md +1 -1
- package/dist/docs/reference/geometry/Bounds2.md +1 -1
- package/dist/docs/reference/geometry/Bounds3.md +1 -1
- 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/BoundsFromSizeOptions.md +1 -1
- package/dist/docs/reference/geometry/BoxAnchorFace.md +1 -1
- package/dist/docs/reference/geometry/BoxAnchorOptions.md +1 -1
- 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 +8 -8
- 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 -1
- package/dist/docs/reference/geometry/CircularResolutionOptions.md +7 -7
- 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 +5 -3
- 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 +3 -3
- package/dist/docs/reference/geometry/CylindricalGearDimensions.md +3 -3
- 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 +3 -3
- 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 +6 -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 +1 -1
- package/dist/docs/reference/geometry/EndTreatments.md +1 -1
- package/dist/docs/reference/geometry/ExtrudeOptions.md +6 -6
- package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +5 -5
- 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 +5 -5
- 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 +9 -3
- package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +1 -1
- package/dist/docs/reference/geometry/HeightfieldOptions.md +1 -1
- package/dist/docs/reference/geometry/HeightfieldPreflight.md +1 -1
- package/dist/docs/reference/geometry/HelicalThreadRidgeMeshOptions.md +5 -5
- package/dist/docs/reference/geometry/HelicalThreadSolidMeshOptions.md +6 -6
- package/dist/docs/reference/geometry/HelicalThreadSolidMeshPreflight.md +1 -1
- package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +1 -1
- package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +6 -6
- 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 +12 -5
- package/dist/docs/reference/geometry/LoftCorrespondence.md +1 -1
- package/dist/docs/reference/geometry/LoftMeshStation.md +4 -4
- package/dist/docs/reference/geometry/LoftOptions.md +1 -1
- 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/PRINTABLE_THREAD_FIT_POLICIES.md +1 -1
- package/dist/docs/reference/geometry/Path2-type.md +192 -0
- package/dist/docs/reference/geometry/Path2Data.md +14 -0
- package/dist/docs/reference/geometry/Path2Input.md +15 -0
- package/dist/docs/reference/geometry/Path3-type.md +192 -0
- package/dist/docs/reference/geometry/Path3Data.md +14 -0
- package/dist/docs/reference/geometry/Path3Input.md +15 -0
- package/dist/docs/reference/geometry/PathFrame.md +1 -1
- package/dist/docs/reference/geometry/PathLocation.md +65 -0
- package/dist/docs/reference/geometry/PathNormalGuide.md +4 -3
- package/dist/docs/reference/geometry/PathOptions.md +34 -0
- package/dist/docs/reference/geometry/PathPatternOptions.md +3 -3
- package/dist/docs/reference/geometry/PathPlacement.md +1 -1
- package/dist/docs/reference/geometry/PathResamplingOptions.md +80 -0
- 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 +22 -22
- 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 +4 -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 +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 +2 -2
- 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 +5 -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 +1 -1
- 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 +1 -1
- package/dist/docs/reference/geometry/RegionData.md +1 -1
- package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +3 -3
- package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +1 -1
- package/dist/docs/reference/geometry/RevolveOptions.md +9 -4
- 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 +3 -3
- package/dist/docs/reference/geometry/SampleHelixOptions.md +1 -1
- package/dist/docs/reference/geometry/SampleSideProfileOptions.md +3 -3
- 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 +3 -3
- 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 +3 -3
- package/dist/docs/reference/geometry/SphereOptions.md +3 -3
- package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/StrokeCap.md +7 -0
- package/dist/docs/reference/geometry/StrokeJoin.md +7 -0
- package/dist/docs/reference/geometry/{StrokePathRegionOptions.md → StrokeOptions.md} +7 -7
- 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 +13 -13
- package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +11 -11
- package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +9 -9
- package/dist/docs/reference/geometry/SweepOptions.md +6 -6
- package/dist/docs/reference/geometry/SweepOrientation.md +7 -7
- package/dist/docs/reference/geometry/ThreadBevelOptions.md +1 -1
- package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +5 -5
- 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 +3 -3
- package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +1 -1
- package/dist/docs/reference/geometry/ThreadLeadInShape.md +1 -1
- package/dist/docs/reference/geometry/{ThreadProfile.md → ThreadProfile-type.md} +1 -1
- package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +1 -1
- package/dist/docs/reference/geometry/ThreadProfileSpec.md +1 -1
- package/dist/docs/reference/geometry/ThreadRole.md +1 -1
- package/dist/docs/reference/geometry/ThreadedNutBevel.md +1 -1
- package/dist/docs/reference/geometry/ThreadedNutOptions.md +6 -6
- package/dist/docs/reference/geometry/ThreadedNutPreflight.md +1 -1
- package/dist/docs/reference/geometry/ThreadedNutShape.md +1 -1
- package/dist/docs/reference/geometry/ThreadedRodOptions.md +6 -6
- package/dist/docs/reference/geometry/TorusOptions.md +8 -8
- package/dist/docs/reference/geometry/Transform2-type.md +1 -1
- package/dist/docs/reference/geometry/Transform2Input.md +1 -1
- package/dist/docs/reference/geometry/Transform2Matrix.md +1 -1
- package/dist/docs/reference/geometry/Transform3-type.md +1 -1
- package/dist/docs/reference/geometry/Transform3Input.md +1 -1
- package/dist/docs/reference/geometry/Transform3Matrix.md +1 -1
- package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +5 -4
- package/dist/docs/reference/geometry/TriangleMesh.md +1 -1
- package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +2 -2
- package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +1 -1
- package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +1 -1
- package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +3 -3
- package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +1 -1
- package/dist/docs/reference/geometry/TriangleMeshSignature.md +2 -2
- package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +3 -3
- package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +1 -1
- 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 +8 -8
- package/dist/docs/reference/geometry/Vector2-type.md +1 -1
- package/dist/docs/reference/geometry/Vector2Input.md +1 -1
- package/dist/docs/reference/geometry/Vector2Tuple.md +1 -1
- package/dist/docs/reference/geometry/Vector3-type.md +1 -1
- package/dist/docs/reference/geometry/Vector3Input.md +1 -1
- package/dist/docs/reference/geometry/Vector3Tuple.md +1 -1
- package/dist/docs/reference/geometry/VectorTextArcBaseline.md +3 -3
- package/dist/docs/reference/geometry/VectorTextLayout.md +1 -1
- package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +1 -1
- 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/analyzeTriangleMesh.md +1 -1
- package/dist/docs/reference/geometry/analyzeTriangleMeshQuality.md +2 -2
- package/dist/docs/reference/geometry/{createAnchor3.md → anchor3.md} +9 -9
- package/dist/docs/reference/geometry/anchorFrame3.md +5 -5
- package/dist/docs/reference/geometry/applyTransformDirection3.md +1 -1
- package/dist/docs/reference/geometry/applyTransformPoint3.md +1 -1
- package/dist/docs/reference/geometry/{attachTransform.md → attachmentTransform3.md} +13 -13
- package/dist/docs/reference/geometry/boundsCenter.md +1 -1
- package/dist/docs/reference/geometry/boundsFromSize.md +1 -1
- package/dist/docs/reference/geometry/boundsSize.md +1 -1
- package/dist/docs/reference/geometry/boxAnchor3.md +4 -4
- package/dist/docs/reference/geometry/categories/bounds-layout.md +1 -1
- package/dist/docs/reference/geometry/categories/curves-paths.md +15 -13
- package/dist/docs/reference/geometry/categories/mechanical.md +6 -6
- package/dist/docs/reference/geometry/categories/meshes.md +3 -4
- package/dist/docs/reference/geometry/categories/pattern-placement.md +6 -6
- package/dist/docs/reference/geometry/categories/primitive-options.md +4 -4
- package/dist/docs/reference/geometry/categories/profiles-regions.md +2 -3
- package/dist/docs/reference/geometry/categories/resolution-errors.md +1 -1
- package/dist/docs/reference/geometry/categories/transforms-math.md +5 -5
- package/dist/docs/reference/geometry/categories/vector-import.md +5 -5
- 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 +5 -5
- package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +5 -5
- package/dist/docs/reference/geometry/composeTransform3.md +1 -1
- package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +10 -6
- package/dist/docs/reference/geometry/computeParallelTransportFrames.md +8 -7
- package/dist/docs/reference/geometry/computeTriangleMeshCentroid.md +1 -1
- package/dist/docs/reference/geometry/{createTriangleMeshSignature.md → computeTriangleMeshSignature.md} +4 -4
- package/dist/docs/reference/geometry/containsBounds.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 +5 -5
- 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 +8 -6
- 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/extrudeMesh.md +8 -8
- 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/{getMetricClearanceHole.md → getMetricClearanceHoleDiameter.md} +3 -3
- package/dist/docs/reference/geometry/getMetricFastenerStandard.md +1 -1
- package/dist/docs/reference/geometry/gridPatternTransforms.md +2 -2
- package/dist/docs/reference/geometry/heightfieldMesh.md +1 -1
- package/dist/docs/reference/geometry/{buildHelicalThreadRidgeMesh.md → helicalThreadRidgeMesh.md} +5 -5
- package/dist/docs/reference/geometry/{buildHelicalThreadSolidMesh.md → helicalThreadSolidMesh.md} +5 -5
- package/dist/docs/reference/geometry/inverseTransform3.md +1 -1
- package/dist/docs/reference/geometry/isGeometryError.md +1 -1
- package/dist/docs/reference/geometry/joinTriangleMeshes.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 +2 -2
- package/dist/docs/reference/geometry/loftMesh.md +2 -1
- package/dist/docs/reference/geometry/matchProfiles.md +1 -1
- package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +1 -1
- package/dist/docs/reference/geometry/meshBounds.md +1 -1
- package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +3 -3
- 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/optimizePlanarPatches.md +11 -11
- package/dist/docs/reference/geometry/path2.md +42 -0
- package/dist/docs/reference/geometry/path3.md +42 -0
- package/dist/docs/reference/geometry/pathPatternTransforms.md +6 -6
- package/dist/docs/reference/geometry/preflightHeightfield.md +1 -1
- package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +3 -3
- package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +3 -3
- package/dist/docs/reference/geometry/preflightSvgRegion.md +1 -1
- package/dist/docs/reference/geometry/preflightThreadedNut.md +3 -3
- package/dist/docs/reference/geometry/preflightThreadedRod.md +3 -3
- package/dist/docs/reference/geometry/projectOntoPlane3.md +1 -1
- package/dist/docs/reference/geometry/radialPatternTransforms.md +1 -17
- package/dist/docs/reference/geometry/rectangleContour.md +1 -1
- package/dist/docs/reference/geometry/rectangleProfile.md +1 -1
- 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 +2 -2
- package/dist/docs/reference/geometry/resamplePolyline3.md +2 -2
- 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 +1 -1
- package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +1 -1
- package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +3 -3
- package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +1 -1
- package/dist/docs/reference/geometry/resolveGeometryTolerance.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 +4 -4
- package/dist/docs/reference/geometry/reverseTriangleMesh.md +1 -1
- package/dist/docs/reference/geometry/revolveMesh.md +10 -10
- 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 +6 -4
- package/dist/docs/reference/geometry/sampleContour.md +3 -3
- package/dist/docs/reference/geometry/sampleCurve2.md +3 -3
- package/dist/docs/reference/geometry/sampleCurve3.md +2 -2
- package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +1 -1
- package/dist/docs/reference/geometry/sampleHelix.md +2 -2
- package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +1 -1
- package/dist/docs/reference/geometry/sampleRackToothPath.md +4 -4
- package/dist/docs/reference/geometry/sampleSideProfile.md +3 -3
- package/dist/docs/reference/geometry/sampleTextContours.md +1 -1
- package/dist/docs/reference/geometry/sampleThreadHelices.md +2 -2
- 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 +1 -1
- package/dist/docs/reference/geometry/strokeRegionData.md +63 -0
- package/dist/docs/reference/geometry/subtract2.md +1 -1
- package/dist/docs/reference/geometry/subtract3.md +1 -1
- package/dist/docs/reference/geometry/sweepMesh.md +9 -9
- package/dist/docs/reference/geometry/{createThreadProfile.md → threadProfile.md} +6 -6
- 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/transformTriangleMesh.md +6 -6
- package/dist/docs/reference/geometry/translationTransform3.md +1 -1
- package/dist/docs/reference/geometry/triangulateContour.md +1 -1
- package/dist/docs/reference/geometry/validateSolidMesh.md +2 -2
- package/dist/docs/reference/geometry/validateTransform3.md +1 -1
- package/dist/docs/reference/geometry/validateTriangleMesh.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 +2 -2
- package/dist/docs/reference/model/Anchor3.md +1 -1
- package/dist/docs/reference/model/AttachOptions.md +10 -5
- package/dist/docs/reference/model/Bounds2.md +1 -1
- package/dist/docs/reference/model/Bounds3.md +1 -1
- 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 +8 -8
- 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 +1 -1
- 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/CylinderOptions.md +3 -3
- package/dist/docs/reference/model/DiagnosticOptions.md +1 -1
- package/dist/docs/reference/model/EdgeTreatment.md +1 -1
- package/dist/docs/reference/model/EllipseContourOptions.md +1 -1
- 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 +18 -8
- package/dist/docs/reference/model/FinalizedPart.md +1 -1
- package/dist/docs/reference/model/Frame3.md +1 -1
- package/dist/docs/reference/model/GenerateCallback.md +1 -1
- package/dist/docs/reference/model/GenerateContext.md +1 -1
- package/dist/docs/reference/model/GeneratedPart.md +1 -1
- package/dist/docs/reference/model/GenerationDiagnostic.md +1 -1
- package/dist/docs/reference/model/GenerationError.md +1 -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 +9 -3
- package/dist/docs/reference/model/HeightfieldOptions.md +1 -1
- package/dist/docs/reference/model/HelicalThreadRidgeMeshOptions.md +3 -3
- package/dist/docs/reference/model/HelicalThreadSolidMeshPreflight.md +1 -1
- package/dist/docs/reference/model/HullOptions.md +5 -5
- package/dist/docs/reference/model/ImmutableBuffer-type.md +1 -1
- package/dist/docs/reference/model/ImmutableTriangleMesh.md +1 -1
- package/dist/docs/reference/model/ImplicitOptions.md +1 -1
- package/dist/docs/reference/model/InternalThreadCutterOptions.md +4 -4
- package/dist/docs/reference/model/LinearPatternOptions.md +12 -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 +1 -1
- package/dist/docs/reference/model/ModelingLimits.md +1 -1
- package/dist/docs/reference/model/NumericArray.md +1 -1
- package/dist/docs/reference/model/PartGeometry.md +1 -1
- package/dist/docs/reference/model/PartOptions.md +1 -1
- package/dist/docs/reference/model/Path2-type.md +192 -0
- package/dist/docs/reference/model/Path2Data.md +14 -0
- package/dist/docs/reference/model/Path2Input.md +15 -0
- package/dist/docs/reference/model/Path3-type.md +192 -0
- package/dist/docs/reference/model/Path3Data.md +14 -0
- package/dist/docs/reference/model/Path3Input.md +15 -0
- package/dist/docs/reference/model/PathLocation.md +65 -0
- package/dist/docs/reference/model/PathNormalGuide.md +4 -3
- package/dist/docs/reference/model/PathOptions.md +34 -0
- package/dist/docs/reference/model/PathPatternOptions.md +3 -3
- package/dist/docs/reference/model/PathResamplingOptions.md +79 -0
- 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 +3 -3
- package/dist/docs/reference/model/PolygonData.md +1 -1
- package/dist/docs/reference/model/PolygonOptions.md +8 -8
- package/dist/docs/reference/model/{PrimitivePlacement.md → PrimitiveAttachment.md} +7 -7
- package/dist/docs/reference/model/{PrimitivePlacementOptions.md → PrimitiveAttachmentOptions.md} +41 -20
- 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 +2 -2
- package/dist/docs/reference/model/ProfiledEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/RadialPatternOptions.md +17 -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 +1 -1
- 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 +8 -8
- package/dist/docs/reference/model/RegionData.md +1 -1
- 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 +12 -11
- package/dist/docs/reference/model/SectionHullOptions.md +5 -5
- package/dist/docs/reference/model/SectionInspection.md +7 -7
- 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 +23 -6
- package/dist/docs/reference/model/SolidInspection.md +4 -4
- package/dist/docs/reference/model/{SolidRayHit.md → SolidSegmentHit.md} +3 -3
- 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 +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 +1 -1
- package/dist/docs/reference/model/ThreadRidgeOptions.md +1 -1
- package/dist/docs/reference/model/ThreadedNutBevel.md +1 -1
- package/dist/docs/reference/model/ThreadedNutOptions.md +4 -4
- package/dist/docs/reference/model/ThreadedNutPreflight.md +1 -1
- package/dist/docs/reference/model/ThreadedNutShape.md +1 -1
- package/dist/docs/reference/model/ThreadedRodOptions.md +4 -4
- package/dist/docs/reference/model/TorusOptions.md +8 -8
- package/dist/docs/reference/model/Transform2-type.md +1 -1
- package/dist/docs/reference/model/Transform2Input.md +1 -1
- package/dist/docs/reference/model/Transform2Matrix.md +1 -1
- package/dist/docs/reference/model/Transform3-type.md +1 -1
- package/dist/docs/reference/model/Transform3Input.md +1 -1
- package/dist/docs/reference/model/Transform3Matrix.md +1 -1
- package/dist/docs/reference/model/TriangleMesh.md +1 -1
- package/dist/docs/reference/model/TriangleMeshAnalysis.md +2 -2
- package/dist/docs/reference/model/TriangleMeshMeasurements.md +1 -1
- package/dist/docs/reference/model/TubeOptions.md +8 -8
- package/dist/docs/reference/model/Vector2-type.md +1 -1
- package/dist/docs/reference/model/Vector2Input.md +1 -1
- package/dist/docs/reference/model/Vector2Tuple.md +1 -1
- package/dist/docs/reference/model/Vector3-type.md +1 -1
- package/dist/docs/reference/model/Vector3Input.md +1 -1
- package/dist/docs/reference/model/Vector3Tuple.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/anchor.md +1 -1
- package/dist/docs/reference/model/box.md +3 -3
- package/dist/docs/reference/model/castSegment.md +40 -0
- package/dist/docs/reference/model/categories/boolean-operations.md +1 -1
- package/dist/docs/reference/model/categories/bounded-surfaces.md +1 -1
- package/dist/docs/reference/model/categories/contracts.md +2 -2
- package/dist/docs/reference/model/categories/core-values-errors.md +1 -1
- package/dist/docs/reference/model/categories/explicit-profiles.md +2 -2
- package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +2 -2
- package/dist/docs/reference/model/categories/generation.md +1 -1
- package/dist/docs/reference/model/categories/inspection.md +4 -5
- package/dist/docs/reference/model/categories/mesh-inspection.md +2 -2
- package/dist/docs/reference/model/categories/paths.md +33 -0
- package/dist/docs/reference/model/categories/primitives.md +2 -2
- package/dist/docs/reference/model/categories/resolution.md +2 -2
- package/dist/docs/reference/model/categories/sections.md +3 -4
- package/dist/docs/reference/model/categories/threads.md +5 -5
- package/dist/docs/reference/model/categories/transforms-placement.md +8 -8
- 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 +1 -1
- package/dist/docs/reference/model/gridPattern.md +4 -4
- package/dist/docs/reference/model/heightfield.md +1 -1
- package/dist/docs/reference/model/hull.md +1 -1
- package/dist/docs/reference/model/immutableBuffer.md +1 -1
- package/dist/docs/reference/model/immutableMesh.md +1 -1
- package/dist/docs/reference/model/implicit.md +1 -1
- 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 +4 -4
- package/dist/docs/reference/model/intersect.md +1 -1
- package/dist/docs/reference/model/isEmpty.md +1 -1
- package/dist/docs/reference/model/linearPattern.md +4 -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 +42 -0
- package/dist/docs/reference/model/path3.md +42 -0
- package/dist/docs/reference/model/pathPattern.md +13 -12
- package/dist/docs/reference/model/polygon.md +4 -4
- package/dist/docs/reference/model/preflightInternalThreadCutter.md +3 -3
- package/dist/docs/reference/model/preflightThreadedNut.md +3 -3
- package/dist/docs/reference/model/preflightThreadedRod.md +3 -3
- package/dist/docs/reference/model/radialPattern.md +5 -37
- package/dist/docs/reference/model/rectangle.md +3 -3
- 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 +2 -2
- package/dist/docs/reference/model/threadedNut.md +4 -4
- package/dist/docs/reference/model/threadedRod.md +4 -4
- package/dist/docs/reference/model/torus.md +3 -3
- 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 +3 -3
- package/dist/docs/reference/model/union.md +1 -1
- package/dist/docs/reference/model/vector2.md +1 -1
- package/dist/docs/reference/model/vector3.md +1 -1
- package/dist/docs/reference/model.md +3 -2
- package/dist/docs/reference/text/Bounds2.md +1 -1
- package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +1 -1
- package/dist/docs/reference/text/Vector2Tuple.md +1 -1
- 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 +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 +2 -2
- package/dist/docs/reference/text.md +1 -1
- 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/loft-operations.js +35 -14
- package/dist/engine/model-summary.js +8 -5
- 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 +6 -0
- 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 +24 -24
- package/dist/geometry/anchors.js +40 -33
- package/dist/geometry/curves/sampling.js +14 -14
- package/dist/geometry/edge-finishing.js +1 -1
- package/dist/geometry/extrusion.js +13 -16
- package/dist/geometry/index.js +9 -10
- 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/mechanical/gear-motion.js +3 -3
- package/dist/geometry/mechanical/gears.js +38 -38
- package/dist/geometry/mechanical/index.js +3 -3
- 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 +4 -5
- 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 +2 -2
- package/dist/geometry/mechanical/thread-surface.js +1 -1
- package/dist/geometry/mechanical/threads.js +8 -8
- 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 +7 -7
- package/dist/geometry/mesh/mesh.js +4 -15
- package/dist/geometry/paths/closest-point.js +8 -19
- package/dist/geometry/paths/frames.js +41 -11
- package/dist/geometry/paths/helix.js +16 -6
- package/dist/geometry/paths/path-value.js +252 -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 +2 -2
- package/dist/geometry/polygon-clipping.js +17 -0
- package/dist/geometry/profiles/contour.js +6 -6
- package/dist/geometry/profiles/matched.js +4 -4
- package/dist/geometry/profiles/profiles.js +4 -4
- package/dist/geometry/profiles/rectangle.js +4 -4
- package/dist/geometry/profiles/side-profile.js +7 -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 +23 -23
- 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/transform-geometry.js +7 -14
- package/dist/index.js +1 -0
- package/dist/model/execution-binding.js +3 -3
- package/dist/model/geometry-recipes.js +1 -1
- package/dist/model/immutable-generation-data.js +66 -6
- package/dist/model/operations.js +25 -26
- package/dist/model/recipe-declaration.js +13 -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/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/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/Path2.md +0 -20
- package/dist/docs/reference/model/rayCast.md +0 -40
- package/dist/docs/reference/model/toTriangleMesh.md +0 -27
- package/dist/geometry/paths/path.js +0 -32
|
@@ -16,7 +16,7 @@ Measurements and optional edge-connected topology from one validated mesh traver
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
Number of referenced edge-connected
|
|
19
|
+
Number of referenced edge-connected boundary shells when `includeTopology` is requested; cavities count separately.
|
|
20
20
|
|
|
21
21
|
***
|
|
22
22
|
|
|
@@ -120,4 +120,4 @@ Number of distinct entries in the position buffer.
|
|
|
120
120
|
|
|
121
121
|
- [Solid inspection](../../guides/recipes.md#solid-inspection)
|
|
122
122
|
|
|
123
|
-
Package: `@metamesh/modeling@0.
|
|
123
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -5,7 +5,7 @@ Dimensions, placement, and tessellation for a hollow Z-axis tube.
|
|
|
5
5
|
## Extends
|
|
6
6
|
|
|
7
7
|
- [`CircularPrimitiveOptions`](CircularPrimitiveOptions.md)
|
|
8
|
-
- [`
|
|
8
|
+
- [`PrimitiveAttachment`](PrimitiveAttachment.md)
|
|
9
9
|
|
|
10
10
|
## Properties
|
|
11
11
|
|
|
@@ -60,19 +60,19 @@ Operation-level physical tessellation policy over the active model-wide policy.
|
|
|
60
60
|
|
|
61
61
|
***
|
|
62
62
|
|
|
63
|
-
###
|
|
63
|
+
### attachment?
|
|
64
64
|
|
|
65
65
|
|
|
66
66
|
|
|
67
|
-
`readonly` `optional` **
|
|
67
|
+
`readonly` `optional` **attachment?**: [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md)
|
|
68
68
|
|
|
69
69
|
|
|
70
70
|
|
|
71
|
-
Applied after local construction; Section
|
|
71
|
+
Applied after local construction; Section attachment must preserve the XY plane.
|
|
72
72
|
|
|
73
73
|
#### Inherited from
|
|
74
74
|
|
|
75
|
-
[`
|
|
75
|
+
[`PrimitiveAttachment`](PrimitiveAttachment.md).[`attachment`](PrimitiveAttachment.md#attachment)
|
|
76
76
|
|
|
77
77
|
***
|
|
78
78
|
|
|
@@ -132,12 +132,12 @@ Outer radius in millimetres; greater than [TubeOptions.innerRadius](#innerradius
|
|
|
132
132
|
- [CircularPrimitiveOptions](CircularPrimitiveOptions.md)
|
|
133
133
|
- [GeometryResolution](GeometryResolution.md)
|
|
134
134
|
- [GeometrySamplingLimits](GeometrySamplingLimits.md)
|
|
135
|
-
- [
|
|
136
|
-
- [
|
|
135
|
+
- [PrimitiveAttachment](PrimitiveAttachment.md)
|
|
136
|
+
- [PrimitiveAttachmentOptions](PrimitiveAttachmentOptions.md)
|
|
137
137
|
|
|
138
138
|
## Guides
|
|
139
139
|
|
|
140
140
|
- [Choose a primitive](../../guides/recipes.md#choose-a-primitive)
|
|
141
141
|
- [Treated boxes, frustums, and mirrored arrays](../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
|
|
142
142
|
|
|
143
|
-
Package: `@metamesh/modeling@0.
|
|
143
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -267,4 +267,4 @@ Returns this value's frozen readonly tuple for interchange; repeated calls do no
|
|
|
267
267
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
268
268
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
269
269
|
|
|
270
|
-
Package: `@metamesh/modeling@0.
|
|
270
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -17,4 +17,4 @@ An XY tuple or immutable fluent vector accepted by vector operations.
|
|
|
17
17
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
18
18
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
19
19
|
|
|
20
|
-
Package: `@metamesh/modeling@0.
|
|
20
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -12,4 +12,4 @@ A two-dimensional Cartesian vector or point.
|
|
|
12
12
|
- [Geometry vocabulary](../../guides/concepts.md#geometry-vocabulary)
|
|
13
13
|
- [Lifecycle and inspection](../../guides/concepts.md#lifecycle-and-inspection)
|
|
14
14
|
|
|
15
|
-
Package: `@metamesh/modeling@0.
|
|
15
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -279,4 +279,4 @@ Returns this value's frozen readonly tuple for interchange; repeated calls do no
|
|
|
279
279
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
280
280
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
281
281
|
|
|
282
|
-
Package: `@metamesh/modeling@0.
|
|
282
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -17,4 +17,4 @@ An XYZ tuple or immutable fluent vector accepted by vector operations.
|
|
|
17
17
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
18
18
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
19
19
|
|
|
20
|
-
Package: `@metamesh/modeling@0.
|
|
20
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -12,4 +12,4 @@ A three-dimensional Cartesian vector or point.
|
|
|
12
12
|
- [Geometry vocabulary](../../guides/concepts.md#geometry-vocabulary)
|
|
13
13
|
- [Lifecycle and inspection](../../guides/concepts.md#lifecycle-and-inspection)
|
|
14
14
|
|
|
15
|
-
Package: `@metamesh/modeling@0.
|
|
15
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -37,4 +37,4 @@ Exact measurements of these paths and their logical text layout.
|
|
|
37
37
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
38
38
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
39
39
|
|
|
40
|
-
Package: `@metamesh/modeling@0.
|
|
40
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -97,4 +97,4 @@ Number of lines, including empty and trailing lines; empty text occupies one lin
|
|
|
97
97
|
- [SVG sections: fills and strokes are different inputs](../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
98
98
|
- [Text and font variability](../../guides/concepts.md#text-and-font-variability)
|
|
99
99
|
|
|
100
|
-
Package: `@metamesh/modeling@0.
|
|
100
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -43,4 +43,4 @@ anchor(plate, "top"); // position [0, 0, 3], direction [0, 0, 1]
|
|
|
43
43
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
44
44
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
45
45
|
|
|
46
|
-
Package: `@metamesh/modeling@0.
|
|
46
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -38,9 +38,9 @@ box({ size: [30, 20, 8], treatment: { kind: "round", radius: 2 } });
|
|
|
38
38
|
|
|
39
39
|
Uniform treatment or independent disjoint nominal edge/group treatments.
|
|
40
40
|
|
|
41
|
-
- [`
|
|
41
|
+
- [`attachment`](BoxOptions.md#attachment) · [`PrimitiveAttachmentOptions`](PrimitiveAttachmentOptions.md) · Optional
|
|
42
42
|
|
|
43
|
-
Applied after local construction; Section
|
|
43
|
+
Applied after local construction; Section attachment must preserve the XY plane.
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
|
|
@@ -59,4 +59,4 @@ box({ size: [30, 20, 8], treatment: { kind: "round", radius: 2 } });
|
|
|
59
59
|
- [Choose a primitive](../../guides/recipes.md#choose-a-primitive)
|
|
60
60
|
- [Treated boxes, frustums, and mirrored arrays](../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
|
|
61
61
|
|
|
62
|
-
Package: `@metamesh/modeling@0.
|
|
62
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# castSegment
|
|
2
|
+
|
|
3
|
+
Copies intersections along the finite directed origin-to-endpoint segment.
|
|
4
|
+
|
|
5
|
+
**castSegment**(`solid`: [`Solid`](Solid.md), `origin`: [`Vector3Input`](Vector3Input.md), `endpoint`: [`Vector3Input`](Vector3Input.md)): readonly [`SolidSegmentHit`](SolidSegmentHit.md)[]
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Parameters
|
|
10
|
+
|
|
11
|
+
<a id="solid"></a>
|
|
12
|
+
|
|
13
|
+
**`solid`** · [`Solid`](Solid.md) · Required
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<a id="origin"></a>
|
|
18
|
+
|
|
19
|
+
**`origin`** · [`Vector3Input`](Vector3Input.md) · Required
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
<a id="endpoint"></a>
|
|
24
|
+
|
|
25
|
+
**`endpoint`** · [`Vector3Input`](Vector3Input.md) · Required
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
## Returns
|
|
30
|
+
|
|
31
|
+
readonly [`SolidSegmentHit`](SolidSegmentHit.md)[]
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
## Related APIs
|
|
35
|
+
|
|
36
|
+
- [Solid](Solid.md)
|
|
37
|
+
- [SolidSegmentHit](SolidSegmentHit.md)
|
|
38
|
+
- [Vector3Input](Vector3Input.md)
|
|
39
|
+
|
|
40
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -34,4 +34,4 @@ union and intersect combine arrays of Sections or Solids; shape.subtract(cutters
|
|
|
34
34
|
- [Choose the Boolean by the material you want](../../../guides/fundamentals.md#choose-the-boolean-by-the-material-you-want)
|
|
35
35
|
- [Primitive booleans and repeated placement](../../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
36
36
|
|
|
37
|
-
Package: `@metamesh/modeling@0.
|
|
37
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -23,4 +23,4 @@ Heightfields accept uniform or explicit uneven XY coordinates and close absolute
|
|
|
23
23
|
| --- | --- |
|
|
24
24
|
| [HeightfieldOptions](../HeightfieldOptions.md) | A closed rectilinear heightfield above a flat base, with uniform or explicit XY samples in millimetres. |
|
|
25
25
|
|
|
26
|
-
Package: `@metamesh/modeling@0.
|
|
26
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Describe opaque handles, dimensions, manufacturing parts, and completed snapshots.
|
|
4
4
|
|
|
5
|
-
Generation returns semantic parts from part(id, geometry) or placement/color options.
|
|
5
|
+
Generation returns semantic parts from part(id, geometry) or placement/color options. Ordinary immutable recipes are portable across sessions; observed component selections retain their originating session. Finalized snapshots carry copied manufacturing arrays and exact facts.
|
|
6
6
|
|
|
7
7
|
## Interfaces
|
|
8
8
|
|
|
@@ -13,4 +13,4 @@ Generation returns semantic parts from part(id, geometry) or placement/color opt
|
|
|
13
13
|
| [GeometrySamplingLimits](../GeometrySamplingLimits.md) | Explicit allocation ceilings for pure sampling and host-owned modeling operations. |
|
|
14
14
|
| [ModelingLimits](../ModelingLimits.md) | Aggregate manufacturing output ceilings selected by a trusted host. |
|
|
15
15
|
|
|
16
|
-
Package: `@metamesh/modeling@0.
|
|
16
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -27,4 +27,4 @@ Use the small shared vocabulary for authored geometry, coordinates, paths, and s
|
|
|
27
27
|
- [Geometry vocabulary](../../../guides/concepts.md#geometry-vocabulary)
|
|
28
28
|
- [Lifecycle and inspection](../../../guides/concepts.md#lifecycle-and-inspection)
|
|
29
29
|
|
|
30
|
-
Package: `@metamesh/modeling@0.
|
|
30
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -8,7 +8,7 @@ Contour is plain point data with an implicit closing edge. Profile is an identif
|
|
|
8
8
|
|
|
9
9
|
| API | Summary |
|
|
10
10
|
| --- | --- |
|
|
11
|
-
| [matchProfiles](../matchProfiles.md) |
|
|
11
|
+
| [matchProfiles](../matchProfiles.md) | Matches a profile family using operation settings over host resolution and limits. Requires active synchronous model execution. Use Geometry's matchProfiles for standalone preparation. |
|
|
12
12
|
|
|
13
13
|
## Interfaces
|
|
14
14
|
|
|
@@ -29,4 +29,4 @@ Contour is plain point data with an implicit closing edge. Profile is an identif
|
|
|
29
29
|
| [CorrespondingProfileStation](../CorrespondingProfileStation.md) | One already matched profile at an explicit height or right-handed spatial frame. |
|
|
30
30
|
| [ProfileSpan2](../ProfileSpan2.md) | An identified line, circular arc, or cubic Bézier between corresponding landmarks. |
|
|
31
31
|
|
|
32
|
-
Package: `@metamesh/modeling@0.
|
|
32
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Turn sections and paths into extruded, lofted, revolved, or swept solids.
|
|
4
4
|
|
|
5
|
-
`section.extrude({ height,
|
|
5
|
+
`section.extrude({ height, twist, scaleTop })` adds +Z depth; center defaults to false. `section.revolve({ degrees })` rotates radial/Z geometry around +Z and caps partial turns. loft(stations, options) places each profile at exactly one z or frame in input order. Compatible primitive landmarks match directly, including circle/ellipse quadrants to rectangle corners. Other unlike primitive families use direct perimeter association from construction-local +X seams. Arbitrary Sections and loops require an explicit direct, reindex, fast-distance or distance method. refine controls density and slices interpolate world vertices. Identified CorrespondingProfile landmarks reject geometric remapping. section.sweep(path, options) supports implicit closed paths, transport/fixed-normal/guide/Frenet orientation, physical-length or station twist progression, uniform/XY/per-station scales and an explicit rotationally equivalent seamProfileOffset. Open sweeps have watertight end caps; closed sweeps require compatible orientation and scale at the seam. Standalone extrude, revolve and sweep accept CorrespondingProfile data only; Section construction uses its methods.
|
|
6
6
|
|
|
7
7
|
## Functions
|
|
8
8
|
|
|
@@ -39,4 +39,4 @@ Turn sections and paths into extruded, lofted, revolved, or swept solids.
|
|
|
39
39
|
- [Matched-section loft](../../../guides/recipes.md#matched-section-loft)
|
|
40
40
|
- [Choose a modeling path](../../../guides/concepts.md#choose-a-modeling-path)
|
|
41
41
|
|
|
42
|
-
Package: `@metamesh/modeling@0.
|
|
42
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -41,4 +41,4 @@ Start with `generate(({ params, part, assert }) => ...)` and return one `part(..
|
|
|
41
41
|
| [GenerateCallback](../GenerateCallback.md) | Pure synchronous callback returning one declared part or an array; caches are optional. |
|
|
42
42
|
| [PartGeometry](../PartGeometry.md) | Manufacturing geometry; filled sections are intermediate construction values. |
|
|
43
43
|
|
|
44
|
-
Package: `@metamesh/modeling@0.
|
|
44
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -8,9 +8,8 @@ Inspection returns copied scalar facts and finite bounds. Mesh extraction is exp
|
|
|
8
8
|
|
|
9
9
|
| API | Summary |
|
|
10
10
|
| --- | --- |
|
|
11
|
-
| [components](../components.md) | Observes
|
|
12
|
-
| [
|
|
13
|
-
| [toTriangleMesh](../toTriangleMesh.md) | Copies a handle to manufacturing mesh buffers. |
|
|
11
|
+
| [components](../components.md) | Observes disconnected material pieces as session-restricted solid selections. |
|
|
12
|
+
| [castSegment](../castSegment.md) | Copies intersections along the finite directed origin-to-endpoint segment. |
|
|
14
13
|
| [isEmpty](../isEmpty.md) | Checks whether a solid or filled section contains no geometry during host execution. |
|
|
15
14
|
| [distance](../distance.md) | Measures the minimum separation between two nonempty solids in millimetres. |
|
|
16
15
|
|
|
@@ -18,6 +17,6 @@ Inspection returns copied scalar facts and finite bounds. Mesh extraction is exp
|
|
|
18
17
|
|
|
19
18
|
| API | Summary |
|
|
20
19
|
| --- | --- |
|
|
21
|
-
| [
|
|
20
|
+
| [SolidSegmentHit](../SolidSegmentHit.md) | Copied surface intersection from a finite directed segment. Distance is in millimetres. |
|
|
22
21
|
|
|
23
|
-
Package: `@metamesh/modeling@0.
|
|
22
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Convert validated meshes and inspect stable section or solid measurements.
|
|
4
4
|
|
|
5
|
-
inspectSection and inspectSolid copy native scalar facts and bounds from recipes in the active host execution. toTriangleMesh returns copied manufacturing arrays; final engine output also receives strict mesh analysis. Neither inspection certifies wall thickness, overhangs, printer fit or material behavior.
|
|
5
|
+
inspectSection and inspectSolid copy native scalar facts and bounds from recipes in the active host execution. Solid.toTriangleMesh() returns copied manufacturing arrays; final engine output also receives strict mesh analysis. Neither inspection certifies wall thickness, overhangs, printer fit or material behavior.
|
|
6
6
|
|
|
7
7
|
## Functions
|
|
8
8
|
|
|
@@ -26,4 +26,4 @@ inspectSection and inspectSolid copy native scalar facts and bounds from recipes
|
|
|
26
26
|
|
|
27
27
|
- [Solid inspection](../../../guides/recipes.md#solid-inspection)
|
|
28
28
|
|
|
29
|
-
Package: `@metamesh/modeling@0.
|
|
29
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Sampled paths
|
|
2
|
+
|
|
3
|
+
Reusable immutable planar and spatial trajectories.
|
|
4
|
+
|
|
5
|
+
Use path2 and path3 to own sampled point data and closure. Geometry consumes the values directly; transform, reverse and resample return new values. closestPoint reports a boundary position and edge-local fraction, not a filled interior or analytic-curve solution. Tuples remain available through toArray for interchange. Closed paths omit the duplicated endpoint; polygon fills a closed planar path and establishes winding.
|
|
6
|
+
|
|
7
|
+
## Functions
|
|
8
|
+
|
|
9
|
+
| API | Summary |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| [path2](../path2.md) | Snapshots finite XY coordinates as an immutable sampled path, independent of engine initialization. Open paths may be empty or have one point; closed paths need three vertices and omit a duplicated seam. Repeated adjacent vertices are retained. No winding normalization or filling is performed. Malformed dimensions or topology throw INVALID_ARGUMENT; nonfinite coordinates or measurement overflow throw NON_FINITE_VALUE; exhausted allocation ceilings throw COMPLEXITY_LIMIT GeometryError. A path input retains its closure. Limits bound construction only; resampling takes its own limits. |
|
|
12
|
+
| [path3](../path3.md) | Snapshots finite XYZ coordinates as an immutable sampled path with the same closure, seam, allocation and error rules as path2. Analytic curves must be sampled explicitly first. |
|
|
13
|
+
|
|
14
|
+
## Interfaces
|
|
15
|
+
|
|
16
|
+
| API | Summary |
|
|
17
|
+
| --- | --- |
|
|
18
|
+
| [Path2](../Path2-type.md) | Immutable directed XY polyline. Closure is explicit and does not imply a filled Section. |
|
|
19
|
+
| [Path3](../Path3-type.md) | Immutable directed XYZ polyline; it represents sampled edges, not an analytic curve. |
|
|
20
|
+
| [PathOptions](../PathOptions.md) | Topology and allocation ceiling for an immutable sampled path. |
|
|
21
|
+
| [PathLocation](../PathLocation.md) | Nearest location on a sampled boundary, rather than inside a filled shape or on an analytic curve. |
|
|
22
|
+
| [PathResamplingOptions](../PathResamplingOptions.md) | Equal arc-length sampling; the path itself owns whether its closing edge is included. |
|
|
23
|
+
|
|
24
|
+
## Type aliases
|
|
25
|
+
|
|
26
|
+
| API | Summary |
|
|
27
|
+
| --- | --- |
|
|
28
|
+
| [Path2Input](../Path2Input.md) | An immutable XY sampled path or a collection of XY tuples and fluent vectors. |
|
|
29
|
+
| [Path3Input](../Path3Input.md) | An immutable XYZ sampled path or a collection of XYZ tuples and fluent vectors. |
|
|
30
|
+
| [Path2Data](../Path2Data.md) | XY point tuples for interchange; closure is supplied by the consuming operation or Path2 value. |
|
|
31
|
+
| [Path3Data](../Path3Data.md) | XYZ point tuples for interchange; closure is supplied by the consuming operation or Path3 value. |
|
|
32
|
+
|
|
33
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Create foundational solid geometry and configure its dimensions and tessellation.
|
|
4
4
|
|
|
5
|
-
All primitives use millimetres and one options object. `box` accepts scalar or XYZ size; `cylinder` accepts exactly one radius or diameter, uniformly or as a bottom/top tuple along +Z. Radial sizing explicitly selects polygon vertices or compensated faces. Treatments share `{kind: "round", radius}`, `{kind: "chamfer", distance}`, `{kind: "smooth", distance}` and `{kind: "profile", profile}`; boxes may select named edges; cylinder and straight convex extrusion ends select independent bottom/top treatments. Boxes, cylinders and tubes are centered by default. `
|
|
5
|
+
All primitives use millimetres and one options object. `box` accepts scalar or XYZ size; `cylinder` accepts exactly one radius or diameter, uniformly or as a bottom/top tuple along +Z. Radial sizing explicitly selects polygon vertices or compensated faces. Treatments share `{kind: "round", radius}`, `{kind: "chamfer", distance}`, `{kind: "smooth", distance}` and `{kind: "profile", profile}`; boxes may select named edges; cylinder and straight convex extrusion ends select independent bottom/top treatments. Boxes, cylinders and tubes are centered by default. `attachment` maps a named or explicit local anchor onto a world anchor after shape construction.
|
|
6
6
|
|
|
7
7
|
Use imported primitives inside generation:
|
|
8
8
|
|
|
@@ -58,4 +58,4 @@ export default generate(({ part }) => {
|
|
|
58
58
|
- [Choose a primitive](../../../guides/recipes.md#choose-a-primitive)
|
|
59
59
|
- [Treated boxes, frustums, and mirrored arrays](../../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
|
|
60
60
|
|
|
61
|
-
Package: `@metamesh/modeling@0.
|
|
61
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Choose physical curve sampling and explicit native tolerance.
|
|
4
4
|
|
|
5
|
-
Exact operation counts take precedence over the operation’s resolution policy, followed by host session defaults. Pass resolution explicitly to each affected constructor or Section operation. Solid.
|
|
5
|
+
Exact operation counts take precedence over the operation’s resolution policy, followed by host session defaults. Pass resolution explicitly to each affected constructor or Section operation. Solid.withTolerance changes native geometric tolerance on an immutable copy; it does not select curve sampling.
|
|
6
6
|
|
|
7
7
|
## Interfaces
|
|
8
8
|
|
|
@@ -15,4 +15,4 @@ Exact operation counts take precedence over the operation’s resolution policy,
|
|
|
15
15
|
|
|
16
16
|
- [Coordinates, units, and resolution](../../../guides/concepts.md#coordinates-units-and-resolution)
|
|
17
17
|
|
|
18
|
-
Package: `@metamesh/modeling@0.
|
|
18
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -39,9 +39,8 @@ Section is the filled XY modeling value with holes and disconnected components.
|
|
|
39
39
|
|
|
40
40
|
| API | Summary |
|
|
41
41
|
| --- | --- |
|
|
42
|
-
| [
|
|
43
|
-
| [
|
|
44
|
-
| [StrokePathJoin](../StrokePathJoin.md) | Join treatment where adjacent stroked path segments meet. |
|
|
42
|
+
| [StrokeCap](../StrokeCap.md) | End-cap treatment for an open stroked path. |
|
|
43
|
+
| [StrokeJoin](../StrokeJoin.md) | Join treatment where adjacent stroked path segments meet. |
|
|
45
44
|
| [CircleContourOptions](../CircleContourOptions.md) | Circular profile dimensions with exactly one radius or diameter and explicit sampling. |
|
|
46
45
|
| [CircleOptions](../CircleOptions.md) | Circular dimensions with exactly one nominal radius or diameter. |
|
|
47
46
|
| [EllipseContourOptions](../EllipseContourOptions.md) | Ellipse dimensions with exactly one XY radii or full-size tuple and explicit sampling. |
|
|
@@ -59,4 +58,4 @@ Section is the filled XY modeling value with holes and disconnected components.
|
|
|
59
58
|
- [SVG sections: fills and strokes are different inputs](../../../guides/concepts.md#svg-sections-fills-and-strokes-are-different-inputs)
|
|
60
59
|
- [Text and font variability](../../../guides/concepts.md#text-and-font-variability)
|
|
61
60
|
|
|
62
|
-
Package: `@metamesh/modeling@0.
|
|
61
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Printable threads
|
|
2
2
|
|
|
3
|
-
Construct compensated thread forms and inspect
|
|
3
|
+
Construct compensated thread forms and inspect bounded preflight facts.
|
|
4
4
|
|
|
5
5
|
Thread pitch is adjacent axial spacing; lead equals pitch times starts. Prepare shared thread dimensions once. Constructors enforce safety automatically; optional preflight provides resource estimates or early control-specific validation. Native rods, internal cutters, and nuts share printable fit and end-treatment options. These forms do not certify a structural rating or a metrology class.
|
|
6
6
|
|
|
@@ -9,9 +9,9 @@ Thread pitch is adjacent axial spacing; lead equals pitch times starts. Prepare
|
|
|
9
9
|
| API | Summary |
|
|
10
10
|
| --- | --- |
|
|
11
11
|
| [internalThreadCutter](../internalThreadCutter.md) | Compensated internal threaded cutter. |
|
|
12
|
-
| [preflightInternalThreadCutter](../preflightInternalThreadCutter.md) |
|
|
13
|
-
| [preflightThreadedNut](../preflightThreadedNut.md) |
|
|
14
|
-
| [preflightThreadedRod](../preflightThreadedRod.md) |
|
|
12
|
+
| [preflightInternalThreadCutter](../preflightInternalThreadCutter.md) | Internal-thread facts using host resolution and limits; requires active synchronous model execution. |
|
|
13
|
+
| [preflightThreadedNut](../preflightThreadedNut.md) | Nut/cutter facts using host resolution and limits; requires active synchronous model execution. |
|
|
14
|
+
| [preflightThreadedRod](../preflightThreadedRod.md) | External-thread facts using host resolution and limits; requires active synchronous model execution. |
|
|
15
15
|
| [threadedNut](../threadedNut.md) | Compensated threaded nut. |
|
|
16
16
|
| [threadedRod](../threadedRod.md) | Compensated external threaded rod. |
|
|
17
17
|
| [threadRidge](../threadRidge.md) | Helical ridge mesh construction. |
|
|
@@ -47,4 +47,4 @@ Thread pitch is adjacent axial spacing; lead equals pitch times starts. Prepare
|
|
|
47
47
|
|
|
48
48
|
- [Build printable threads](https://metamesh.studio/docs/develop/printable-threads#build-the-first-mating-pair)
|
|
49
49
|
|
|
50
|
-
Package: `@metamesh/modeling@0.
|
|
50
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Calculate with immutable vectors, reuse transforms, and arrange geometry with explicit placement contracts.
|
|
4
4
|
|
|
5
|
-
Use vector2/vector3 for immutable arithmetic and transform2/transform3 for reusable placements. Tuples are accepted as operands; scalar dot, length and distance return numbers. Shape.transform accepts a matching transform directly. Operations apply in written order, rotations use degrees, and optional `{ pivot }` points use world coordinates, defaulting to the origin. andThen composes placements in execution order. applyPoint includes translation, applyDirection retains scale without translation, and applyNormal uses the inverse transpose and returns a unit vector. toArray and toMatrix expose canonical data for interchange. Solid.attach and primitive
|
|
5
|
+
Use vector2/vector3 for immutable arithmetic and transform2/transform3 for reusable placements. Tuples are accepted as operands; scalar dot, length and distance return numbers. Shape.transform accepts a matching transform directly. Operations apply in written order, rotations use degrees, and optional `{ pivot }` points use world coordinates, defaulting to the origin. andThen composes placements in execution order. applyPoint includes translation, applyDirection retains scale without translation, and applyNormal uses the inverse transpose and returns a unit vector. toArray and toMatrix expose canonical data for interchange. Solid.attach and primitive attachment share source/target anchors, alignment, millimetre gap and degree spin. XY placements can be explicitly embedded with to3D; to2D rejects plane changes. Part placement can reuse finished geometry. Section patterns use XY directions and Path2 trajectories; tangent orientation aligns local +X in the XY plane. Radial Section patterns use an XY pivot and implicit +Z axis. Solid patterns use XYZ inputs and explicit radial axes; path tangent orientation aligns local +Z.
|
|
6
6
|
|
|
7
7
|
## Functions
|
|
8
8
|
|
|
@@ -29,11 +29,10 @@ Use vector2/vector3 for immutable arithmetic and transform2/transform3 for reusa
|
|
|
29
29
|
| [Vector2](../Vector2-type.md) | Immutable XY arithmetic; vector operations return new values and measurements return numbers. |
|
|
30
30
|
| [Vector3](../Vector3-type.md) | Immutable XYZ arithmetic; vector operations return new values and measurements return numbers. |
|
|
31
31
|
| [Anchor3](../Anchor3.md) | An attachment pose on a solid or assembly. |
|
|
32
|
-
| [AttachOptions](../AttachOptions.md) |
|
|
32
|
+
| [AttachOptions](../AttachOptions.md) | Options controlling how one anchor is attached to another. |
|
|
33
33
|
| [PathPatternOptions](../PathPatternOptions.md) | Equal physical arc-length placements along an open or implicitly closed sampled path. |
|
|
34
|
-
| [
|
|
35
|
-
| [
|
|
36
|
-
| [RadialPatternOptions](../RadialPatternOptions.md) | Options for repeating one solid around an axis through a center point. |
|
|
34
|
+
| [PrimitiveAttachment](../PrimitiveAttachment.md) | Anchor attachment shared by solid and filled-section factories. |
|
|
35
|
+
| [PrimitiveAttachmentOptions](../PrimitiveAttachmentOptions.md) | Maps an explicit or named shape-local attachment anchor onto a world-space anchor. |
|
|
37
36
|
|
|
38
37
|
## Type aliases
|
|
39
38
|
|
|
@@ -43,9 +42,10 @@ Use vector2/vector3 for immutable arithmetic and transform2/transform3 for reusa
|
|
|
43
42
|
| [Transform3Input](../Transform3Input.md) | An immutable XYZ transform or its canonical row-major matrix for interchange. |
|
|
44
43
|
| [Vector2Input](../Vector2Input.md) | An XY tuple or immutable fluent vector accepted by vector operations. |
|
|
45
44
|
| [Vector3Input](../Vector3Input.md) | An XYZ tuple or immutable fluent vector accepted by vector operations. |
|
|
46
|
-
| [GridPatternOptions](../GridPatternOptions.md) | XY or XYZ grid with X varying fastest. The first item starts at the local origin. |
|
|
47
|
-
| [LinearPatternOptions](../LinearPatternOptions.md) | Equal linear intervals determined by exactly two of count, spacing and total length. |
|
|
45
|
+
| [GridPatternOptions](../GridPatternOptions.md) | XY or XYZ grid with X varying fastest. The first item starts at the local origin. Dimension 2 restricts counts and spacing to XY; any frame must preserve the XY plane. |
|
|
46
|
+
| [LinearPatternOptions](../LinearPatternOptions.md) | Equal linear intervals determined by exactly two of count, spacing and total length. Dimension defaults to 3; Section patterns use 2 and accept XY vector directions. |
|
|
48
47
|
| [PatternSource](../PatternSource.md) | One immutable shape, or a synchronous factory called once per copy in index order. |
|
|
48
|
+
| [RadialPatternOptions](../RadialPatternOptions.md) | Degree rotations about a fixed world-space pivot; XY patterns use the implicit +Z axis. |
|
|
49
49
|
| [Transform2Matrix](../Transform2Matrix.md) | A row-major affine 3x3 XY matrix applied to column vectors. Translation occupies indices 2 and 5; the final row is `[0, 0, 1]`. |
|
|
50
50
|
| [Transform3Matrix](../Transform3Matrix.md) | A row-major affine 4x4 matrix applied to column vectors. |
|
|
51
51
|
|
|
@@ -54,4 +54,4 @@ Use vector2/vector3 for immutable arithmetic and transform2/transform3 for reusa
|
|
|
54
54
|
- [Named anchors and custom frames](../../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
55
55
|
- [Primitive booleans and repeated placement](../../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
56
56
|
|
|
57
|
-
Package: `@metamesh/modeling@0.
|
|
57
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -36,4 +36,4 @@ circle({ diameter: 12, 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.15.0`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# components
|
|
2
2
|
|
|
3
|
-
Observes
|
|
3
|
+
Observes disconnected material pieces as session-restricted solid selections.
|
|
4
4
|
|
|
5
5
|
## Call Signature
|
|
6
6
|
|
|
@@ -19,11 +19,11 @@ const pieces = components(islands);
|
|
|
19
19
|
union(pieces.map((piece, index) => piece.translate([0, 0, index * 6])));
|
|
20
20
|
```
|
|
21
21
|
|
|
22
|
-
Observes
|
|
22
|
+
Observes disconnected material pieces as session-restricted solid selections.
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
Each piece retains its enclosed cavities. A sealed hollow box is one component; adding a loose
|
|
25
|
+
ball inside its cavity produces two. Recombining the pieces preserves the original material.
|
|
26
|
+
This does not cut connected geometry. Containment is bounded to 2,000,000 comparisons.
|
|
27
27
|
Selection order and cardinality depend on evaluated topology. Results and recipes using them
|
|
28
28
|
can only be evaluated in this session; composition itself requires no engine.
|
|
29
29
|
|
|
@@ -68,4 +68,4 @@ readonly [`Section`](Section.md)[]
|
|
|
68
68
|
- [Section](Section.md)
|
|
69
69
|
- [Solid](Solid.md)
|
|
70
70
|
|
|
71
|
-
Package: `@metamesh/modeling@0.
|
|
71
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -28,4 +28,4 @@ Combines disjoint components without resolving overlap.
|
|
|
28
28
|
- [Choose the Boolean by the material you want](../../guides/fundamentals.md#choose-the-boolean-by-the-material-you-want)
|
|
29
29
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
30
30
|
|
|
31
|
-
Package: `@metamesh/modeling@0.
|
|
31
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -49,4 +49,4 @@ cylinder({ height: 20, radius: [10, 0] });
|
|
|
49
49
|
- [Choose a primitive](../../guides/recipes.md#choose-a-primitive)
|
|
50
50
|
- [Treated boxes, frustums, and mirrored arrays](../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
|
|
51
51
|
|
|
52
|
-
Package: `@metamesh/modeling@0.
|
|
52
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -36,4 +36,4 @@ ellipse({ size: [30, 20] });
|
|
|
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.15.0`.
|
|
@@ -52,11 +52,11 @@ extrude(profile!, { height: 8 });
|
|
|
52
52
|
|
|
53
53
|
Operation-level physical policy over the nearest model scope.
|
|
54
54
|
|
|
55
|
-
- [`scaleTop`](ExtrudeOptions.md#scaletop) · `number` \| [`
|
|
55
|
+
- [`scaleTop`](ExtrudeOptions.md#scaletop) · `number` \| [`Vector2Input`](Vector2Input.md) · Optional
|
|
56
56
|
|
|
57
57
|
Finite uniform or XY scale of the top profile; defaults to one.
|
|
58
58
|
|
|
59
|
-
- [`
|
|
59
|
+
- [`twist`](ExtrudeOptions.md#twist) · `number` · Optional
|
|
60
60
|
|
|
61
61
|
Finite rotation of the top profile about +Z, in degrees; defaults to zero.
|
|
62
62
|
|
|
@@ -80,4 +80,4 @@ extrude(profile!, { height: 8 });
|
|
|
80
80
|
- [Matched-section loft](../../guides/recipes.md#matched-section-loft)
|
|
81
81
|
- [Choose a modeling path](../../guides/concepts.md#choose-a-modeling-path)
|
|
82
82
|
|
|
83
|
-
Package: `@metamesh/modeling@0.
|
|
83
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -40,11 +40,11 @@ readonly [`Solid`](Solid.md)[]
|
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
|
|
43
|
-
**gridPattern**(`source`: [`PatternSource`](PatternSource.md)\<[`Section`](Section.md)\>, `options`: [`GridPatternOptions`](GridPatternOptions.md)): readonly [`Section`](Section.md)[]
|
|
43
|
+
**gridPattern**(`source`: [`PatternSource`](PatternSource.md)\<[`Section`](Section.md)\>, `options`: [`GridPatternOptions`](GridPatternOptions.md)\<`2`\>): readonly [`Section`](Section.md)[]
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
|
|
47
|
-
Repeats a filled Section on
|
|
47
|
+
Repeats a filled Section on an XY grid; any explicit frame must preserve the XY plane.
|
|
48
48
|
|
|
49
49
|
### Parameters
|
|
50
50
|
|
|
@@ -56,7 +56,7 @@ Repeats a filled Section on a grid; placements must preserve its XY plane.
|
|
|
56
56
|
|
|
57
57
|
<a id="options-1"></a>
|
|
58
58
|
|
|
59
|
-
**`options`** · [`GridPatternOptions`](GridPatternOptions.md) · Required
|
|
59
|
+
**`options`** · [`GridPatternOptions`](GridPatternOptions.md)\<`2`\> · Required
|
|
60
60
|
|
|
61
61
|
|
|
62
62
|
|
|
@@ -77,4 +77,4 @@ readonly [`Section`](Section.md)[]
|
|
|
77
77
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
78
78
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
79
79
|
|
|
80
|
-
Package: `@metamesh/modeling@0.
|
|
80
|
+
Package: `@metamesh/modeling@0.15.0`.
|