@metamesh/modeling 0.15.0 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/README.md +33 -6
- package/dist/api/engine.d.ts +4 -3
- package/dist/api/geometry.d.ts +529 -242
- package/dist/api/index.d.ts +363 -104
- package/dist/api/text.d.ts +6 -6
- package/dist/docs/guides/concepts.md +295 -106
- package/dist/docs/guides/fonts.md +9 -8
- package/dist/docs/guides/fundamentals.md +17 -21
- package/dist/docs/guides/generation.md +24 -23
- package/dist/docs/guides/hosting.md +25 -20
- package/dist/docs/guides/recipes.md +35 -30
- package/dist/docs/guides/standalone-model.md +42 -0
- package/dist/docs/manifest.json +846 -243
- 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 +1 -1
- package/dist/docs/reference/engine/ModelSession.md +1 -1
- package/dist/docs/reference/engine/ModelSnapshot.md +2 -2
- package/dist/docs/reference/engine/SessionOptions.md +1 -1
- package/dist/docs/reference/engine/SnapshotPart.md +7 -4
- package/dist/docs/reference/engine/categories/host-lifecycle.md +8 -3
- package/dist/docs/reference/engine/createModelEngine.md +1 -1
- package/dist/docs/reference/engine/defaultModelingLimits.md +1 -1
- package/dist/docs/reference/engine/modelingWasmUrl.md +1 -1
- package/dist/docs/reference/engine/validateModel.md +1 -1
- package/dist/docs/reference/engine.md +6 -2
- package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +1 -1
- package/dist/docs/reference/geometry/Anchor3-type.md +6 -5
- package/dist/docs/reference/geometry/ArcCurve2.md +7 -3
- package/dist/docs/reference/geometry/ArcCurve3.md +9 -5
- package/dist/docs/reference/geometry/AttachOptions.md +2 -1
- package/dist/docs/reference/geometry/AxisAngleRotation3.md +2 -1
- package/dist/docs/reference/geometry/Bounds2-type.md +127 -0
- package/dist/docs/reference/geometry/Bounds2Data.md +45 -0
- package/dist/docs/reference/geometry/Bounds2Input.md +21 -0
- package/dist/docs/reference/geometry/Bounds3-type.md +127 -0
- package/dist/docs/reference/geometry/Bounds3Data.md +45 -0
- package/dist/docs/reference/geometry/Bounds3Input.md +21 -0
- package/dist/docs/reference/geometry/BoundsFit2.md +6 -5
- package/dist/docs/reference/geometry/BoundsFit3.md +6 -5
- package/dist/docs/reference/geometry/BoundsFitOptions.md +2 -1
- package/dist/docs/reference/geometry/BoundsFromSizeOptions.md +2 -1
- package/dist/docs/reference/geometry/BoxAnchorFace.md +2 -1
- package/dist/docs/reference/geometry/BoxAnchorOptions.md +5 -4
- package/dist/docs/reference/geometry/BoxEdge.md +1 -1
- package/dist/docs/reference/geometry/BoxEdgeSelection.md +1 -1
- package/dist/docs/reference/geometry/BoxEdgeTreatments.md +1 -1
- package/dist/docs/reference/geometry/BoxOptions.md +3 -3
- package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +8 -1
- package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/CircleContourOptions.md +5 -1
- package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +1 -1
- package/dist/docs/reference/geometry/CircularResolutionOptions.md +1 -1
- package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +6 -1
- package/dist/docs/reference/geometry/ClearanceHoleFit.md +8 -1
- package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +6 -1
- package/dist/docs/reference/geometry/Contour.md +10 -4
- package/dist/docs/reference/geometry/ContourCurve.md +5 -1
- package/dist/docs/reference/geometry/ContourPoint.md +6 -1
- package/dist/docs/reference/geometry/ContourSegment.md +5 -1
- package/dist/docs/reference/geometry/CorrespondingComponent.md +5 -1
- package/dist/docs/reference/geometry/CorrespondingContour.md +5 -1
- package/dist/docs/reference/geometry/CorrespondingProfile.md +5 -1
- package/dist/docs/reference/geometry/CorrespondingProfileStation.md +5 -1
- package/dist/docs/reference/geometry/CubicBezierCurve2.md +10 -6
- package/dist/docs/reference/geometry/CubicBezierCurve3.md +10 -6
- package/dist/docs/reference/geometry/Curve2.md +5 -1
- package/dist/docs/reference/geometry/Curve3.md +5 -1
- package/dist/docs/reference/geometry/CurveSamplingOptions.md +5 -1
- package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +7 -3
- package/dist/docs/reference/geometry/CylinderAnchorFace.md +2 -1
- package/dist/docs/reference/geometry/CylinderAnchorOptions.md +4 -3
- package/dist/docs/reference/geometry/CylinderOptions.md +1 -1
- package/dist/docs/reference/geometry/CylindricalGearDimensions.md +6 -1
- package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +8 -1
- package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +5 -1
- package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +5 -1
- package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +5 -1
- package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +6 -1
- package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +5 -1
- package/dist/docs/reference/geometry/CylindricalGearSpec.md +6 -1
- package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +1 -1
- package/dist/docs/reference/geometry/EdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/EllipseContourOptions.md +7 -3
- package/dist/docs/reference/geometry/EndTreatments.md +1 -1
- package/dist/docs/reference/geometry/ExtrudeOptions.md +5 -1
- package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +5 -1
- package/dist/docs/reference/geometry/FittedTextLayout.md +7 -3
- package/dist/docs/reference/geometry/Frame3.md +10 -6
- package/dist/docs/reference/geometry/GeometryError.md +1 -1
- package/dist/docs/reference/geometry/GeometryErrorCode.md +1 -1
- package/dist/docs/reference/geometry/GeometryErrorContext.md +1 -1
- package/dist/docs/reference/geometry/GeometryResolution.md +1 -1
- package/dist/docs/reference/geometry/GeometrySamplingLimits.md +5 -1
- package/dist/docs/reference/geometry/GeometryToleranceOptions.md +1 -1
- package/dist/docs/reference/geometry/GridPatternOptions.md +4 -4
- package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +5 -1
- package/dist/docs/reference/geometry/HeightfieldOptions.md +9 -5
- package/dist/docs/reference/geometry/HeightfieldPreflight.md +9 -4
- package/dist/docs/reference/geometry/HelicalThreadRidgeMeshOptions.md +5 -1
- package/dist/docs/reference/geometry/HelicalThreadSolidMeshOptions.md +5 -1
- package/dist/docs/reference/geometry/HelicalThreadSolidMeshPreflight.md +7 -2
- package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +4 -3
- package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +5 -1
- package/dist/docs/reference/geometry/KnuckleHingeBaseSpec.md +82 -0
- package/dist/docs/reference/geometry/KnuckleHingeDimensions.md +148 -0
- package/dist/docs/reference/geometry/KnuckleHingeInterval.md +46 -0
- package/dist/docs/reference/geometry/KnuckleHingeSamplingOptions.md +51 -0
- package/dist/docs/reference/geometry/KnuckleHingeSpec.md +22 -0
- package/dist/docs/reference/geometry/LineCurve2.md +8 -4
- package/dist/docs/reference/geometry/LineCurve3.md +8 -4
- package/dist/docs/reference/geometry/LinearPatternOptions.md +1 -1
- package/dist/docs/reference/geometry/LoftCorrespondence.md +6 -1
- package/dist/docs/reference/geometry/LoftMeshStation.md +5 -1
- package/dist/docs/reference/geometry/LoftOptions.md +5 -1
- package/dist/docs/reference/geometry/LoftPlacement.md +5 -1
- package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +5 -1
- package/dist/docs/reference/geometry/MatchProfilesOptions.md +5 -1
- package/dist/docs/reference/geometry/MetricFastenerSize.md +9 -2
- package/dist/docs/reference/geometry/MetricFastenerStandard.md +5 -1
- package/dist/docs/reference/geometry/MetricHexNutDimensions.md +6 -1
- package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +6 -1
- package/dist/docs/reference/geometry/ModelingLimits.md +1 -1
- package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +5 -1
- package/dist/docs/reference/geometry/Path2-type.md +12 -8
- package/dist/docs/reference/geometry/Path2Data.md +40 -4
- package/dist/docs/reference/geometry/Path2Input.md +8 -3
- package/dist/docs/reference/geometry/Path3-type.md +12 -8
- package/dist/docs/reference/geometry/Path3Data.md +40 -4
- package/dist/docs/reference/geometry/Path3Input.md +8 -3
- package/dist/docs/reference/geometry/PathFrame.md +9 -5
- package/dist/docs/reference/geometry/PathLocation.md +5 -1
- package/dist/docs/reference/geometry/PathNormalGuide.md +8 -4
- package/dist/docs/reference/geometry/PathOptions.md +5 -1
- package/dist/docs/reference/geometry/PathPatternOptions.md +1 -1
- package/dist/docs/reference/geometry/PathPlacement.md +8 -4
- package/dist/docs/reference/geometry/PathResamplingOptions.md +5 -1
- package/dist/docs/reference/geometry/Pivot2Options.md +2 -1
- package/dist/docs/reference/geometry/Pivot3Options.md +2 -1
- package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +8 -1
- package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +5 -1
- package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +5 -1
- package/dist/docs/reference/geometry/PlanarPatchQuality.md +7 -3
- package/dist/docs/reference/geometry/PolygonData.md +7 -2
- package/dist/docs/reference/geometry/PolylineResamplingOptions.md +5 -1
- package/dist/docs/reference/geometry/PrimitiveAttachment.md +1 -1
- package/dist/docs/reference/geometry/PrimitiveAttachmentOptions.md +1 -1
- package/dist/docs/reference/geometry/PrintableThreadFit.md +8 -1
- package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +6 -1
- package/dist/docs/reference/geometry/Profile.md +8 -2
- package/dist/docs/reference/geometry/ProfileComponent2.md +5 -1
- package/dist/docs/reference/geometry/ProfileContour2.md +8 -2
- package/dist/docs/reference/geometry/ProfileSpan2.md +7 -3
- package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +3 -3
- package/dist/docs/reference/geometry/RackPitchDimensions.md +6 -1
- package/dist/docs/reference/geometry/RackPitchSpec.md +6 -1
- package/dist/docs/reference/geometry/RadialPatternOptions.md +1 -1
- package/dist/docs/reference/geometry/RadialSizing.md +1 -1
- package/dist/docs/reference/geometry/RadialSizingOptions.md +1 -1
- package/dist/docs/reference/geometry/RectangleContourOptions.md +7 -3
- package/dist/docs/reference/geometry/RectangleCornerTreatment.md +5 -1
- package/dist/docs/reference/geometry/RectangleCornerTreatments.md +5 -1
- package/dist/docs/reference/geometry/RectangleProfileOptions.md +7 -3
- package/dist/docs/reference/geometry/RegionData.md +6 -2
- package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +5 -1
- package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +1 -1
- package/dist/docs/reference/geometry/RevolveOptions.md +5 -1
- package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/RowLayoutOptions.md +2 -1
- package/dist/docs/reference/geometry/SampleContourOptions.md +5 -1
- package/dist/docs/reference/geometry/SampleHelixOptions.md +5 -1
- package/dist/docs/reference/geometry/SampleSideProfileOptions.md +5 -1
- package/dist/docs/reference/geometry/SampledCurve2.md +8 -4
- package/dist/docs/reference/geometry/SampledCurve3.md +8 -4
- package/dist/docs/reference/geometry/SampledThreadHelices.md +7 -3
- package/dist/docs/reference/geometry/SideProfileCurve.md +5 -1
- package/dist/docs/reference/geometry/SideProfilePoint.md +6 -1
- package/dist/docs/reference/geometry/SideProfileSegment.md +5 -1
- package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +1 -1
- package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +5 -1
- package/dist/docs/reference/geometry/SphereOptions.md +1 -1
- package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/StrokeCap.md +8 -1
- package/dist/docs/reference/geometry/StrokeJoin.md +8 -1
- package/dist/docs/reference/geometry/StrokeOptions.md +5 -1
- package/dist/docs/reference/geometry/SvgImportOptions.md +5 -1
- package/dist/docs/reference/geometry/SvgRegionPreflight.md +6 -2
- package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +7 -3
- package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +6 -1
- package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +6 -1
- package/dist/docs/reference/geometry/SweepOptions.md +5 -1
- package/dist/docs/reference/geometry/SweepOrientation.md +5 -1
- package/dist/docs/reference/geometry/ThreadBevelOptions.md +5 -1
- package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +5 -1
- package/dist/docs/reference/geometry/ThreadCompensationOptions.md +5 -1
- package/dist/docs/reference/geometry/ThreadEndStyle.md +8 -1
- package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +5 -1
- package/dist/docs/reference/geometry/ThreadHandedness.md +8 -1
- package/dist/docs/reference/geometry/ThreadHelixOptions.md +5 -1
- package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +8 -1
- package/dist/docs/reference/geometry/ThreadLeadInShape.md +8 -1
- package/dist/docs/reference/geometry/ThreadProfile-type.md +7 -3
- package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +5 -1
- package/dist/docs/reference/geometry/ThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/ThreadRole.md +8 -1
- package/dist/docs/reference/geometry/ThreadedNutBevel.md +8 -1
- package/dist/docs/reference/geometry/ThreadedNutOptions.md +5 -1
- package/dist/docs/reference/geometry/ThreadedNutPreflight.md +7 -3
- package/dist/docs/reference/geometry/ThreadedNutShape.md +8 -1
- package/dist/docs/reference/geometry/ThreadedRodOptions.md +5 -1
- package/dist/docs/reference/geometry/TorusOptions.md +1 -1
- package/dist/docs/reference/geometry/Transform2-type.md +6 -5
- package/dist/docs/reference/geometry/Transform2Data.md +15 -0
- package/dist/docs/reference/geometry/Transform2Input.md +4 -3
- package/dist/docs/reference/geometry/Transform3-type.md +6 -5
- package/dist/docs/reference/geometry/Transform3Data.md +18 -0
- package/dist/docs/reference/geometry/Transform3Input.md +4 -3
- package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/TriangleMesh.md +6 -1
- package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +7 -3
- package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +5 -1
- package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +7 -3
- package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +5 -1
- package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +5 -1
- package/dist/docs/reference/geometry/TriangleMeshSignature.md +7 -3
- package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +6 -1
- package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +6 -1
- package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +5 -1
- package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +5 -1
- package/dist/docs/reference/geometry/TubeOptions.md +1 -1
- package/dist/docs/reference/geometry/Vector2-type.md +6 -5
- package/dist/docs/reference/geometry/Vector2Data.md +15 -0
- package/dist/docs/reference/geometry/Vector2Input.md +4 -3
- package/dist/docs/reference/geometry/Vector3-type.md +6 -5
- package/dist/docs/reference/geometry/Vector3Data.md +15 -0
- package/dist/docs/reference/geometry/Vector3Input.md +4 -3
- package/dist/docs/reference/geometry/VectorTextArcBaseline.md +6 -1
- package/dist/docs/reference/geometry/VectorTextLayout.md +5 -1
- package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +5 -1
- package/dist/docs/reference/geometry/VectorTextMetrics.md +7 -3
- package/dist/docs/reference/geometry/VectorTextOptions.md +5 -1
- package/dist/docs/reference/geometry/add2.md +7 -6
- package/dist/docs/reference/geometry/add3.md +7 -6
- package/dist/docs/reference/geometry/analyzeTriangleMesh.md +5 -1
- package/dist/docs/reference/geometry/analyzeTriangleMeshQuality.md +5 -1
- package/dist/docs/reference/geometry/anchor3.md +2 -1
- package/dist/docs/reference/geometry/anchorFrame3.md +5 -1
- package/dist/docs/reference/geometry/applyTransformDirection3.md +8 -7
- package/dist/docs/reference/geometry/applyTransformPoint3.md +8 -7
- package/dist/docs/reference/geometry/attachmentTransform3.md +5 -4
- package/dist/docs/reference/geometry/bounds2.md +38 -0
- package/dist/docs/reference/geometry/bounds3.md +38 -0
- package/dist/docs/reference/geometry/boundsCenter.md +12 -11
- package/dist/docs/reference/geometry/boundsFromSize.md +12 -11
- package/dist/docs/reference/geometry/boundsSize.md +12 -11
- package/dist/docs/reference/geometry/boxAnchor3.md +4 -3
- package/dist/docs/reference/geometry/categories/bounds-layout.md +23 -6
- package/dist/docs/reference/geometry/categories/curves-paths.md +21 -9
- package/dist/docs/reference/geometry/categories/mechanical.md +22 -10
- package/dist/docs/reference/geometry/categories/meshes.md +16 -7
- package/dist/docs/reference/geometry/categories/pattern-placement.md +6 -4
- package/dist/docs/reference/geometry/categories/primitive-options.md +8 -2
- package/dist/docs/reference/geometry/categories/profiles-regions.md +21 -12
- package/dist/docs/reference/geometry/categories/resolution-errors.md +5 -3
- package/dist/docs/reference/geometry/categories/transforms-math.md +21 -12
- package/dist/docs/reference/geometry/categories/vector-import.md +11 -5
- package/dist/docs/reference/geometry/circleContour.md +5 -1
- package/dist/docs/reference/geometry/closeToAxis.md +14 -5
- package/dist/docs/reference/geometry/compensateThreadDiameters.md +5 -1
- package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +5 -1
- package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +5 -1
- package/dist/docs/reference/geometry/composeTransform3.md +7 -6
- package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +5 -1
- package/dist/docs/reference/geometry/computeParallelTransportFrames.md +11 -2
- package/dist/docs/reference/geometry/computeTriangleMeshCentroid.md +13 -5
- package/dist/docs/reference/geometry/computeTriangleMeshSignature.md +5 -1
- package/dist/docs/reference/geometry/containsBounds.md +10 -9
- package/dist/docs/reference/geometry/contourContainsPoint.md +8 -4
- package/dist/docs/reference/geometry/cross2.md +6 -5
- package/dist/docs/reference/geometry/cross3.md +7 -6
- package/dist/docs/reference/geometry/cylinderAnchor3.md +3 -2
- package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +5 -1
- package/dist/docs/reference/geometry/distance2.md +6 -5
- package/dist/docs/reference/geometry/distance3.md +6 -5
- package/dist/docs/reference/geometry/distributeAlongPath.md +5 -1
- package/dist/docs/reference/geometry/dot2.md +6 -5
- package/dist/docs/reference/geometry/dot3.md +6 -5
- package/dist/docs/reference/geometry/ellipseContour.md +5 -1
- package/dist/docs/reference/geometry/eulerTransform3.md +7 -6
- package/dist/docs/reference/geometry/extrudeMesh.md +5 -1
- package/dist/docs/reference/geometry/fitBounds.md +10 -9
- package/dist/docs/reference/geometry/fitTextLayout.md +13 -5
- package/dist/docs/reference/geometry/frameTransform3.md +5 -4
- package/dist/docs/reference/geometry/getMetricClearanceHoleDiameter.md +5 -1
- package/dist/docs/reference/geometry/getMetricFastenerStandard.md +5 -1
- package/dist/docs/reference/geometry/gridPatternTransforms.md +4 -4
- package/dist/docs/reference/geometry/heightfieldMesh.md +11 -2
- package/dist/docs/reference/geometry/helicalThreadRidgeMesh.md +5 -1
- package/dist/docs/reference/geometry/helicalThreadSolidMesh.md +5 -1
- package/dist/docs/reference/geometry/inverseTransform3.md +6 -5
- package/dist/docs/reference/geometry/isGeometryError.md +5 -2
- package/dist/docs/reference/geometry/joinTriangleMeshes.md +5 -1
- package/dist/docs/reference/geometry/layoutRow.md +11 -7
- package/dist/docs/reference/geometry/length2.md +5 -4
- package/dist/docs/reference/geometry/length3.md +5 -4
- package/dist/docs/reference/geometry/lerp2.md +7 -6
- package/dist/docs/reference/geometry/lerp3.md +7 -6
- package/dist/docs/reference/geometry/linearPatternTransforms.md +4 -4
- package/dist/docs/reference/geometry/loftMesh.md +5 -1
- package/dist/docs/reference/geometry/matchProfiles.md +11 -2
- package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +5 -1
- package/dist/docs/reference/geometry/meshBounds.md +8 -4
- package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +5 -1
- package/dist/docs/reference/geometry/normalize2.md +10 -6
- package/dist/docs/reference/geometry/normalize3.md +10 -6
- package/dist/docs/reference/geometry/normalizeContour.md +8 -4
- package/dist/docs/reference/geometry/normalizePolygon.md +5 -1
- package/dist/docs/reference/geometry/normalizeRegion.md +5 -1
- package/dist/docs/reference/geometry/optimizePlanarPatches.md +5 -1
- package/dist/docs/reference/geometry/path2.md +14 -2
- package/dist/docs/reference/geometry/path3.md +8 -1
- package/dist/docs/reference/geometry/pathPatternTransforms.md +9 -5
- package/dist/docs/reference/geometry/preflightHeightfield.md +11 -2
- package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +11 -2
- package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +13 -2
- package/dist/docs/reference/geometry/preflightSvgRegion.md +15 -2
- package/dist/docs/reference/geometry/preflightThreadedNut.md +12 -2
- package/dist/docs/reference/geometry/preflightThreadedRod.md +12 -2
- package/dist/docs/reference/geometry/projectOntoPlane3.md +7 -6
- package/dist/docs/reference/geometry/radialPatternTransforms.md +4 -4
- package/dist/docs/reference/geometry/rectangleContour.md +10 -3
- package/dist/docs/reference/geometry/rectangleProfile.md +10 -2
- package/dist/docs/reference/geometry/regionArea.md +5 -1
- package/dist/docs/reference/geometry/regionBounds.md +8 -4
- package/dist/docs/reference/geometry/regularPolygonContour.md +8 -4
- package/dist/docs/reference/geometry/resamplePolyline2.md +8 -4
- package/dist/docs/reference/geometry/resamplePolyline3.md +8 -4
- package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +1 -1
- package/dist/docs/reference/geometry/resolveArcSegments.md +1 -1
- package/dist/docs/reference/geometry/resolveCircularSegments.md +1 -1
- package/dist/docs/reference/geometry/resolveCylindricalGear.md +5 -1
- package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +5 -1
- package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +5 -1
- package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +5 -1
- package/dist/docs/reference/geometry/resolveGeometryTolerance.md +1 -1
- package/dist/docs/reference/geometry/resolveKnuckleHinge.md +59 -0
- package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +5 -1
- package/dist/docs/reference/geometry/resolveRackPitch.md +5 -1
- package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +5 -1
- package/dist/docs/reference/geometry/reverseTriangleMesh.md +5 -1
- package/dist/docs/reference/geometry/revolveMesh.md +5 -1
- package/dist/docs/reference/geometry/rotate2.md +6 -5
- package/dist/docs/reference/geometry/rotationTransform3.md +7 -6
- package/dist/docs/reference/geometry/roundClosedPolylinePath.md +8 -4
- package/dist/docs/reference/geometry/sampleContour.md +12 -2
- package/dist/docs/reference/geometry/sampleCurve2.md +6 -3
- package/dist/docs/reference/geometry/sampleCurve3.md +5 -1
- package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +5 -1
- package/dist/docs/reference/geometry/sampleHelix.md +13 -5
- package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +5 -1
- package/dist/docs/reference/geometry/sampleRackToothPath.md +8 -4
- package/dist/docs/reference/geometry/sampleSideProfile.md +15 -5
- package/dist/docs/reference/geometry/sampleTextContours.md +5 -1
- package/dist/docs/reference/geometry/sampleThreadHelices.md +5 -1
- package/dist/docs/reference/geometry/scale2.md +6 -5
- package/dist/docs/reference/geometry/scale3.md +6 -5
- package/dist/docs/reference/geometry/scaleTransform3.md +7 -6
- package/dist/docs/reference/geometry/signedContourArea.md +5 -1
- package/dist/docs/reference/geometry/starContour.md +8 -4
- package/dist/docs/reference/geometry/strokeRegionData.md +5 -1
- package/dist/docs/reference/geometry/subtract2.md +7 -6
- package/dist/docs/reference/geometry/subtract3.md +7 -6
- package/dist/docs/reference/geometry/sweepMesh.md +5 -1
- package/dist/docs/reference/geometry/threadProfile.md +5 -1
- package/dist/docs/reference/geometry/transform2.md +14 -7
- package/dist/docs/reference/geometry/transform3.md +16 -7
- package/dist/docs/reference/geometry/transformDeterminant3.md +5 -4
- package/dist/docs/reference/geometry/transformRegionData.md +5 -1
- package/dist/docs/reference/geometry/transformTriangleMesh.md +5 -1
- package/dist/docs/reference/geometry/translationTransform3.md +7 -6
- package/dist/docs/reference/geometry/triangulateContour.md +5 -1
- package/dist/docs/reference/geometry/validateSolidMesh.md +9 -2
- package/dist/docs/reference/geometry/validateTransform3.md +6 -5
- package/dist/docs/reference/geometry/validateTriangleMesh.md +5 -1
- package/dist/docs/reference/geometry/vector2.md +10 -2
- package/dist/docs/reference/geometry/vector3.md +10 -2
- package/dist/docs/reference/geometry.md +7 -5
- package/dist/docs/reference/model/Anchor3.md +6 -5
- package/dist/docs/reference/model/AttachOptions.md +2 -1
- package/dist/docs/reference/model/Bounds2-type.md +125 -0
- package/dist/docs/reference/model/Bounds2Data.md +44 -0
- package/dist/docs/reference/model/Bounds2Input.md +19 -0
- package/dist/docs/reference/model/Bounds3-type.md +125 -0
- package/dist/docs/reference/model/Bounds3Data.md +44 -0
- package/dist/docs/reference/model/Bounds3Input.md +19 -0
- package/dist/docs/reference/model/BoxEdge.md +1 -1
- package/dist/docs/reference/model/BoxEdgeSelection.md +1 -1
- package/dist/docs/reference/model/BoxEdgeTreatments.md +1 -1
- package/dist/docs/reference/model/BoxOptions.md +3 -3
- package/dist/docs/reference/model/ChamferedEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/CircleContourOptions.md +1 -1
- package/dist/docs/reference/model/CircleOptions.md +1 -1
- package/dist/docs/reference/model/CircularPrimitiveOptions.md +1 -1
- package/dist/docs/reference/model/Computed.md +6 -1
- package/dist/docs/reference/model/ComputedValue.md +5 -1
- package/dist/docs/reference/model/Contour.md +6 -4
- package/dist/docs/reference/model/CorrespondingComponent.md +1 -1
- package/dist/docs/reference/model/CorrespondingContour.md +1 -1
- package/dist/docs/reference/model/CorrespondingProfile.md +1 -1
- package/dist/docs/reference/model/CorrespondingProfileStation.md +1 -1
- package/dist/docs/reference/model/CylinderOptions.md +1 -1
- package/dist/docs/reference/model/DiagnosticOptions.md +6 -1
- package/dist/docs/reference/model/EdgeTreatment.md +1 -1
- package/dist/docs/reference/model/EllipseContourOptions.md +3 -3
- package/dist/docs/reference/model/EllipseOptions.md +1 -1
- package/dist/docs/reference/model/EndTreatments.md +1 -1
- package/dist/docs/reference/model/ExtrudeOptions.md +1 -1
- package/dist/docs/reference/model/FinalizedModel.md +3 -3
- package/dist/docs/reference/model/FinalizedPart.md +1 -1
- package/dist/docs/reference/model/Frame3.md +6 -6
- package/dist/docs/reference/model/GenerateCallback.md +5 -1
- package/dist/docs/reference/model/GenerateContext.md +5 -1
- package/dist/docs/reference/model/GeneratedPart.md +5 -1
- package/dist/docs/reference/model/GenerationDiagnostic.md +6 -1
- package/dist/docs/reference/model/GenerationError.md +5 -1
- package/dist/docs/reference/model/GeometryResolution.md +1 -1
- package/dist/docs/reference/model/GeometrySamplingLimits.md +1 -1
- package/dist/docs/reference/model/GeometryToleranceOptions.md +1 -1
- package/dist/docs/reference/model/GridPatternOptions.md +5 -4
- package/dist/docs/reference/model/HeightfieldOptions.md +5 -5
- package/dist/docs/reference/model/HelicalThreadRidgeMeshOptions.md +2 -1
- package/dist/docs/reference/model/HelicalThreadSolidMeshPreflight.md +3 -2
- package/dist/docs/reference/model/HullOptions.md +1 -1
- package/dist/docs/reference/model/ImmutableBuffer-type.md +5 -1
- package/dist/docs/reference/model/ImmutableTriangleMesh.md +5 -1
- package/dist/docs/reference/model/ImplicitOptions.md +6 -6
- package/dist/docs/reference/model/InternalThreadCutterOptions.md +2 -1
- package/dist/docs/reference/model/KnuckleHinge-type.md +47 -0
- package/dist/docs/reference/model/KnuckleHingeBaseSpec.md +77 -0
- package/dist/docs/reference/model/KnuckleHingeHalfOptions.md +34 -0
- package/dist/docs/reference/model/KnuckleHingeOptions.md +38 -0
- package/dist/docs/reference/model/KnuckleHingeSamplingOptions.md +47 -0
- package/dist/docs/reference/model/KnuckleHingeSpec.md +18 -0
- package/dist/docs/reference/model/KnuckleHingeWeb.md +53 -0
- package/dist/docs/reference/model/LinearPatternOptions.md +2 -1
- 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 +1 -1
- package/dist/docs/reference/model/MatchProfilesOptions.md +1 -1
- package/dist/docs/reference/model/ModelProgram.md +5 -1
- package/dist/docs/reference/model/ModelingLimits.md +1 -1
- package/dist/docs/reference/model/NumericArray.md +8 -1
- package/dist/docs/reference/model/PartGeometry.md +5 -1
- package/dist/docs/reference/model/PartOptions.md +5 -1
- package/dist/docs/reference/model/Path2-type.md +12 -8
- package/dist/docs/reference/model/Path2Data.md +40 -4
- package/dist/docs/reference/model/Path2Input.md +8 -3
- package/dist/docs/reference/model/Path3-type.md +12 -8
- package/dist/docs/reference/model/Path3Data.md +40 -4
- package/dist/docs/reference/model/Path3Input.md +8 -3
- package/dist/docs/reference/model/PathLocation.md +5 -1
- package/dist/docs/reference/model/PathNormalGuide.md +4 -4
- package/dist/docs/reference/model/PathOptions.md +5 -1
- package/dist/docs/reference/model/PathPatternOptions.md +2 -1
- package/dist/docs/reference/model/PathResamplingOptions.md +5 -1
- package/dist/docs/reference/model/PatternSource.md +2 -1
- package/dist/docs/reference/model/Pivot2Options.md +2 -1
- package/dist/docs/reference/model/Pivot3Options.md +2 -1
- package/dist/docs/reference/model/PlaneOptions.md +1 -1
- package/dist/docs/reference/model/PolygonData.md +3 -2
- package/dist/docs/reference/model/PolygonOptions.md +1 -1
- package/dist/docs/reference/model/PrimitiveAttachment.md +2 -1
- package/dist/docs/reference/model/PrimitiveAttachmentOptions.md +2 -1
- package/dist/docs/reference/model/PrintableThreadFit.md +2 -1
- package/dist/docs/reference/model/PrintableThreadFitPolicy.md +2 -1
- package/dist/docs/reference/model/Profile.md +4 -2
- package/dist/docs/reference/model/ProfileComponent2.md +1 -1
- package/dist/docs/reference/model/ProfileContour2.md +4 -2
- package/dist/docs/reference/model/ProfileSpan2.md +3 -3
- package/dist/docs/reference/model/ProfiledEdgeTreatment.md +3 -3
- package/dist/docs/reference/model/RadialPatternOptions.md +2 -1
- package/dist/docs/reference/model/RadialSizing.md +1 -1
- package/dist/docs/reference/model/RadialSizingOptions.md +1 -1
- package/dist/docs/reference/model/RectangleContourOptions.md +3 -3
- package/dist/docs/reference/model/RectangleCornerTreatment.md +1 -1
- package/dist/docs/reference/model/RectangleCornerTreatments.md +1 -1
- package/dist/docs/reference/model/RectangleOptions.md +3 -3
- package/dist/docs/reference/model/RegionData.md +2 -2
- package/dist/docs/reference/model/RegularPolygonOptions.md +1 -1
- package/dist/docs/reference/model/RevolveOptions.md +1 -1
- package/dist/docs/reference/model/RoundedEdgeTreatment.md +1 -1
- package/dist/docs/reference/model/Section.md +9 -2
- package/dist/docs/reference/model/SectionHullOptions.md +1 -1
- package/dist/docs/reference/model/SectionInspection.md +4 -4
- 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 +9 -2
- package/dist/docs/reference/model/SolidInspection.md +4 -4
- package/dist/docs/reference/model/SolidSegmentHit.md +4 -4
- package/dist/docs/reference/model/SphereOptions.md +1 -1
- package/dist/docs/reference/model/StarOptions.md +1 -1
- package/dist/docs/reference/model/StrokeCap.md +1 -1
- package/dist/docs/reference/model/StrokeJoin.md +1 -1
- package/dist/docs/reference/model/StrokeOptions.md +1 -1
- package/dist/docs/reference/model/SvgOrigin.md +1 -1
- package/dist/docs/reference/model/SvgPathSectionOptions.md +1 -1
- package/dist/docs/reference/model/SvgSectionOptions.md +1 -1
- package/dist/docs/reference/model/SweepOptions.md +1 -1
- package/dist/docs/reference/model/SweepOrientation.md +1 -1
- package/dist/docs/reference/model/TextSectionOptions.md +1 -1
- package/dist/docs/reference/model/ThreadEndStyle.md +2 -1
- package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +2 -1
- package/dist/docs/reference/model/ThreadHandedness.md +2 -1
- package/dist/docs/reference/model/ThreadLeadInEnvelope.md +2 -1
- package/dist/docs/reference/model/ThreadLeadInShape.md +2 -1
- package/dist/docs/reference/model/ThreadProfile.md +4 -3
- package/dist/docs/reference/model/ThreadRidgeOptions.md +2 -1
- package/dist/docs/reference/model/ThreadedNutBevel.md +2 -1
- package/dist/docs/reference/model/ThreadedNutOptions.md +2 -1
- package/dist/docs/reference/model/ThreadedNutPreflight.md +4 -3
- package/dist/docs/reference/model/ThreadedNutShape.md +2 -1
- package/dist/docs/reference/model/ThreadedRodOptions.md +2 -1
- package/dist/docs/reference/model/TorusOptions.md +1 -1
- package/dist/docs/reference/model/Transform2-type.md +6 -5
- package/dist/docs/reference/model/Transform2Data.md +16 -0
- package/dist/docs/reference/model/Transform2Input.md +4 -3
- package/dist/docs/reference/model/Transform3-type.md +6 -5
- package/dist/docs/reference/model/Transform3Data.md +19 -0
- package/dist/docs/reference/model/Transform3Input.md +4 -3
- package/dist/docs/reference/model/TriangleMesh.md +1 -1
- package/dist/docs/reference/model/TriangleMeshAnalysis.md +3 -3
- package/dist/docs/reference/model/TriangleMeshMeasurements.md +3 -3
- package/dist/docs/reference/model/TubeOptions.md +1 -1
- package/dist/docs/reference/model/Vector2-type.md +6 -5
- package/dist/docs/reference/model/{Vector2Tuple.md → Vector2Data.md} +3 -3
- package/dist/docs/reference/model/Vector2Input.md +4 -3
- package/dist/docs/reference/model/Vector3-type.md +6 -5
- package/dist/docs/reference/model/{Vector3Tuple.md → Vector3Data.md} +3 -3
- package/dist/docs/reference/model/Vector3Input.md +4 -3
- package/dist/docs/reference/model/VectorTextLayout.md +1 -1
- package/dist/docs/reference/model/VectorTextMetrics.md +3 -3
- package/dist/docs/reference/model/anchor.md +2 -1
- package/dist/docs/reference/model/bounds2.md +36 -0
- package/dist/docs/reference/model/bounds3.md +36 -0
- package/dist/docs/reference/model/box.md +2 -2
- package/dist/docs/reference/model/castSegment.md +1 -1
- package/dist/docs/reference/model/categories/boolean-operations.md +10 -3
- package/dist/docs/reference/model/categories/bounded-surfaces.md +5 -3
- package/dist/docs/reference/model/categories/bounds.md +36 -0
- package/dist/docs/reference/model/categories/contracts.md +4 -2
- package/dist/docs/reference/model/categories/core-values-errors.md +11 -11
- package/dist/docs/reference/model/categories/explicit-profiles.md +6 -4
- package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +12 -3
- package/dist/docs/reference/model/categories/generation.md +11 -2
- package/dist/docs/reference/model/categories/hinges.md +38 -0
- package/dist/docs/reference/model/categories/inspection.md +9 -2
- package/dist/docs/reference/model/categories/mesh-inspection.md +5 -3
- package/dist/docs/reference/model/categories/paths.md +15 -7
- package/dist/docs/reference/model/categories/primitives.md +10 -4
- package/dist/docs/reference/model/categories/resolution.md +4 -2
- package/dist/docs/reference/model/categories/sections.md +10 -5
- package/dist/docs/reference/model/categories/threads.md +10 -7
- package/dist/docs/reference/model/categories/transforms-placement.md +17 -9
- package/dist/docs/reference/model/circle.md +1 -1
- package/dist/docs/reference/model/components.md +1 -1
- 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 +1 -1
- package/dist/docs/reference/model/generate.md +5 -1
- package/dist/docs/reference/model/gridPattern.md +2 -1
- package/dist/docs/reference/model/heightfield.md +5 -2
- package/dist/docs/reference/model/hull.md +1 -1
- package/dist/docs/reference/model/immutableBuffer.md +5 -1
- package/dist/docs/reference/model/immutableMesh.md +5 -1
- package/dist/docs/reference/model/implicit.md +3 -3
- package/dist/docs/reference/model/inspectSection.md +1 -1
- package/dist/docs/reference/model/inspectSolid.md +1 -1
- package/dist/docs/reference/model/internalThreadCutter.md +2 -1
- package/dist/docs/reference/model/intersect.md +1 -1
- package/dist/docs/reference/model/isEmpty.md +1 -1
- package/dist/docs/reference/model/knuckleHinge.md +47 -0
- package/dist/docs/reference/model/linearPattern.md +2 -1
- package/dist/docs/reference/model/loft.md +1 -1
- package/dist/docs/reference/model/matchProfiles.md +1 -1
- package/dist/docs/reference/model/minkowskiSum.md +1 -1
- package/dist/docs/reference/model/path2.md +14 -2
- package/dist/docs/reference/model/path3.md +8 -1
- package/dist/docs/reference/model/pathPattern.md +2 -1
- package/dist/docs/reference/model/polygon.md +5 -2
- package/dist/docs/reference/model/preflightInternalThreadCutter.md +8 -2
- package/dist/docs/reference/model/preflightThreadedNut.md +8 -2
- package/dist/docs/reference/model/preflightThreadedRod.md +8 -2
- package/dist/docs/reference/model/radialPattern.md +2 -1
- package/dist/docs/reference/model/rectangle.md +5 -2
- package/dist/docs/reference/model/regularPolygon.md +1 -1
- package/dist/docs/reference/model/revolve.md +1 -1
- 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 +1 -1
- package/dist/docs/reference/model/stroke.md +1 -1
- package/dist/docs/reference/model/svgPathSection.md +1 -1
- package/dist/docs/reference/model/svgSection.md +1 -1
- package/dist/docs/reference/model/sweep.md +1 -1
- package/dist/docs/reference/model/textSection.md +1 -1
- package/dist/docs/reference/model/threadRidge.md +2 -1
- package/dist/docs/reference/model/threadedNut.md +2 -1
- package/dist/docs/reference/model/threadedRod.md +2 -1
- package/dist/docs/reference/model/torus.md +1 -1
- package/dist/docs/reference/model/transform2.md +14 -7
- package/dist/docs/reference/model/transform3.md +16 -7
- package/dist/docs/reference/model/tube.md +1 -1
- package/dist/docs/reference/model/union.md +1 -1
- package/dist/docs/reference/model/vector2.md +10 -2
- package/dist/docs/reference/model/vector3.md +10 -2
- package/dist/docs/reference/model.md +15 -8
- package/dist/docs/reference/text/Bounds2Data.md +34 -0
- package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +1 -1
- package/dist/docs/reference/text/Vector2Data.md +7 -0
- package/dist/docs/reference/text/VectorFont.md +1 -1
- package/dist/docs/reference/text/VectorFontOptions.md +1 -1
- package/dist/docs/reference/text/VectorTextArcBaseline.md +1 -1
- package/dist/docs/reference/text/VectorTextLayout.md +1 -1
- package/dist/docs/reference/text/VectorTextLayoutOptions.md +1 -1
- package/dist/docs/reference/text/VectorTextMetrics.md +3 -3
- package/dist/docs/reference/text/VectorTextOptions.md +1 -1
- package/dist/docs/reference/text/categories/font-preparation.md +6 -4
- package/dist/docs/reference/text/prepareVectorFont.md +1 -1
- package/dist/docs/reference/text.md +4 -2
- package/dist/engine/construction-operations.js +1 -1
- package/dist/engine/knuckle-hinge-operation.js +85 -0
- package/dist/engine/loft-operations.js +1 -1
- package/dist/engine/mechanical-operations.js +3 -1
- package/dist/engine/modeling-context.js +8 -1
- package/dist/engine/recipe-realization.js +4 -2
- package/dist/engine/section-operations.js +1 -1
- package/dist/engine/transform-operations.js +3 -3
- package/dist/geometry/bounds-value.js +93 -0
- package/dist/geometry/bounds.js +10 -8
- package/dist/geometry/curves/sampling.js +1 -2
- package/dist/geometry/errors.js +1 -0
- package/dist/geometry/heightfield.js +12 -1
- package/dist/geometry/index.js +3 -1
- package/dist/geometry/math/immutable-value.js +1 -1
- package/dist/geometry/math/vector-value.js +11 -3
- package/dist/geometry/math/vector2.js +1 -0
- package/dist/geometry/math/vector3.js +1 -0
- package/dist/geometry/mechanical/index.js +1 -0
- package/dist/geometry/mechanical/knuckle-hinge.js +110 -0
- package/dist/geometry/mechanical/thread-mesh-plan.js +7 -2
- package/dist/geometry/mechanical/thread-solids.js +29 -4
- package/dist/geometry/mesh/mesh-centroid.js +1 -0
- package/dist/geometry/mesh/mesh-solid.js +1 -0
- package/dist/geometry/paths/frames.js +1 -0
- package/dist/geometry/paths/helix.js +1 -0
- package/dist/geometry/paths/path-value.js +43 -27
- package/dist/geometry/paths/resampling.js +2 -2
- package/dist/geometry/patterns/placements.js +3 -3
- package/dist/geometry/patterns.js +3 -1
- package/dist/geometry/profiles/contour.js +1 -0
- package/dist/geometry/profiles/matched.js +1 -0
- package/dist/geometry/profiles/rectangle.js +10 -1
- package/dist/geometry/profiles/side-profile.js +2 -0
- package/dist/geometry/svg-import.js +8 -2
- package/dist/geometry/sweeps/options.js +1 -1
- package/dist/geometry/text-fitting.js +1 -0
- package/dist/geometry/transform-matrix.js +1 -1
- package/dist/geometry/{transform-chain.js → transform-value.js} +24 -15
- package/dist/index.js +2 -1
- package/dist/model/execution-binding.js +1 -1
- package/dist/model/geometry-recipes.js +1 -1
- package/dist/model/immutable-generation-data.js +4 -12
- package/dist/model/knuckle-hinge.js +1 -0
- package/dist/model/operations.js +57 -3
- package/dist/model/recipe-declaration.js +10 -2
- package/package.json +1 -1
- package/dist/docs/reference/geometry/Bounds2.md +0 -39
- package/dist/docs/reference/geometry/Bounds3.md +0 -39
- package/dist/docs/reference/geometry/Transform2Matrix.md +0 -14
- package/dist/docs/reference/geometry/Transform3Matrix.md +0 -17
- package/dist/docs/reference/geometry/Vector2Tuple.md +0 -14
- package/dist/docs/reference/geometry/Vector3Tuple.md +0 -14
- package/dist/docs/reference/model/Bounds2.md +0 -39
- package/dist/docs/reference/model/Bounds3.md +0 -39
- package/dist/docs/reference/model/Transform2Matrix.md +0 -15
- package/dist/docs/reference/model/Transform3Matrix.md +0 -18
- package/dist/docs/reference/text/Bounds2.md +0 -34
- package/dist/docs/reference/text/Vector2Tuple.md +0 -7
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Applies only the linear component of an affine transform to a direction.
|
|
4
4
|
|
|
5
|
-
**applyTransformDirection3**(`transform`: [`
|
|
5
|
+
**applyTransformDirection3**(`transform`: [`Transform3Data`](Transform3Data.md), `direction`: [`Vector3Data`](Vector3Data.md)): [`Vector3Data`](Vector3Data.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -12,7 +12,7 @@ The result is not normalized, preserving scale information.
|
|
|
12
12
|
|
|
13
13
|
<a id="transform"></a>
|
|
14
14
|
|
|
15
|
-
**`transform`** · [`
|
|
15
|
+
**`transform`** · [`Transform3Data`](Transform3Data.md) · Required
|
|
16
16
|
|
|
17
17
|
Valid row-major affine transform.
|
|
18
18
|
|
|
@@ -20,7 +20,7 @@ Valid row-major affine transform.
|
|
|
20
20
|
|
|
21
21
|
<a id="direction"></a>
|
|
22
22
|
|
|
23
|
-
**`direction`** · [`
|
|
23
|
+
**`direction`** · [`Vector3Data`](Vector3Data.md) · Required
|
|
24
24
|
|
|
25
25
|
Finite XYZ direction.
|
|
26
26
|
|
|
@@ -28,18 +28,19 @@ Finite XYZ direction.
|
|
|
28
28
|
|
|
29
29
|
## Returns
|
|
30
30
|
|
|
31
|
-
[`
|
|
31
|
+
[`Vector3Data`](Vector3Data.md)
|
|
32
32
|
|
|
33
33
|
A fresh transformed direction.
|
|
34
34
|
|
|
35
35
|
|
|
36
36
|
## Related APIs
|
|
37
37
|
|
|
38
|
-
- [
|
|
39
|
-
- [
|
|
38
|
+
- [Transform3Data](Transform3Data.md)
|
|
39
|
+
- [Vector3Data](Vector3Data.md)
|
|
40
40
|
|
|
41
41
|
## Guides
|
|
42
42
|
|
|
43
43
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
44
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
44
45
|
|
|
45
|
-
Package: `@metamesh/modeling@0.
|
|
46
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Applies an affine transform to a point, including translation.
|
|
4
4
|
|
|
5
|
-
**applyTransformPoint3**(`transform`: [`
|
|
5
|
+
**applyTransformPoint3**(`transform`: [`Transform3Data`](Transform3Data.md), `point`: [`Vector3Data`](Vector3Data.md)): [`Vector3Data`](Vector3Data.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,7 +10,7 @@ Applies an affine transform to a point, including translation.
|
|
|
10
10
|
|
|
11
11
|
<a id="transform"></a>
|
|
12
12
|
|
|
13
|
-
**`transform`** · [`
|
|
13
|
+
**`transform`** · [`Transform3Data`](Transform3Data.md) · Required
|
|
14
14
|
|
|
15
15
|
Valid row-major affine transform.
|
|
16
16
|
|
|
@@ -18,7 +18,7 @@ Valid row-major affine transform.
|
|
|
18
18
|
|
|
19
19
|
<a id="point"></a>
|
|
20
20
|
|
|
21
|
-
**`point`** · [`
|
|
21
|
+
**`point`** · [`Vector3Data`](Vector3Data.md) · Required
|
|
22
22
|
|
|
23
23
|
Finite XYZ point.
|
|
24
24
|
|
|
@@ -26,18 +26,19 @@ Finite XYZ point.
|
|
|
26
26
|
|
|
27
27
|
## Returns
|
|
28
28
|
|
|
29
|
-
[`
|
|
29
|
+
[`Vector3Data`](Vector3Data.md)
|
|
30
30
|
|
|
31
31
|
A fresh transformed point.
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
## Related APIs
|
|
35
35
|
|
|
36
|
-
- [
|
|
37
|
-
- [
|
|
36
|
+
- [Transform3Data](Transform3Data.md)
|
|
37
|
+
- [Vector3Data](Vector3Data.md)
|
|
38
38
|
|
|
39
39
|
## Guides
|
|
40
40
|
|
|
41
41
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
42
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
42
43
|
|
|
43
|
-
Package: `@metamesh/modeling@0.
|
|
44
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Builds the transform that moves a source anchor onto a target anchor.
|
|
4
4
|
|
|
5
|
-
**attachmentTransform3**(`source`: [`Anchor3`](Anchor3-type.md), `target`: [`Anchor3`](Anchor3-type.md), `options?`: [`AttachOptions`](AttachOptions.md)): [`
|
|
5
|
+
**attachmentTransform3**(`source`: [`Anchor3`](Anchor3-type.md), `target`: [`Anchor3`](Anchor3-type.md), `options?`: [`AttachOptions`](AttachOptions.md)): [`Transform3Data`](Transform3Data.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -55,7 +55,7 @@ Alignment, gap, spin, and tolerance policy.
|
|
|
55
55
|
|
|
56
56
|
## Returns
|
|
57
57
|
|
|
58
|
-
[`
|
|
58
|
+
[`Transform3Data`](Transform3Data.md)
|
|
59
59
|
|
|
60
60
|
A frozen affine transform for the moving object.
|
|
61
61
|
|
|
@@ -68,10 +68,11 @@ A frozen affine transform for the moving object.
|
|
|
68
68
|
|
|
69
69
|
- [Anchor3](Anchor3-type.md)
|
|
70
70
|
- [AttachOptions](AttachOptions.md)
|
|
71
|
-
- [
|
|
71
|
+
- [Transform3Data](Transform3Data.md)
|
|
72
72
|
|
|
73
73
|
## Guides
|
|
74
74
|
|
|
75
75
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
76
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
76
77
|
|
|
77
|
-
Package: `@metamesh/modeling@0.
|
|
78
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# bounds2
|
|
2
|
+
|
|
3
|
+
Snapshots finite ordered XY bounds in millimetres as an immutable fluent value.
|
|
4
|
+
|
|
5
|
+
**bounds2**(`input`: [`Bounds2Input`](Bounds2Input.md)): [`Bounds2`](Bounds2-type.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Zero extents are valid. Invalid dimensions, nonfinite coordinates, reversed bounds and
|
|
10
|
+
overflowing extents throw `INVALID_ARGUMENT` GeometryError. Use `toData()` for plain records.
|
|
11
|
+
Compiled Generator packages passing these values to host recipes or computed data require
|
|
12
|
+
runtime 8.0.0 or newer in major 8.
|
|
13
|
+
|
|
14
|
+
## Parameters
|
|
15
|
+
|
|
16
|
+
<a id="input"></a>
|
|
17
|
+
|
|
18
|
+
**`input`** · [`Bounds2Input`](Bounds2Input.md) · Required
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## Returns
|
|
23
|
+
|
|
24
|
+
[`Bounds2`](Bounds2-type.md)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
## Related APIs
|
|
28
|
+
|
|
29
|
+
- [Bounds2](Bounds2-type.md)
|
|
30
|
+
- [Bounds2Input](Bounds2Input.md)
|
|
31
|
+
|
|
32
|
+
## Guides
|
|
33
|
+
|
|
34
|
+
- [Measure and compare bounds](../../guides/concepts.md#measure-and-compare-bounds)
|
|
35
|
+
- [Text from a Font parameter](../../guides/recipes.md#text-from-a-font-parameter)
|
|
36
|
+
- [Solid inspection](../../guides/recipes.md#solid-inspection)
|
|
37
|
+
|
|
38
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# bounds3
|
|
2
|
+
|
|
3
|
+
Snapshots finite ordered XYZ bounds in millimetres as an immutable fluent value.
|
|
4
|
+
|
|
5
|
+
**bounds3**(`input`: [`Bounds3Input`](Bounds3Input.md)): [`Bounds3`](Bounds3-type.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Zero extents are valid. Invalid dimensions, nonfinite coordinates, reversed bounds and
|
|
10
|
+
overflowing extents throw `INVALID_ARGUMENT` GeometryError. Use `toData()` for plain records.
|
|
11
|
+
Compiled Generator packages passing these values to host recipes or computed data require
|
|
12
|
+
runtime 8.0.0 or newer in major 8.
|
|
13
|
+
|
|
14
|
+
## Parameters
|
|
15
|
+
|
|
16
|
+
<a id="input"></a>
|
|
17
|
+
|
|
18
|
+
**`input`** · [`Bounds3Input`](Bounds3Input.md) · Required
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## Returns
|
|
23
|
+
|
|
24
|
+
[`Bounds3`](Bounds3-type.md)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
## Related APIs
|
|
28
|
+
|
|
29
|
+
- [Bounds3](Bounds3-type.md)
|
|
30
|
+
- [Bounds3Input](Bounds3Input.md)
|
|
31
|
+
|
|
32
|
+
## Guides
|
|
33
|
+
|
|
34
|
+
- [Measure and compare bounds](../../guides/concepts.md#measure-and-compare-bounds)
|
|
35
|
+
- [Text from a Font parameter](../../guides/recipes.md#text-from-a-font-parameter)
|
|
36
|
+
- [Solid inspection](../../guides/recipes.md#solid-inspection)
|
|
37
|
+
|
|
38
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -6,7 +6,7 @@ Midpoint of finite XY bounds in millimetres.
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
**boundsCenter**(`bounds`: [`
|
|
9
|
+
**boundsCenter**(`bounds`: [`Bounds2Data`](Bounds2Data.md)): [`Vector2Data`](Vector2Data.md)
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
@@ -16,19 +16,19 @@ Midpoint of finite XY bounds in millimetres.
|
|
|
16
16
|
|
|
17
17
|
<a id="bounds"></a>
|
|
18
18
|
|
|
19
|
-
**`bounds`** · [`
|
|
19
|
+
**`bounds`** · [`Bounds2Data`](Bounds2Data.md) · Required
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
### Returns
|
|
24
24
|
|
|
25
|
-
[`
|
|
25
|
+
[`Vector2Data`](Vector2Data.md)
|
|
26
26
|
|
|
27
27
|
## Call Signature
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
|
|
31
|
-
**boundsCenter**(`bounds`: [`
|
|
31
|
+
**boundsCenter**(`bounds`: [`Bounds3Data`](Bounds3Data.md)): [`Vector3Data`](Vector3Data.md)
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
|
|
@@ -38,25 +38,26 @@ Midpoint of finite XYZ bounds in millimetres.
|
|
|
38
38
|
|
|
39
39
|
<a id="bounds-1"></a>
|
|
40
40
|
|
|
41
|
-
**`bounds`** · [`
|
|
41
|
+
**`bounds`** · [`Bounds3Data`](Bounds3Data.md) · Required
|
|
42
42
|
|
|
43
43
|
|
|
44
44
|
|
|
45
45
|
### Returns
|
|
46
46
|
|
|
47
|
-
[`
|
|
47
|
+
[`Vector3Data`](Vector3Data.md)
|
|
48
48
|
|
|
49
49
|
|
|
50
50
|
## Related APIs
|
|
51
51
|
|
|
52
|
-
- [
|
|
53
|
-
- [
|
|
54
|
-
- [
|
|
55
|
-
- [
|
|
52
|
+
- [Bounds2Data](Bounds2Data.md)
|
|
53
|
+
- [Bounds3Data](Bounds3Data.md)
|
|
54
|
+
- [Vector2Data](Vector2Data.md)
|
|
55
|
+
- [Vector3Data](Vector3Data.md)
|
|
56
56
|
|
|
57
57
|
## Guides
|
|
58
58
|
|
|
59
|
+
- [Measure and compare bounds](../../guides/concepts.md#measure-and-compare-bounds)
|
|
59
60
|
- [Text from a Font parameter](../../guides/recipes.md#text-from-a-font-parameter)
|
|
60
61
|
- [Solid inspection](../../guides/recipes.md#solid-inspection)
|
|
61
62
|
|
|
62
|
-
Package: `@metamesh/modeling@0.
|
|
63
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -6,7 +6,7 @@ Creates immutable centered XY bounds from nonnegative dimensions in millimetres.
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
**boundsFromSize**(`size`: [`
|
|
9
|
+
**boundsFromSize**(`size`: [`Vector2Data`](Vector2Data.md), `options?`: [`BoundsFromSizeOptions`](BoundsFromSizeOptions.md)): [`Bounds2Data`](Bounds2Data.md)
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
@@ -16,7 +16,7 @@ Creates immutable centered XY bounds from nonnegative dimensions in millimetres.
|
|
|
16
16
|
|
|
17
17
|
<a id="size"></a>
|
|
18
18
|
|
|
19
|
-
**`size`** · [`
|
|
19
|
+
**`size`** · [`Vector2Data`](Vector2Data.md) · Required
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
@@ -32,13 +32,13 @@ Creates immutable centered XY bounds from nonnegative dimensions in millimetres.
|
|
|
32
32
|
|
|
33
33
|
### Returns
|
|
34
34
|
|
|
35
|
-
[`
|
|
35
|
+
[`Bounds2Data`](Bounds2Data.md)
|
|
36
36
|
|
|
37
37
|
## Call Signature
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
|
|
41
|
-
**boundsFromSize**(`size`: [`
|
|
41
|
+
**boundsFromSize**(`size`: [`Vector3Data`](Vector3Data.md), `options?`: [`BoundsFromSizeOptions`](BoundsFromSizeOptions.md)): [`Bounds3Data`](Bounds3Data.md)
|
|
42
42
|
|
|
43
43
|
|
|
44
44
|
|
|
@@ -48,7 +48,7 @@ Creates immutable centered XYZ bounds from nonnegative dimensions in millimetres
|
|
|
48
48
|
|
|
49
49
|
<a id="size-1"></a>
|
|
50
50
|
|
|
51
|
-
**`size`** · [`
|
|
51
|
+
**`size`** · [`Vector3Data`](Vector3Data.md) · Required
|
|
52
52
|
|
|
53
53
|
|
|
54
54
|
|
|
@@ -64,20 +64,21 @@ Creates immutable centered XYZ bounds from nonnegative dimensions in millimetres
|
|
|
64
64
|
|
|
65
65
|
### Returns
|
|
66
66
|
|
|
67
|
-
[`
|
|
67
|
+
[`Bounds3Data`](Bounds3Data.md)
|
|
68
68
|
|
|
69
69
|
|
|
70
70
|
## Related APIs
|
|
71
71
|
|
|
72
|
-
- [
|
|
73
|
-
- [
|
|
72
|
+
- [Bounds2Data](Bounds2Data.md)
|
|
73
|
+
- [Bounds3Data](Bounds3Data.md)
|
|
74
74
|
- [BoundsFromSizeOptions](BoundsFromSizeOptions.md)
|
|
75
|
-
- [
|
|
76
|
-
- [
|
|
75
|
+
- [Vector2Data](Vector2Data.md)
|
|
76
|
+
- [Vector3Data](Vector3Data.md)
|
|
77
77
|
|
|
78
78
|
## Guides
|
|
79
79
|
|
|
80
|
+
- [Measure and compare bounds](../../guides/concepts.md#measure-and-compare-bounds)
|
|
80
81
|
- [Text from a Font parameter](../../guides/recipes.md#text-from-a-font-parameter)
|
|
81
82
|
- [Solid inspection](../../guides/recipes.md#solid-inspection)
|
|
82
83
|
|
|
83
|
-
Package: `@metamesh/modeling@0.
|
|
84
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -6,7 +6,7 @@ Inclusive XY dimensions in millimetres; zero extents are retained.
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
**boundsSize**(`bounds`: [`
|
|
9
|
+
**boundsSize**(`bounds`: [`Bounds2Data`](Bounds2Data.md)): [`Vector2Data`](Vector2Data.md)
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
|
|
@@ -16,19 +16,19 @@ Inclusive XY dimensions in millimetres; zero extents are retained.
|
|
|
16
16
|
|
|
17
17
|
<a id="bounds"></a>
|
|
18
18
|
|
|
19
|
-
**`bounds`** · [`
|
|
19
|
+
**`bounds`** · [`Bounds2Data`](Bounds2Data.md) · Required
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
### Returns
|
|
24
24
|
|
|
25
|
-
[`
|
|
25
|
+
[`Vector2Data`](Vector2Data.md)
|
|
26
26
|
|
|
27
27
|
## Call Signature
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
|
|
31
|
-
**boundsSize**(`bounds`: [`
|
|
31
|
+
**boundsSize**(`bounds`: [`Bounds3Data`](Bounds3Data.md)): [`Vector3Data`](Vector3Data.md)
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
|
|
@@ -38,25 +38,26 @@ Inclusive XYZ dimensions in millimetres; zero extents are retained.
|
|
|
38
38
|
|
|
39
39
|
<a id="bounds-1"></a>
|
|
40
40
|
|
|
41
|
-
**`bounds`** · [`
|
|
41
|
+
**`bounds`** · [`Bounds3Data`](Bounds3Data.md) · Required
|
|
42
42
|
|
|
43
43
|
|
|
44
44
|
|
|
45
45
|
### Returns
|
|
46
46
|
|
|
47
|
-
[`
|
|
47
|
+
[`Vector3Data`](Vector3Data.md)
|
|
48
48
|
|
|
49
49
|
|
|
50
50
|
## Related APIs
|
|
51
51
|
|
|
52
|
-
- [
|
|
53
|
-
- [
|
|
54
|
-
- [
|
|
55
|
-
- [
|
|
52
|
+
- [Bounds2Data](Bounds2Data.md)
|
|
53
|
+
- [Bounds3Data](Bounds3Data.md)
|
|
54
|
+
- [Vector2Data](Vector2Data.md)
|
|
55
|
+
- [Vector3Data](Vector3Data.md)
|
|
56
56
|
|
|
57
57
|
## Guides
|
|
58
58
|
|
|
59
|
+
- [Measure and compare bounds](../../guides/concepts.md#measure-and-compare-bounds)
|
|
59
60
|
- [Text from a Font parameter](../../guides/recipes.md#text-from-a-font-parameter)
|
|
60
61
|
- [Solid inspection](../../guides/recipes.md#solid-inspection)
|
|
61
62
|
|
|
62
|
-
Package: `@metamesh/modeling@0.
|
|
63
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -12,7 +12,7 @@ Creates an outward face-center anchor using the same local origin convention as
|
|
|
12
12
|
|
|
13
13
|
**`options`** · [`BoxAnchorOptions`](BoxAnchorOptions.md) · Required
|
|
14
14
|
|
|
15
|
-
- [`size`](BoxAnchorOptions.md#size) · `number` \| [`
|
|
15
|
+
- [`size`](BoxAnchorOptions.md#size) · `number` \| [`Vector3Data`](Vector3Data.md) · Required
|
|
16
16
|
|
|
17
17
|
XYZ dimensions, or one uniform dimension, in millimetres.
|
|
18
18
|
|
|
@@ -24,7 +24,7 @@ Creates an outward face-center anchor using the same local origin convention as
|
|
|
24
24
|
|
|
25
25
|
Centers the box around its construction origin; defaults to true, matching box().
|
|
26
26
|
|
|
27
|
-
- [`origin`](BoxAnchorOptions.md#origin) · [`
|
|
27
|
+
- [`origin`](BoxAnchorOptions.md#origin) · [`Vector3Data`](Vector3Data.md) · Optional
|
|
28
28
|
|
|
29
29
|
Construction origin; centered-box center or noncentered minimum corner. Defaults to zero.
|
|
30
30
|
|
|
@@ -48,5 +48,6 @@ resulting anchor frame explicitly; no anchor is inherited from a Boolean result.
|
|
|
48
48
|
## Guides
|
|
49
49
|
|
|
50
50
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
51
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
51
52
|
|
|
52
|
-
Package: `@metamesh/modeling@0.
|
|
53
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -1,35 +1,52 @@
|
|
|
1
|
-
# Bounds
|
|
1
|
+
# Bounds and layout
|
|
2
2
|
|
|
3
3
|
Measure finite bounds, test positioned containment, and fit or arrange geometry.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Use `bounds2` and `bounds3` for immutable extents with fluent `size()`, `center()`, and `containsBounds()` queries. Zero extents are valid. Containment includes boundary contact in the same coordinate frame; it does not establish manufacturing fit.
|
|
6
|
+
|
|
7
|
+
- **Interchange:** measurements, snapshots, and `boundsFromSize` retain plain `Bounds2Data`/`Bounds3Data` min/max records. `toData()` returns a stable frozen record. Standalone helpers accept values or data.
|
|
8
|
+
- **Construct:** `boundsFromSize` centers on the origin unless `center` is `false`.
|
|
9
|
+
- **Fit:** `fitBounds` scales uniformly and centers in a target, returning scale, position, and resulting data bounds. `maxScale` limits enlargement.
|
|
10
|
+
- **Arrange:** `layoutRow` returns translations for a +X row with minimum Y/Z at zero. Supply bounds after intended rotations, then apply positions through part options.
|
|
6
11
|
|
|
7
12
|
## Functions
|
|
8
13
|
|
|
9
14
|
| API | Summary |
|
|
10
15
|
| --- | --- |
|
|
16
|
+
| [bounds2](../bounds2.md) | Snapshots finite ordered XY bounds in millimetres as an immutable fluent value. |
|
|
17
|
+
| [bounds3](../bounds3.md) | Snapshots finite ordered XYZ bounds in millimetres as an immutable fluent value. |
|
|
11
18
|
| [boundsFromSize](../boundsFromSize.md) | Creates immutable centered XY bounds from nonnegative dimensions in millimetres. |
|
|
12
19
|
| [boundsSize](../boundsSize.md) | Inclusive XY dimensions in millimetres; zero extents are retained. |
|
|
13
20
|
| [boundsCenter](../boundsCenter.md) | Midpoint of finite XY bounds in millimetres. |
|
|
14
21
|
| [containsBounds](../containsBounds.md) | Tests actual XY containment, including touching boundaries; dimensions must match. |
|
|
15
22
|
| [fitBounds](../fitBounds.md) | Fits XY bounds uniformly and centers them in the target; zero source axes do not constrain scale. |
|
|
16
|
-
| [layoutRow](../layoutRow.md) | Returns immutable translations for a +X row of finite XYZ bounds with a nonnegative gap.
|
|
23
|
+
| [layoutRow](../layoutRow.md) | Returns immutable translations for a +X row of finite XYZ bounds with a nonnegative gap. |
|
|
17
24
|
|
|
18
25
|
## Interfaces
|
|
19
26
|
|
|
20
27
|
| API | Summary |
|
|
21
28
|
| --- | --- |
|
|
22
|
-
| [Bounds2](../Bounds2.md) |
|
|
23
|
-
| [Bounds3](../Bounds3.md) |
|
|
29
|
+
| [Bounds2](../Bounds2-type.md) | Immutable finite XY bounds in millimetres, with tuple coordinates for data interoperability. |
|
|
30
|
+
| [Bounds3](../Bounds3-type.md) | Immutable finite XYZ bounds in millimetres, with tuple coordinates for data interoperability. |
|
|
31
|
+
| [Bounds2Data](../Bounds2Data.md) | Plain axis-aligned XY bounds for interchange; use bounds2 for immutable measurement methods. |
|
|
32
|
+
| [Bounds3Data](../Bounds3Data.md) | Plain axis-aligned XYZ bounds for interchange; use bounds3 for immutable measurement methods. |
|
|
24
33
|
| [BoundsFromSizeOptions](../BoundsFromSizeOptions.md) | Placement of bounds constructed from nonnegative millimetre dimensions. |
|
|
25
34
|
| [BoundsFitOptions](../BoundsFitOptions.md) | Uniform fitting controls; fitting centers the source inside the target. |
|
|
26
35
|
| [BoundsFit2](../BoundsFit2.md) | A uniform XY scale followed by translation, and the resulting bounds. |
|
|
27
36
|
| [BoundsFit3](../BoundsFit3.md) | A uniform XYZ scale followed by translation, and the resulting bounds. |
|
|
28
37
|
| [RowLayoutOptions](../RowLayoutOptions.md) | Simple +X row placement with every minimum Y and Z grounded at zero. |
|
|
29
38
|
|
|
39
|
+
## Type aliases
|
|
40
|
+
|
|
41
|
+
| API | Summary |
|
|
42
|
+
| --- | --- |
|
|
43
|
+
| [Bounds2Input](../Bounds2Input.md) | An immutable XY bounds value or its plain min/max representation. |
|
|
44
|
+
| [Bounds3Input](../Bounds3Input.md) | An immutable XYZ bounds value or its plain min/max representation. |
|
|
45
|
+
|
|
30
46
|
## Guides
|
|
31
47
|
|
|
48
|
+
- [Measure and compare bounds](../../../guides/concepts.md#measure-and-compare-bounds)
|
|
32
49
|
- [Text from a Font parameter](../../../guides/recipes.md#text-from-a-font-parameter)
|
|
33
50
|
- [Solid inspection](../../../guides/recipes.md#solid-inspection)
|
|
34
51
|
|
|
35
|
-
Package: `@metamesh/modeling@0.
|
|
52
|
+
Package: `@metamesh/modeling@0.16.0`.
|
|
@@ -2,7 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Sample reusable lines, arcs, cubic curves, and path frames with explicit physical policies.
|
|
4
4
|
|
|
5
|
-
Use immutable `path2(points, { closed })` and `path3(points, { closed })` values for sampled trajectories.
|
|
5
|
+
Use immutable `path2(points, { closed })` and `path3(points, { closed })` values for sampled trajectories. Closed paths omit the duplicated endpoint. Geometry accepts matching path values directly.
|
|
6
|
+
|
|
7
|
+
- **Transform:** `transform()`, `reverse()`, and `resample()` return new paths. Reflections preserve traversal; polygon construction handles filled-shape winding.
|
|
8
|
+
- **Query:** `length()` includes the closing edge. `bounds()` returns fluent bounds or `undefined` for empty paths. `closestPoint()` returns a fluent point, distance, edge index, and fraction within that edge.
|
|
9
|
+
- **Interchange:** `toData()` returns `Path2Data` or `Path3Data` with dimension, closure, and point tuples.
|
|
10
|
+
- **Sample curves:** analytic `Curve` definitions are separate. `sampleCurve2`/`sampleCurve3` retain directed endpoints and tangents; exact intervals are uniform in the curve parameter.
|
|
11
|
+
- **Resample:** `resamplePolyline2`/`resamplePolyline3` return tuple points and tangents at equal arc lengths. Sampling uses physical policies and checked vertex ceilings.
|
|
12
|
+
|
|
13
|
+
Sweep frames require explicit seam and orientation choices.
|
|
6
14
|
|
|
7
15
|
## Functions
|
|
8
16
|
|
|
@@ -14,7 +22,7 @@ Use immutable `path2(points, { closed })` and `path3(points, { closed })` values
|
|
|
14
22
|
| [resolveGeometrySamplingLimits](../resolveGeometrySamplingLimits.md) | Resolves finite positive safe-integer allocation ceilings without ambient state. |
|
|
15
23
|
| [resamplePolyline2](../resamplePolyline2.md) | Resamples a planar polyline with the same point, tangent, seam and budget guarantees as 3D. |
|
|
16
24
|
| [resamplePolyline3](../resamplePolyline3.md) | Resamples a spatial polyline at equal arc lengths with directed outgoing tangents. |
|
|
17
|
-
| [path2](../path2.md) | Snapshots finite XY coordinates as an immutable sampled path, independent of engine initialization.
|
|
25
|
+
| [path2](../path2.md) | Snapshots finite XY coordinates as an immutable sampled path, independent of engine initialization. |
|
|
18
26
|
| [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. |
|
|
19
27
|
|
|
20
28
|
## Interfaces
|
|
@@ -41,6 +49,8 @@ Use immutable `path2(points, { closed })` and `path3(points, { closed })` values
|
|
|
41
49
|
| [PathOptions](../PathOptions.md) | Topology and allocation ceiling for an immutable sampled path. |
|
|
42
50
|
| [PathLocation](../PathLocation.md) | Nearest location on a sampled boundary, rather than inside a filled shape or on an analytic curve. |
|
|
43
51
|
| [PathResamplingOptions](../PathResamplingOptions.md) | Equal arc-length sampling; the path itself owns whether its closing edge is included. |
|
|
52
|
+
| [Path2Data](../Path2Data.md) | Complete plain XY path representation, including topology and empty-path dimensional identity. |
|
|
53
|
+
| [Path3Data](../Path3Data.md) | Complete plain XYZ path representation, including topology and empty-path dimensional identity. |
|
|
44
54
|
|
|
45
55
|
## Type aliases
|
|
46
56
|
|
|
@@ -49,20 +59,22 @@ Use immutable `path2(points, { closed })` and `path3(points, { closed })` values
|
|
|
49
59
|
| [Curve2](../Curve2.md) | Reusable planar curve definition. |
|
|
50
60
|
| [Curve3](../Curve3.md) | Reusable spatial curve definition. |
|
|
51
61
|
| [PathNormalGuide](../PathNormalGuide.md) | Supplies a profile-X orientation guide for each original normalized sweep station. |
|
|
52
|
-
| [Path2Input](../Path2Input.md) |
|
|
53
|
-
| [Path3Input](../Path3Input.md) |
|
|
54
|
-
| [Path2Data](../Path2Data.md) | XY point tuples for interchange; closure is supplied by the consuming operation or Path2 value. |
|
|
55
|
-
| [Path3Data](../Path3Data.md) | XYZ point tuples for interchange; closure is supplied by the consuming operation or Path3 value. |
|
|
62
|
+
| [Path2Input](../Path2Input.md) | A matching path value, complete plain path data, or a collection of vectors. |
|
|
63
|
+
| [Path3Input](../Path3Input.md) | A matching path value, complete plain path data, or a collection of vectors. |
|
|
56
64
|
|
|
57
65
|
## Values
|
|
58
66
|
|
|
59
67
|
| API | Summary |
|
|
60
68
|
| --- | --- |
|
|
61
69
|
| [computeClosedParallelTransportFrames](../computeClosedParallelTransportFrames.md) | Builds rotation-minimizing frames for a non-duplicated closed path. |
|
|
62
|
-
| [computeParallelTransportFrames](../computeParallelTransportFrames.md) | Builds rotation-minimizing frames by parallel-transporting the previous normal.
|
|
70
|
+
| [computeParallelTransportFrames](../computeParallelTransportFrames.md) | Builds rotation-minimizing frames by parallel-transporting the previous normal. |
|
|
63
71
|
| [defaultGeometrySamplingLimits](../defaultGeometrySamplingLimits.md) | Conservative defaults; trusted callers can supply larger explicit ceilings. |
|
|
64
72
|
| [distributeAlongPath](../distributeAlongPath.md) | Places an exact item count at equal arc-length intervals along a sampled path. |
|
|
65
73
|
| [roundClosedPolylinePath](../roundClosedPolylinePath.md) | Replaces each vertex of a non-duplicated closed polyline with a sampled quadratic corner in the same coordinate system as the input. |
|
|
66
|
-
| [sampleHelix](../sampleHelix.md) | Creates `segments + 1` points including exact helix endpoints from finite positive dimensions.
|
|
74
|
+
| [sampleHelix](../sampleHelix.md) | Creates `segments + 1` points including exact helix endpoints from finite positive dimensions. |
|
|
75
|
+
|
|
76
|
+
## Guides
|
|
77
|
+
|
|
78
|
+
- [Path queries and closure-preserving interchange](../../../guides/concepts.md#query-paths-and-preserve-closure)
|
|
67
79
|
|
|
68
|
-
Package: `@metamesh/modeling@0.
|
|
80
|
+
Package: `@metamesh/modeling@0.16.0`.
|