@metamesh/modeling 0.13.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 +55 -0
- package/README.md +67 -9
- package/dist/api/engine.d.ts +14 -7
- package/dist/api/geometry.d.ts +787 -447
- package/dist/api/index.d.ts +637 -250
- package/dist/api/text.d.ts +6 -4
- package/dist/docs/guides/concepts.md +135 -17
- package/dist/docs/guides/fonts.md +8 -0
- package/dist/docs/guides/fundamentals.md +8 -3
- package/dist/docs/guides/generation.md +6 -4
- package/dist/docs/guides/hosting.md +27 -14
- package/dist/docs/guides/recipes.md +82 -11
- package/dist/docs/manifest.json +1911 -856
- 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 +4 -4
- 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 +17 -4
- package/dist/docs/reference/geometry/{Anchor3.md → Anchor3-type.md} +9 -5
- package/dist/docs/reference/geometry/ArcCurve2.md +7 -7
- package/dist/docs/reference/geometry/ArcCurve3.md +9 -9
- package/dist/docs/reference/geometry/{AttachTransformOptions.md → AttachOptions.md} +14 -5
- package/dist/docs/reference/geometry/AxisAngleRotation3.md +6 -1
- package/dist/docs/reference/geometry/Bounds2.md +4 -4
- package/dist/docs/reference/geometry/Bounds3.md +4 -4
- package/dist/docs/reference/geometry/BoundsFit2.md +3 -3
- package/dist/docs/reference/geometry/BoundsFit3.md +3 -3
- 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 +8 -1
- package/dist/docs/reference/geometry/BoxAnchorOptions.md +8 -4
- package/dist/docs/reference/geometry/BoxEdge.md +1 -1
- package/dist/docs/reference/geometry/BoxEdgeSelection.md +1 -1
- package/dist/docs/reference/geometry/BoxEdgeTreatments.md +1 -1
- package/dist/docs/reference/geometry/BoxOptions.md +10 -10
- package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +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 +107 -0
- 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 +3 -3
- 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 +6 -6
- package/dist/docs/reference/geometry/CubicBezierCurve3.md +6 -6
- 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 +3 -3
- package/dist/docs/reference/geometry/CylinderAnchorFace.md +8 -1
- package/dist/docs/reference/geometry/CylinderAnchorOptions.md +9 -5
- 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 +3 -3
- 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 +6 -6
- package/dist/docs/reference/geometry/GeometryError.md +1 -1
- package/dist/docs/reference/geometry/GeometryErrorCode.md +1 -1
- package/dist/docs/reference/geometry/GeometryErrorContext.md +1 -1
- package/dist/docs/reference/geometry/GeometryResolution.md +14 -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 +11 -5
- package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +1 -1
- package/dist/docs/reference/geometry/HeightfieldOptions.md +5 -5
- 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 +7 -3
- package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +6 -6
- package/dist/docs/reference/geometry/LineCurve2.md +4 -4
- package/dist/docs/reference/geometry/LineCurve3.md +4 -4
- 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 +5 -5
- package/dist/docs/reference/geometry/PathLocation.md +65 -0
- package/dist/docs/reference/geometry/PathNormalGuide.md +6 -5
- 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 +4 -4
- package/dist/docs/reference/geometry/PathResamplingOptions.md +80 -0
- package/dist/docs/reference/geometry/Pivot2Options.md +26 -0
- package/dist/docs/reference/geometry/Pivot3Options.md +26 -0
- 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 +3 -3
- package/dist/docs/reference/geometry/{Polygon.md → PolygonData.md} +2 -2
- 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 +3 -3
- package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +3 -3
- 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 +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 +14 -0
- 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 +4 -4
- package/dist/docs/reference/geometry/SampledCurve3.md +4 -4
- 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} +8 -8
- package/dist/docs/reference/geometry/SvgImportOptions.md +1 -1
- package/dist/docs/reference/geometry/SvgRegionPreflight.md +3 -3
- 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} +3 -3
- 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 +255 -0
- package/dist/docs/reference/geometry/Transform2Input.md +19 -0
- package/dist/docs/reference/geometry/Transform2Matrix.md +14 -0
- package/dist/docs/reference/geometry/Transform3-type.md +295 -0
- package/dist/docs/reference/geometry/Transform3Input.md +19 -0
- package/dist/docs/reference/geometry/Transform3Matrix.md +17 -0
- 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 +269 -0
- package/dist/docs/reference/geometry/Vector2Input.md +19 -0
- package/dist/docs/reference/geometry/Vector2Tuple.md +14 -0
- package/dist/docs/reference/geometry/Vector3-type.md +281 -0
- package/dist/docs/reference/geometry/Vector3Input.md +19 -0
- package/dist/docs/reference/geometry/Vector3Tuple.md +14 -0
- 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 +36 -0
- package/dist/docs/reference/geometry/add3.md +10 -6
- 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} +13 -9
- package/dist/docs/reference/geometry/anchorFrame3.md +5 -5
- package/dist/docs/reference/geometry/applyTransformDirection3.md +11 -7
- package/dist/docs/reference/geometry/applyTransformPoint3.md +11 -7
- package/dist/docs/reference/geometry/attachmentTransform3.md +77 -0
- package/dist/docs/reference/geometry/boundsCenter.md +7 -7
- package/dist/docs/reference/geometry/boundsFromSize.md +7 -7
- package/dist/docs/reference/geometry/boundsSize.md +7 -7
- package/dist/docs/reference/geometry/boxAnchor3.md +10 -6
- package/dist/docs/reference/geometry/categories/bounds-layout.md +1 -1
- package/dist/docs/reference/geometry/categories/curves-paths.md +15 -10
- 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 +7 -7
- package/dist/docs/reference/geometry/categories/primitive-options.md +4 -4
- package/dist/docs/reference/geometry/categories/profiles-regions.md +5 -6
- package/dist/docs/reference/geometry/categories/resolution-errors.md +3 -2
- package/dist/docs/reference/geometry/categories/transforms-math.md +41 -12
- 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 +4 -4
- 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 +10 -6
- 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 +4 -4
- 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 +4 -4
- package/dist/docs/reference/geometry/cross2.md +36 -0
- package/dist/docs/reference/geometry/cross3.md +10 -6
- package/dist/docs/reference/geometry/cylinderAnchor3.md +10 -6
- package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +1 -1
- package/dist/docs/reference/geometry/distance2.md +36 -0
- package/dist/docs/reference/geometry/distance3.md +36 -0
- package/dist/docs/reference/geometry/distributeAlongPath.md +8 -6
- package/dist/docs/reference/geometry/dot2.md +36 -0
- package/dist/docs/reference/geometry/dot3.md +9 -5
- package/dist/docs/reference/geometry/ellipseContour.md +1 -1
- package/dist/docs/reference/geometry/eulerTransform3.md +10 -6
- 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 +8 -4
- 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 +5 -5
- 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 +9 -5
- 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 +4 -4
- package/dist/docs/reference/geometry/length2.md +30 -0
- package/dist/docs/reference/geometry/length3.md +8 -4
- package/dist/docs/reference/geometry/lerp2.md +42 -0
- package/dist/docs/reference/geometry/lerp3.md +10 -6
- package/dist/docs/reference/geometry/linearPatternTransforms.md +5 -5
- 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 +3 -2
- 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 +36 -0
- package/dist/docs/reference/geometry/normalize3.md +10 -6
- package/dist/docs/reference/geometry/normalizeContour.md +4 -4
- package/dist/docs/reference/geometry/normalizePolygon.md +5 -5
- package/dist/docs/reference/geometry/normalizeRegion.md +5 -5
- 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 +8 -8
- 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 +10 -6
- package/dist/docs/reference/geometry/radialPatternTransforms.md +4 -20
- package/dist/docs/reference/geometry/rectangleContour.md +2 -2
- package/dist/docs/reference/geometry/rectangleProfile.md +2 -2
- package/dist/docs/reference/geometry/regionArea.md +4 -4
- package/dist/docs/reference/geometry/regionBounds.md +4 -4
- package/dist/docs/reference/geometry/regularPolygonContour.md +5 -5
- package/dist/docs/reference/geometry/resamplePolyline2.md +5 -5
- package/dist/docs/reference/geometry/resamplePolyline3.md +5 -5
- package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +8 -4
- package/dist/docs/reference/geometry/resolveArcSegments.md +6 -6
- package/dist/docs/reference/geometry/resolveCircularSegments.md +6 -5
- 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 +6 -6
- 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 +36 -0
- package/dist/docs/reference/geometry/rotationTransform3.md +10 -6
- package/dist/docs/reference/geometry/roundClosedPolylinePath.md +8 -6
- 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 +5 -5
- 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 +6 -6
- 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 +36 -0
- package/dist/docs/reference/geometry/scale3.md +9 -5
- package/dist/docs/reference/geometry/scaleTransform3.md +10 -6
- package/dist/docs/reference/geometry/signedContourArea.md +1 -1
- package/dist/docs/reference/geometry/starContour.md +4 -4
- package/dist/docs/reference/geometry/strokeRegionData.md +63 -0
- package/dist/docs/reference/geometry/subtract2.md +36 -0
- package/dist/docs/reference/geometry/subtract3.md +10 -6
- 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 +38 -0
- package/dist/docs/reference/geometry/transform3.md +38 -0
- package/dist/docs/reference/geometry/transformDeterminant3.md +8 -4
- package/dist/docs/reference/geometry/transformRegionData.md +40 -0
- package/dist/docs/reference/geometry/transformTriangleMesh.md +6 -6
- package/dist/docs/reference/geometry/translationTransform3.md +10 -6
- 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 +9 -5
- package/dist/docs/reference/geometry/validateTriangleMesh.md +1 -1
- package/dist/docs/reference/geometry/vector2.md +31 -0
- package/dist/docs/reference/geometry/vector3.md +38 -0
- package/dist/docs/reference/geometry.md +3 -3
- package/dist/docs/reference/model/Anchor3.md +5 -5
- package/dist/docs/reference/model/AttachOptions.md +10 -5
- package/dist/docs/reference/model/Bounds2.md +4 -4
- package/dist/docs/reference/model/Bounds3.md +4 -4
- package/dist/docs/reference/model/BoxEdge.md +1 -1
- package/dist/docs/reference/model/BoxEdgeSelection.md +1 -1
- package/dist/docs/reference/model/BoxEdgeTreatments.md +1 -1
- package/dist/docs/reference/model/BoxOptions.md +10 -10
- package/dist/docs/reference/model/ChamferedEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/CircleContourOptions.md +1 -1
- package/dist/docs/reference/model/CircleOptions.md +3 -3
- package/dist/docs/reference/model/CircularPrimitiveOptions.md +1 -1
- package/dist/docs/reference/model/Computed.md +1 -1
- package/dist/docs/reference/model/ComputedValue.md +1 -1
- package/dist/docs/reference/model/Contour.md +3 -3
- 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 +3 -3
- package/dist/docs/reference/model/EllipseOptions.md +3 -3
- package/dist/docs/reference/model/EndTreatments.md +1 -1
- package/dist/docs/reference/model/ExtrudeOptions.md +6 -6
- package/dist/docs/reference/model/FinalizedModel.md +18 -8
- package/dist/docs/reference/model/FinalizedPart.md +1 -1
- package/dist/docs/reference/model/Frame3.md +6 -6
- package/dist/docs/reference/model/GenerateCallback.md +1 -1
- package/dist/docs/reference/model/GenerateContext.md +5 -5
- package/dist/docs/reference/model/GeneratedPart.md +6 -6
- 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 +11 -5
- package/dist/docs/reference/model/HeightfieldOptions.md +5 -5
- 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 +7 -7
- 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 +4 -4
- 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 +4 -4
- 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 +6 -6
- 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 +6 -5
- 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 +2 -2
- package/dist/docs/reference/model/Pivot2Options.md +27 -0
- package/dist/docs/reference/model/Pivot3Options.md +27 -0
- package/dist/docs/reference/model/PlaneOptions.md +3 -3
- package/dist/docs/reference/model/{Polygon-type.md → PolygonData.md} +2 -2
- package/dist/docs/reference/model/PolygonOptions.md +85 -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 +3 -3
- package/dist/docs/reference/model/ProfiledEdgeTreatment.md +3 -3
- 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 +3 -3
- package/dist/docs/reference/model/RectangleCornerTreatment.md +1 -1
- package/dist/docs/reference/model/RectangleCornerTreatments.md +1 -1
- package/dist/docs/reference/model/RectangleOptions.md +10 -10
- package/dist/docs/reference/model/{Region.md → RegionData.md} +4 -4
- 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 +81 -40
- package/dist/docs/reference/model/SectionHullOptions.md +7 -7
- package/dist/docs/reference/model/SectionInspection.md +10 -10
- package/dist/docs/reference/model/{RegionOffsetJoin.md → SectionOffsetJoin.md} +3 -3
- package/dist/docs/reference/model/{RegionOffsetOptions.md → SectionOffsetOptions.md} +4 -4
- package/dist/docs/reference/model/SmoothEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/Solid.md +66 -26
- package/dist/docs/reference/model/SolidInspection.md +7 -7
- package/dist/docs/reference/model/{SolidRayHit.md → SolidSegmentHit.md} +6 -6
- package/dist/docs/reference/model/SphereOptions.md +3 -3
- package/dist/docs/reference/model/StarOptions.md +10 -10
- package/dist/docs/reference/model/StrokeCap.md +16 -0
- package/dist/docs/reference/model/StrokeJoin.md +16 -0
- package/dist/docs/reference/model/StrokeOptions.md +91 -0
- 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 +3 -3
- 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 +256 -0
- package/dist/docs/reference/model/Transform2Input.md +20 -0
- package/dist/docs/reference/model/Transform2Matrix.md +15 -0
- package/dist/docs/reference/model/Transform3-type.md +296 -0
- package/dist/docs/reference/model/Transform3Input.md +20 -0
- package/dist/docs/reference/model/{Transform3.md → Transform3Matrix.md} +3 -3
- 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 +270 -0
- package/dist/docs/reference/model/Vector2Input.md +20 -0
- package/dist/docs/reference/model/{Vector2.md → Vector2Tuple.md} +3 -3
- package/dist/docs/reference/model/Vector3-type.md +282 -0
- package/dist/docs/reference/model/Vector3Input.md +20 -0
- package/dist/docs/reference/model/{Vector3.md → Vector3Tuple.md} +3 -3
- 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 +4 -4
- package/dist/docs/reference/model/castSegment.md +40 -0
- package/dist/docs/reference/model/categories/boolean-operations.md +4 -4
- package/dist/docs/reference/model/categories/bounded-surfaces.md +3 -3
- package/dist/docs/reference/model/categories/contracts.md +2 -2
- package/dist/docs/reference/model/categories/core-values-errors.md +5 -5
- package/dist/docs/reference/model/categories/explicit-profiles.md +3 -3
- 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 +7 -8
- 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 +3 -3
- package/dist/docs/reference/model/categories/resolution.md +2 -2
- package/dist/docs/reference/model/categories/sections.md +10 -8
- package/dist/docs/reference/model/categories/threads.md +5 -5
- package/dist/docs/reference/model/categories/transforms-placement.md +27 -13
- package/dist/docs/reference/model/circle.md +1 -1
- package/dist/docs/reference/model/components.md +10 -7
- 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 +2 -2
- 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 +2 -2
- package/dist/docs/reference/model/hull.md +2 -2
- 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 +3 -3
- package/dist/docs/reference/model/inspectSection.md +1 -1
- package/dist/docs/reference/model/inspectSolid.md +1 -1
- package/dist/docs/reference/model/internalThreadCutter.md +4 -4
- package/dist/docs/reference/model/intersect.md +1 -1
- package/dist/docs/reference/model/isEmpty.md +2 -2
- 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 +4 -4
- package/dist/docs/reference/model/regularPolygon.md +1 -1
- package/dist/docs/reference/model/revolve.md +5 -4
- package/dist/docs/reference/model/solidFromMesh.md +1 -1
- package/dist/docs/reference/model/sphere.md +1 -1
- package/dist/docs/reference/model/split.md +1 -1
- package/dist/docs/reference/model/splitByPlane.md +1 -1
- package/dist/docs/reference/model/star.md +4 -4
- package/dist/docs/reference/model/stroke.md +74 -0
- 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 +39 -0
- package/dist/docs/reference/model/transform3.md +39 -0
- 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 +32 -0
- package/dist/docs/reference/model/vector3.md +39 -0
- package/dist/docs/reference/model.md +9 -8
- package/dist/docs/reference/text/Bounds2.md +4 -4
- package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +1 -1
- package/dist/docs/reference/text/Vector2Tuple.md +7 -0
- package/dist/docs/reference/text/VectorFont.md +2 -2
- package/dist/docs/reference/text/VectorFontOptions.md +1 -1
- package/dist/docs/reference/text/VectorTextArcBaseline.md +3 -3
- package/dist/docs/reference/text/VectorTextLayout.md +1 -1
- package/dist/docs/reference/text/VectorTextLayoutOptions.md +1 -1
- package/dist/docs/reference/text/VectorTextMetrics.md +1 -1
- package/dist/docs/reference/text/VectorTextOptions.md +1 -1
- package/dist/docs/reference/text/categories/font-preparation.md +4 -4
- 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/deferred-context.js +11 -181
- 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 +11 -8
- package/dist/engine/operation-environment.js +2 -2
- package/dist/engine/pattern-operations.js +3 -3
- 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 +8 -7
- package/dist/engine/profile-mesh.js +7 -7
- package/dist/engine/recipe-realization.js +35 -21
- package/dist/engine/section-operations.js +52 -11
- package/dist/engine/session-graph.js +1 -1
- package/dist/engine/session-native.js +1 -1
- package/dist/engine/session-snapshot.js +17 -6
- package/dist/engine/session.js +13 -8
- package/dist/engine/shape-anchors.js +5 -11
- package/dist/engine/transform-operations.js +66 -49
- 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 +13 -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 +20 -0
- package/dist/geometry/math/vector-value.js +168 -0
- package/dist/geometry/math/vector2.js +80 -0
- package/dist/geometry/math/vector3.js +37 -7
- package/dist/geometry/mechanical/gear-motion.js +8 -5
- 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-intersections.js +5 -1
- package/dist/geometry/mesh/mesh-solid.js +7 -7
- package/dist/geometry/mesh/mesh.js +4 -15
- package/dist/geometry/paths/closest-point.js +63 -0
- package/dist/geometry/paths/frames.js +44 -14
- 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/primitive-resolution.js +4 -1
- 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 +51 -39
- package/dist/geometry/revolve/revolve-mesh.js +12 -7
- package/dist/geometry/stroke-path.js +57 -68
- 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 +14 -14
- package/dist/geometry/sweeps/sweep-closed.js +5 -5
- package/dist/geometry/sweeps/sweep-mesh.js +9 -3
- package/dist/geometry/sweeps/sweep-open.js +4 -4
- package/dist/geometry/sweeps/validation.js +4 -7
- package/dist/geometry/transform-chain.js +172 -0
- package/dist/geometry/transform-geometry.js +27 -30
- package/dist/geometry/transform-matrix.js +14 -0
- package/dist/geometry/transform2.js +60 -0
- package/dist/geometry/transform3.js +70 -26
- package/dist/index.js +4 -0
- package/dist/model/execution-binding.js +10 -5
- package/dist/model/geometry-recipes.js +15 -0
- package/dist/{engine → model}/immutable-generation-data.js +88 -6
- package/dist/model/operation-dispatch.js +10 -3
- package/dist/model/operations.js +45 -35
- package/dist/model/recipe-declaration.js +199 -0
- package/dist/model/shape-handles.js +17 -5
- 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/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/Region.md +0 -14
- package/dist/docs/reference/geometry/StrokePathCap.md +0 -7
- package/dist/docs/reference/geometry/StrokePathJoin.md +0 -7
- package/dist/docs/reference/geometry/Transform3.md +0 -12
- package/dist/docs/reference/geometry/Vector2.md +0 -7
- package/dist/docs/reference/geometry/Vector3.md +0 -7
- package/dist/docs/reference/geometry/attachTransform.md +0 -73
- 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/rotateAroundAxis3.md +0 -38
- 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/geometry/transformRegion.md +0 -40
- package/dist/docs/reference/model/Transform2.md +0 -15
- package/dist/docs/reference/model/fromRegion.md +0 -33
- package/dist/docs/reference/model/rayCast.md +0 -40
- package/dist/docs/reference/model/toRegion.md +0 -33
- package/dist/docs/reference/model/toTriangleMesh.md +0 -27
- package/dist/docs/reference/text/Vector2.md +0 -7
- package/dist/engine/geometry-recipes.js +0 -12
- package/dist/engine/pattern-transform.js +0 -9
- package/dist/geometry/paths/path.js +0 -32
|
@@ -28,4 +28,4 @@ the same hand. The function validates those conjugate pitch invariants.
|
|
|
28
28
|
- [CylindricalGearPairDimensions](CylindricalGearPairDimensions.md)
|
|
29
29
|
- [CylindricalGearPairSpec](CylindricalGearPairSpec.md)
|
|
30
30
|
|
|
31
|
-
Package: `@metamesh/modeling@0.
|
|
31
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Resolves intermediate profile copies for linear extrusion from physical curve resolution.
|
|
4
4
|
|
|
5
|
-
**resolveExtrusionDivisions**(`profile`: [`Contour`](Contour.md) \| [`
|
|
5
|
+
**resolveExtrusionDivisions**(`profile`: [`Contour`](Contour.md) \| [`RegionData`](RegionData.md), `height`: `number`, `options?`: [`ExtrusionSamplingOptions`](ExtrusionSamplingOptions.md)): `number`
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -16,7 +16,7 @@ Exceeding the selected maxPathPoints ceiling raises `COMPLEXITY_LIMIT` instead o
|
|
|
16
16
|
|
|
17
17
|
<a id="profile"></a>
|
|
18
18
|
|
|
19
|
-
**`profile`** · [`Contour`](Contour.md) \| [`
|
|
19
|
+
**`profile`** · [`Contour`](Contour.md) \| [`RegionData`](RegionData.md) · Required
|
|
20
20
|
|
|
21
21
|
Ordered XY millimetre contours with implicit closing edges.
|
|
22
22
|
|
|
@@ -48,11 +48,11 @@ Twist, scale, exact divisions, and physical resolution controls.
|
|
|
48
48
|
|
|
49
49
|
Operation-level physical policy over the nearest model scope.
|
|
50
50
|
|
|
51
|
-
- [`scaleTop`](ExtrusionSamplingOptions.md#scaletop) · `number` \| [`
|
|
51
|
+
- [`scaleTop`](ExtrusionSamplingOptions.md#scaletop) · `number` \| [`Vector2Input`](Vector2Input.md) · Optional
|
|
52
52
|
|
|
53
53
|
Finite uniform or XY scale of the top profile; defaults to one.
|
|
54
54
|
|
|
55
|
-
- [`
|
|
55
|
+
- [`twist`](ExtrusionSamplingOptions.md#twist) · `number` · Optional
|
|
56
56
|
|
|
57
57
|
Finite rotation of the top profile about +Z, in degrees; defaults to zero.
|
|
58
58
|
|
|
@@ -69,6 +69,6 @@ Number of intermediate copies, excluding the two end profiles.
|
|
|
69
69
|
|
|
70
70
|
- [Contour](Contour.md)
|
|
71
71
|
- [ExtrusionSamplingOptions](ExtrusionSamplingOptions.md)
|
|
72
|
-
- [
|
|
72
|
+
- [RegionData](RegionData.md)
|
|
73
73
|
|
|
74
|
-
Package: `@metamesh/modeling@0.
|
|
74
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -56,4 +56,4 @@ A complete tolerance policy including the scale-resolved distance.
|
|
|
56
56
|
- [GeometryToleranceOptions](GeometryToleranceOptions.md)
|
|
57
57
|
- [ResolvedGeometryTolerance](ResolvedGeometryTolerance.md)
|
|
58
58
|
|
|
59
|
-
Package: `@metamesh/modeling@0.
|
|
59
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -7,7 +7,7 @@ Resolves a role-independent, start-aligned facet count from the larger female ma
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
An exact `circularSegments` value must already be divisible by `starts`; it is never silently
|
|
10
|
-
raised. Adaptive policies align upward and fail if that would exceed `
|
|
10
|
+
raised. Adaptive policies align upward and fail if that would exceed `maxSegments`.
|
|
11
11
|
|
|
12
12
|
## Parameters
|
|
13
13
|
|
|
@@ -19,7 +19,7 @@ raised. Adaptive policies align upward and fail if that would exceed `maximumSeg
|
|
|
19
19
|
|
|
20
20
|
Nominal major diameter before role-specific compensation.
|
|
21
21
|
|
|
22
|
-
- [`profile`](ThreadCircularSegmentsOptions.md#profile) · [`ThreadProfile`](ThreadProfile.md) · Required
|
|
22
|
+
- [`profile`](ThreadCircularSegmentsOptions.md#profile) · [`ThreadProfile`](ThreadProfile-type.md) · Required
|
|
23
23
|
|
|
24
24
|
Validated mating profile whose pitch and flank capacities govern tessellation.
|
|
25
25
|
|
|
@@ -31,7 +31,7 @@ raised. Adaptive policies align upward and fail if that would exceed `maximumSeg
|
|
|
31
31
|
|
|
32
32
|
Printable fit whose larger compensated female envelope governs tessellation.
|
|
33
33
|
|
|
34
|
-
- [`
|
|
34
|
+
- [`maxRadialOutset`](ThreadCircularSegmentsOptions.md#maxradialoutset) · `number` · Optional
|
|
35
35
|
|
|
36
36
|
Maximum active female face outset beyond the compensated major envelope, in millimetres.
|
|
37
37
|
This keeps a compensated male/female pair on one role-independent grid when an internal
|
|
@@ -56,4 +56,4 @@ raised. Adaptive policies align upward and fail if that would exceed `maximumSeg
|
|
|
56
56
|
|
|
57
57
|
- [ThreadCircularSegmentsOptions](ThreadCircularSegmentsOptions.md)
|
|
58
58
|
|
|
59
|
-
Package: `@metamesh/modeling@0.
|
|
59
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Revolves a non-duplicated closed `[radius, z]` profile around +Z.
|
|
4
4
|
|
|
5
|
-
`const` **revolveMesh**: (`
|
|
5
|
+
`const` **revolveMesh**: (`input`: [`Path2Input`](Path2Input.md), `options?`: [`RevolveOptions`](RevolveOptions.md)) => [`TriangleMesh`](TriangleMesh.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -12,21 +12,20 @@ axis is emitted once and joined as a triangle fan, avoiding coincident seam
|
|
|
12
12
|
vertices and zero-area quads. Profile edges that lie entirely on the axis
|
|
13
13
|
collapse to the solid's interior and are intentionally omitted.
|
|
14
14
|
Profile coordinates must fit finite Float32 mesh storage.
|
|
15
|
+
Path2 profiles must be closed; raw point collections have an implicit closing edge.
|
|
15
16
|
|
|
16
17
|
## Example: Partial revolution with end caps
|
|
17
18
|
|
|
18
19
|
```ts
|
|
19
20
|
// Each point is [radius, Z]; the profile seam is implicit.
|
|
20
|
-
revolveMesh([[0, 0], [12, 0], [8, 20], [0, 20]], {
|
|
21
|
+
revolveMesh([[0, 0], [12, 0], [8, 20], [0, 20]], { degrees: 270 });
|
|
21
22
|
```
|
|
22
23
|
|
|
23
24
|
## Parameters
|
|
24
25
|
|
|
25
|
-
<a id="
|
|
26
|
+
<a id="input"></a>
|
|
26
27
|
|
|
27
|
-
**`
|
|
28
|
-
|
|
29
|
-
Closed CCW `[radius, z]` profile without a duplicated seam point.
|
|
28
|
+
**`input`** · [`Path2Input`](Path2Input.md) · Required
|
|
30
29
|
|
|
31
30
|
|
|
32
31
|
|
|
@@ -47,9 +46,10 @@ Optional physical or exact circumferential sampling controls. Defaults to `{}`.
|
|
|
47
46
|
|
|
48
47
|
Operation-level physical tessellation policy over the active model-wide policy.
|
|
49
48
|
|
|
50
|
-
- [`
|
|
49
|
+
- [`degrees`](RevolveOptions.md#degrees) · `number` · Optional · Default: `360`
|
|
51
50
|
|
|
52
|
-
Positive
|
|
51
|
+
Positive sweep in degrees, no greater than 360. Defaults to a full revolution;
|
|
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
55
|
while exact counts that imply fewer intervals reject. Pure revolveMesh supports one interval.
|
|
@@ -69,8 +69,8 @@ A closed indexed triangle mesh revolved counter-clockwise around +Z.
|
|
|
69
69
|
|
|
70
70
|
## Related APIs
|
|
71
71
|
|
|
72
|
+
- [Path2Input](Path2Input.md)
|
|
72
73
|
- [RevolveOptions](RevolveOptions.md)
|
|
73
74
|
- [TriangleMesh](TriangleMesh.md)
|
|
74
|
-
- [Vector2](Vector2.md)
|
|
75
75
|
|
|
76
|
-
Package: `@metamesh/modeling@0.
|
|
76
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# rotate2
|
|
2
|
+
|
|
3
|
+
Rotates a finite vector counter-clockwise in XY by `degrees` about the origin. Throws `NON_FINITE_VALUE` for nonfinite coordinates, angles, or derived coordinates.
|
|
4
|
+
|
|
5
|
+
`const` **rotate2**: (`vector`: [`Vector2Tuple`](Vector2Tuple.md), `degrees`: `number`) => [`Vector2Tuple`](Vector2Tuple.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Parameters
|
|
10
|
+
|
|
11
|
+
<a id="vector"></a>
|
|
12
|
+
|
|
13
|
+
**`vector`** · [`Vector2Tuple`](Vector2Tuple.md) · Required
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<a id="degrees"></a>
|
|
18
|
+
|
|
19
|
+
**`degrees`** · `number` · Required
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## Returns
|
|
24
|
+
|
|
25
|
+
[`Vector2Tuple`](Vector2Tuple.md)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
## Related APIs
|
|
29
|
+
|
|
30
|
+
- [Vector2Tuple](Vector2Tuple.md)
|
|
31
|
+
|
|
32
|
+
## Guides
|
|
33
|
+
|
|
34
|
+
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
35
|
+
|
|
36
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Creates a right-handed axis-angle rotation transform.
|
|
4
4
|
|
|
5
|
-
**rotationTransform3**(`axis`: [`
|
|
5
|
+
**rotationTransform3**(`axis`: [`Vector3Tuple`](Vector3Tuple.md), `angle`: [`AxisAngleRotation3`](AxisAngleRotation3.md), `tolerance?`: [`GeometryToleranceOptions`](GeometryToleranceOptions.md)): [`Transform3Matrix`](Transform3Matrix.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,7 +10,7 @@ Creates a right-handed axis-angle rotation transform.
|
|
|
10
10
|
|
|
11
11
|
<a id="axis"></a>
|
|
12
12
|
|
|
13
|
-
**`axis`** · [`
|
|
13
|
+
**`axis`** · [`Vector3Tuple`](Vector3Tuple.md) · Required
|
|
14
14
|
|
|
15
15
|
Rotation axis; normalization is performed internally.
|
|
16
16
|
|
|
@@ -34,7 +34,7 @@ Optional zero-length comparison overrides.
|
|
|
34
34
|
|
|
35
35
|
## Returns
|
|
36
36
|
|
|
37
|
-
[`
|
|
37
|
+
[`Transform3Matrix`](Transform3Matrix.md)
|
|
38
38
|
|
|
39
39
|
A frozen row-major transform.
|
|
40
40
|
|
|
@@ -43,7 +43,11 @@ A frozen row-major transform.
|
|
|
43
43
|
|
|
44
44
|
- [AxisAngleRotation3](AxisAngleRotation3.md)
|
|
45
45
|
- [GeometryToleranceOptions](GeometryToleranceOptions.md)
|
|
46
|
-
- [
|
|
47
|
-
- [
|
|
46
|
+
- [Transform3Matrix](Transform3Matrix.md)
|
|
47
|
+
- [Vector3Tuple](Vector3Tuple.md)
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
## Guides
|
|
50
|
+
|
|
51
|
+
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
52
|
+
|
|
53
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Replaces each vertex of a non-duplicated closed polyline with a sampled quadratic corner in the same coordinate system as the input.
|
|
4
4
|
|
|
5
|
-
`const` **roundClosedPolylinePath**: (`
|
|
5
|
+
`const` **roundClosedPolylinePath**: (`input`: [`Path3Input`](Path3Input.md), `radius`: `number`, `segmentsPerCorner`: `number`, `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>) => readonly [`Vector3Tuple`](Vector3Tuple.md)[]
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,12 +10,13 @@ Replaces each vertex of a non-duplicated closed polyline with a sampled quadrati
|
|
|
10
10
|
45% of adjacent segment lengths to prevent neighboring corners from crossing.
|
|
11
11
|
The returned path does not duplicate its closing point.
|
|
12
12
|
Coordinates and radius must be finite; input and output are each limited by maxPathPoints (default 100000).
|
|
13
|
+
Requires a closed path value; raw tuples are interpreted as closed. Invalid inputs throw GeometryError.
|
|
13
14
|
|
|
14
15
|
## Parameters
|
|
15
16
|
|
|
16
|
-
<a id="
|
|
17
|
+
<a id="input"></a>
|
|
17
18
|
|
|
18
|
-
**`
|
|
19
|
+
**`input`** · [`Path3Input`](Path3Input.md) · Required
|
|
19
20
|
|
|
20
21
|
|
|
21
22
|
|
|
@@ -39,12 +40,13 @@ Coordinates and radius must be finite; input and output are each limited by maxP
|
|
|
39
40
|
|
|
40
41
|
## Returns
|
|
41
42
|
|
|
42
|
-
readonly [`
|
|
43
|
+
readonly [`Vector3Tuple`](Vector3Tuple.md)[]
|
|
43
44
|
|
|
44
45
|
|
|
45
46
|
## Related APIs
|
|
46
47
|
|
|
47
48
|
- [GeometrySamplingLimits](GeometrySamplingLimits.md)
|
|
48
|
-
- [
|
|
49
|
+
- [Path3Input](Path3Input.md)
|
|
50
|
+
- [Vector3Tuple](Vector3Tuple.md)
|
|
49
51
|
|
|
50
|
-
Package: `@metamesh/modeling@0.
|
|
52
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -33,7 +33,7 @@ Closed contour in millimetres unless positive scales convert its coordinates.
|
|
|
33
33
|
|
|
34
34
|
**`options`** · [`SampleContourOptions`](SampleContourOptions.md) · Optional
|
|
35
35
|
|
|
36
|
-
Physical resolution and unique vertex budget; defaults to 4096
|
|
36
|
+
Physical resolution and unique vertex budget; defaults to min(4096, maxProfilePoints).
|
|
37
37
|
|
|
38
38
|
- [`widthScale`](SampleContourOptions.md#widthscale) · `number` · Optional
|
|
39
39
|
|
|
@@ -47,7 +47,7 @@ Physical resolution and unique vertex budget; defaults to 4096 vertices.
|
|
|
47
47
|
|
|
48
48
|
Physical policy evaluated after scaling, using the shared curve sampler.
|
|
49
49
|
|
|
50
|
-
- [`
|
|
50
|
+
- [`maxVertices`](SampleContourOptions.md#maxvertices) · `number` · Optional
|
|
51
51
|
|
|
52
52
|
Unique output vertex ceiling, at least three, within maxProfilePoints. Defaults to min(4096, maxProfilePoints).
|
|
53
53
|
|
|
@@ -74,4 +74,4 @@ Frozen counterclockwise loop in millimetres, without a repeated seam endpoint.
|
|
|
74
74
|
- [ContourCurve](ContourCurve.md)
|
|
75
75
|
- [SampleContourOptions](SampleContourOptions.md)
|
|
76
76
|
|
|
77
|
-
Package: `@metamesh/modeling@0.
|
|
77
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -9,7 +9,7 @@ Samples a planar curve with the same guarantees and policy as spatial sampling.
|
|
|
9
9
|
## Example
|
|
10
10
|
|
|
11
11
|
```ts
|
|
12
|
-
const turn = sampleCurve2({kind: "arc", center: [0,0], radius: 10,
|
|
12
|
+
const turn = sampleCurve2({kind: "arc", center: [0,0], radius: 10, sweepAngle: 90});
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
## Parameters
|
|
@@ -32,7 +32,7 @@ const turn = sampleCurve2({kind: "arc", center: [0,0], radius: 10, sweepDegrees:
|
|
|
32
32
|
|
|
33
33
|
Millimetre sampling policy; circularSegments applies only to arcs.
|
|
34
34
|
|
|
35
|
-
- [`
|
|
35
|
+
- [`maxVertices`](CurveSamplingOptions.md#maxvertices) · `number` · Optional
|
|
36
36
|
|
|
37
37
|
Output vertex ceiling of at least two; may only lower limits.maxPathPoints.
|
|
38
38
|
|
|
@@ -58,4 +58,4 @@ frozen. At stationary tangents, outgoing secants are preferred and endpoints use
|
|
|
58
58
|
- [CurveSamplingOptions](CurveSamplingOptions.md)
|
|
59
59
|
- [SampledCurve2](SampledCurve2.md)
|
|
60
60
|
|
|
61
|
-
Package: `@metamesh/modeling@0.
|
|
61
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -32,7 +32,7 @@ const path = sampleCurve3({kind: "cubic", start: [0,0,0], control1: [5,0,0], con
|
|
|
32
32
|
|
|
33
33
|
Millimetre sampling policy; circularSegments applies only to arcs.
|
|
34
34
|
|
|
35
|
-
- [`
|
|
35
|
+
- [`maxVertices`](CurveSamplingOptions.md#maxvertices) · `number` · Optional
|
|
36
36
|
|
|
37
37
|
Output vertex ceiling of at least two; may only lower limits.maxPathPoints.
|
|
38
38
|
|
|
@@ -58,4 +58,4 @@ bound the full control hull. Full-circle arcs repeat their endpoint; closed poly
|
|
|
58
58
|
- [CurveSamplingOptions](CurveSamplingOptions.md)
|
|
59
59
|
- [SampledCurve3](SampledCurve3.md)
|
|
60
60
|
|
|
61
|
-
Package: `@metamesh/modeling@0.
|
|
61
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -55,4 +55,4 @@ seam point, and contains no holes. Its center is the origin and its axis is
|
|
|
55
55
|
- [CylindricalGearOutlineOptions](CylindricalGearOutlineOptions.md)
|
|
56
56
|
- [CylindricalGearSpec](CylindricalGearSpec.md)
|
|
57
57
|
|
|
58
|
-
Package: `@metamesh/modeling@0.
|
|
58
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# sampleHelix
|
|
2
2
|
|
|
3
|
-
Creates `segments + 1` points including exact helix endpoints from finite positive dimensions. Integrated weights must remain finite. The maxPathPoints ceiling defaults to 100000; excessive exact counts reject before evaluating axial weights or allocating sample arrays.
|
|
3
|
+
Creates `segments + 1` points including exact helix endpoints from finite positive dimensions. Integrated weights must remain finite. The maxPathPoints ceiling defaults to 100000; excessive exact counts reject before evaluating axial weights or allocating sample arrays. Invalid inputs use GeometryError; exceptions thrown by axialWeight propagate unchanged.
|
|
4
4
|
|
|
5
5
|
`const` **sampleHelix**: (`{
|
|
6
6
|
turns,
|
|
@@ -9,7 +9,7 @@ Creates `segments + 1` points including exact helix endpoints from finite positi
|
|
|
9
9
|
segments,
|
|
10
10
|
limits,
|
|
11
11
|
axialWeight,
|
|
12
|
-
}`: [`SampleHelixOptions`](SampleHelixOptions.md)) => readonly [`
|
|
12
|
+
}`: [`SampleHelixOptions`](SampleHelixOptions.md)) => readonly [`Vector3Tuple`](Vector3Tuple.md)[]
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
@@ -30,12 +30,12 @@ Creates `segments + 1` points including exact helix endpoints from finite positi
|
|
|
30
30
|
|
|
31
31
|
## Returns
|
|
32
32
|
|
|
33
|
-
readonly [`
|
|
33
|
+
readonly [`Vector3Tuple`](Vector3Tuple.md)[]
|
|
34
34
|
|
|
35
35
|
|
|
36
36
|
## Related APIs
|
|
37
37
|
|
|
38
38
|
- [SampleHelixOptions](SampleHelixOptions.md)
|
|
39
|
-
- [
|
|
39
|
+
- [Vector3Tuple](Vector3Tuple.md)
|
|
40
40
|
|
|
41
|
-
Package: `@metamesh/modeling@0.
|
|
41
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Samples the open top boundary of a finite rack in its XY pitch plane.
|
|
4
4
|
|
|
5
|
-
**sampleRackToothPath**(`spec`: [`RackPitchSpec`](RackPitchSpec.md), `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>): [`
|
|
5
|
+
**sampleRackToothPath**(`spec`: [`RackPitchSpec`](RackPitchSpec.md), `limits?`: `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\>): [`Path2Data`](Path2Data.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -27,13 +27,13 @@ the owning generator.
|
|
|
27
27
|
|
|
28
28
|
## Returns
|
|
29
29
|
|
|
30
|
-
[`
|
|
30
|
+
[`Path2Data`](Path2Data.md)
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
## Related APIs
|
|
34
34
|
|
|
35
35
|
- [GeometrySamplingLimits](GeometrySamplingLimits.md)
|
|
36
|
-
- [
|
|
36
|
+
- [Path2Data](Path2Data.md)
|
|
37
37
|
- [RackPitchSpec](RackPitchSpec.md)
|
|
38
38
|
|
|
39
|
-
Package: `@metamesh/modeling@0.
|
|
39
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Samples 1–31 line/cubic segments into a deeply immutable open [radius,height] polyline. Anchors must progress strictly upward; nonnegative-radius cubic controls must have ordered heights between their endpoints. Cubics use de Casteljau subdivision with a conservative control-hull chord-error bound. Lines also obey the optional physical edge-length ceiling. Neither normalized coordinates nor editor metadata are required. Endpoints are retained once; no axis closure, winding normalization, or manufacturing repair is performed.
|
|
4
4
|
|
|
5
|
-
**sampleSideProfile**(`curve`: [`SideProfileCurve`](SideProfileCurve.md), `options?`: [`SampleSideProfileOptions`](SampleSideProfileOptions.md)): readonly [`
|
|
5
|
+
**sampleSideProfile**(`curve`: [`SideProfileCurve`](SideProfileCurve.md), `options?`: [`SampleSideProfileOptions`](SampleSideProfileOptions.md)): readonly [`Vector2Tuple`](Vector2Tuple.md)[]
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -29,7 +29,7 @@ Open outline in millimetres unless the positive scales convert its coordinates.
|
|
|
29
29
|
|
|
30
30
|
**`options`** · [`SampleSideProfileOptions`](SampleSideProfileOptions.md) · Optional
|
|
31
31
|
|
|
32
|
-
Physical resolution and output budget; defaults to 4096
|
|
32
|
+
Physical resolution and output budget; defaults to min(4096, maxProfilePoints).
|
|
33
33
|
|
|
34
34
|
- [`radiusScale`](SampleSideProfileOptions.md#radiusscale) · `number` · Optional
|
|
35
35
|
|
|
@@ -43,7 +43,7 @@ Physical resolution and output budget; defaults to 4096 vertices.
|
|
|
43
43
|
|
|
44
44
|
Shared physical policy, evaluated after scaling; exact circular counts do not affect curves.
|
|
45
45
|
|
|
46
|
-
- [`
|
|
46
|
+
- [`maxVertices`](SampleSideProfileOptions.md#maxvertices) · `number` · Optional
|
|
47
47
|
|
|
48
48
|
Maximum output vertex count within maxProfilePoints. Defaults to the smaller of 4096 and that ceiling.
|
|
49
49
|
|
|
@@ -55,7 +55,7 @@ Physical resolution and output budget; defaults to 4096 vertices.
|
|
|
55
55
|
|
|
56
56
|
## Returns
|
|
57
57
|
|
|
58
|
-
readonly [`
|
|
58
|
+
readonly [`Vector2Tuple`](Vector2Tuple.md)[]
|
|
59
59
|
|
|
60
60
|
Frozen open polyline in millimetres, ordered from lowest to highest anchor.
|
|
61
61
|
|
|
@@ -68,6 +68,6 @@ Frozen open polyline in millimetres, ordered from lowest to highest anchor.
|
|
|
68
68
|
|
|
69
69
|
- [SampleSideProfileOptions](SampleSideProfileOptions.md)
|
|
70
70
|
- [SideProfileCurve](SideProfileCurve.md)
|
|
71
|
-
- [
|
|
71
|
+
- [Vector2Tuple](Vector2Tuple.md)
|
|
72
72
|
|
|
73
|
-
Package: `@metamesh/modeling@0.
|
|
73
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -32,7 +32,7 @@ Samples evenly phased thread helices with finite `lead = pitch * starts`. All st
|
|
|
32
32
|
|
|
33
33
|
Explicit aggregate path allocation ceilings across all starts.
|
|
34
34
|
|
|
35
|
-
- [`
|
|
35
|
+
- [`phase`](ThreadHelixOptions.md#phase) · `number` · Optional
|
|
36
36
|
|
|
37
37
|
Angular offset of the first start in degrees. Default: `0`.
|
|
38
38
|
|
|
@@ -60,4 +60,4 @@ Samples evenly phased thread helices with finite `lead = pitch * starts`. All st
|
|
|
60
60
|
- [SampledThreadHelices](SampledThreadHelices.md)
|
|
61
61
|
- [ThreadHelixOptions](ThreadHelixOptions.md)
|
|
62
62
|
|
|
63
|
-
Package: `@metamesh/modeling@0.
|
|
63
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# scale2
|
|
2
|
+
|
|
3
|
+
Multiplies a vector by a dimensionless scalar.
|
|
4
|
+
|
|
5
|
+
`const` **scale2**: (`vector`: [`Vector2Tuple`](Vector2Tuple.md), `scale`: `number`) => [`Vector2Tuple`](Vector2Tuple.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Parameters
|
|
10
|
+
|
|
11
|
+
<a id="vector"></a>
|
|
12
|
+
|
|
13
|
+
**`vector`** · [`Vector2Tuple`](Vector2Tuple.md) · Required
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<a id="scale"></a>
|
|
18
|
+
|
|
19
|
+
**`scale`** · `number` · Required
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## Returns
|
|
24
|
+
|
|
25
|
+
[`Vector2Tuple`](Vector2Tuple.md)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
## Related APIs
|
|
29
|
+
|
|
30
|
+
- [Vector2Tuple](Vector2Tuple.md)
|
|
31
|
+
|
|
32
|
+
## Guides
|
|
33
|
+
|
|
34
|
+
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
35
|
+
|
|
36
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Multiplies a vector by a dimensionless scalar.
|
|
4
4
|
|
|
5
|
-
`const` **scale3**: (`vector`: [`
|
|
5
|
+
`const` **scale3**: (`vector`: [`Vector3Tuple`](Vector3Tuple.md), `scale`: `number`) => [`Vector3Tuple`](Vector3Tuple.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -16,7 +16,7 @@ scale3([1, 2, 3], 2); // [2, 4, 6]
|
|
|
16
16
|
|
|
17
17
|
<a id="vector"></a>
|
|
18
18
|
|
|
19
|
-
**`vector`** · [`
|
|
19
|
+
**`vector`** · [`Vector3Tuple`](Vector3Tuple.md) · Required
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
@@ -28,11 +28,15 @@ scale3([1, 2, 3], 2); // [2, 4, 6]
|
|
|
28
28
|
|
|
29
29
|
## Returns
|
|
30
30
|
|
|
31
|
-
[`
|
|
31
|
+
[`Vector3Tuple`](Vector3Tuple.md)
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
## Related APIs
|
|
35
35
|
|
|
36
|
-
- [
|
|
36
|
+
- [Vector3Tuple](Vector3Tuple.md)
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
## Guides
|
|
39
|
+
|
|
40
|
+
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
41
|
+
|
|
42
|
+
Package: `@metamesh/modeling@0.15.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Creates an immutable axis-aligned scale transform.
|
|
4
4
|
|
|
5
|
-
**scaleTransform3**(`factors`: [`
|
|
5
|
+
**scaleTransform3**(`factors`: [`Vector3Tuple`](Vector3Tuple.md)): [`Transform3Matrix`](Transform3Matrix.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -13,7 +13,7 @@ they collapse volume and cannot be inverted.
|
|
|
13
13
|
|
|
14
14
|
<a id="factors"></a>
|
|
15
15
|
|
|
16
|
-
**`factors`** · [`
|
|
16
|
+
**`factors`** · [`Vector3Tuple`](Vector3Tuple.md) · Required
|
|
17
17
|
|
|
18
18
|
Finite, non-zero XYZ scale factors.
|
|
19
19
|
|
|
@@ -21,14 +21,18 @@ Finite, non-zero XYZ scale factors.
|
|
|
21
21
|
|
|
22
22
|
## Returns
|
|
23
23
|
|
|
24
|
-
[`
|
|
24
|
+
[`Transform3Matrix`](Transform3Matrix.md)
|
|
25
25
|
|
|
26
26
|
A frozen row-major transform.
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
## Related APIs
|
|
30
30
|
|
|
31
|
-
- [
|
|
32
|
-
- [
|
|
31
|
+
- [Transform3Matrix](Transform3Matrix.md)
|
|
32
|
+
- [Vector3Tuple](Vector3Tuple.md)
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
## Guides
|
|
35
|
+
|
|
36
|
+
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
37
|
+
|
|
38
|
+
Package: `@metamesh/modeling@0.15.0`.
|