@metamesh/modeling 0.15.0 → 0.17.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 +59 -0
- package/README.md +54 -6
- package/dist/api/engine.d.ts +4 -3
- package/dist/api/geometry.d.ts +608 -266
- package/dist/api/index.d.ts +516 -110
- package/dist/api/text.d.ts +6 -6
- package/dist/docs/guides/concepts.md +298 -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 +68 -36
- package/dist/docs/guides/standalone-model.md +42 -0
- package/dist/docs/manifest.json +1034 -296
- 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/Bounds2Options.md +72 -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/Bounds3Options.md +72 -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/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/CircularSampling.md +41 -0
- package/dist/docs/reference/geometry/CircularSamplingOptions.md +14 -0
- 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 +20 -1
- package/dist/docs/reference/geometry/SvgRegionPreflight.md +21 -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 +7 -3
- 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 +39 -0
- package/dist/docs/reference/geometry/bounds3.md +39 -0
- package/dist/docs/reference/geometry/boundsCenter.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 +25 -9
- 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 +8 -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/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 +24 -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/resolveCircularSampling.md +40 -0
- 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/Bounds2Options.md +70 -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/Bounds3Options.md +70 -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/HoleCutterOptions.md +77 -0
- package/dist/docs/reference/model/HoleCutterOverrun.md +35 -0
- package/dist/docs/reference/model/HoleCutterRecess.md +87 -0
- 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 +38 -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 +14 -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 +37 -0
- package/dist/docs/reference/model/bounds3.md +37 -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 +38 -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 +14 -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/holeCutter.md +45 -0
- 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 +5 -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 +7 -7
- package/dist/docs/reference/text/VectorFontOptions.md +1 -1
- package/dist/docs/reference/text/VectorTextArcBaseline.md +1 -1
- package/dist/docs/reference/text/VectorTextLayout.md +1 -1
- package/dist/docs/reference/text/VectorTextLayoutOptions.md +3 -3
- package/dist/docs/reference/text/VectorTextMetrics.md +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/extrusion-finishing.js +2 -29
- package/dist/engine/hole-cutter-operation.js +148 -0
- package/dist/engine/knuckle-hinge-operation.js +128 -0
- package/dist/engine/loft-operations.js +1 -1
- package/dist/engine/mechanical-operations.js +3 -1
- package/dist/engine/modeling-context.js +20 -1
- package/dist/engine/primitive-operations.js +19 -6
- package/dist/engine/recipe-realization.js +4 -2
- package/dist/engine/section-operations.js +2 -2
- package/dist/engine/transform-operations.js +3 -3
- package/dist/geometry/bounds-value.js +121 -0
- package/dist/geometry/bounds.js +10 -25
- package/dist/geometry/circular-sampling.js +45 -0
- package/dist/geometry/convex-offset.js +41 -0
- 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 +5 -2
- 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/profiles.js +3 -23
- package/dist/geometry/profiles/rectangle.js +10 -1
- package/dist/geometry/profiles/side-profile.js +2 -0
- package/dist/geometry/svg/matrix.js +21 -0
- package/dist/geometry/svg-import.js +140 -52
- 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/hole-cutter.js +1 -0
- package/dist/model/immutable-generation-data.js +4 -12
- package/dist/model/knuckle-hinge.js +1 -0
- package/dist/model/operations.js +78 -3
- package/dist/model/recipe-declaration.js +11 -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/BoundsFromSizeOptions.md +0 -23
- package/dist/docs/reference/geometry/Transform2Matrix.md +0 -14
- package/dist/docs/reference/geometry/Transform3Matrix.md +0 -17
- package/dist/docs/reference/geometry/Vector2Tuple.md +0 -14
- package/dist/docs/reference/geometry/Vector3Tuple.md +0 -14
- package/dist/docs/reference/geometry/boundsFromSize.md +0 -83
- package/dist/docs/reference/geometry/containsBounds.md +0 -72
- 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
|
Subtracts `b` from `a` component-wise.
|
|
4
4
|
|
|
5
|
-
`const` **subtract2**: (`a`: [`
|
|
5
|
+
`const` **subtract2**: (`a`: [`Vector2Data`](Vector2Data.md), `b`: [`Vector2Data`](Vector2Data.md)) => [`Vector2Data`](Vector2Data.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,27 +10,28 @@ Subtracts `b` from `a` component-wise.
|
|
|
10
10
|
|
|
11
11
|
<a id="a"></a>
|
|
12
12
|
|
|
13
|
-
**`a`** · [`
|
|
13
|
+
**`a`** · [`Vector2Data`](Vector2Data.md) · Required
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
<a id="b"></a>
|
|
18
18
|
|
|
19
|
-
**`b`** · [`
|
|
19
|
+
**`b`** · [`Vector2Data`](Vector2Data.md) · Required
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
## Returns
|
|
24
24
|
|
|
25
|
-
[`
|
|
25
|
+
[`Vector2Data`](Vector2Data.md)
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
## Related APIs
|
|
29
29
|
|
|
30
|
-
- [
|
|
30
|
+
- [Vector2Data](Vector2Data.md)
|
|
31
31
|
|
|
32
32
|
## Guides
|
|
33
33
|
|
|
34
34
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
35
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
35
36
|
|
|
36
|
-
Package: `@metamesh/modeling@0.
|
|
37
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Subtracts `b` from `a`.
|
|
4
4
|
|
|
5
|
-
`const` **subtract3**: (`a`: [`
|
|
5
|
+
`const` **subtract3**: (`a`: [`Vector3Data`](Vector3Data.md), `b`: [`Vector3Data`](Vector3Data.md)) => [`Vector3Data`](Vector3Data.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -16,27 +16,28 @@ subtract3([4, 5, 6], [1, 2, 3]); // [3, 3, 3]
|
|
|
16
16
|
|
|
17
17
|
<a id="a"></a>
|
|
18
18
|
|
|
19
|
-
**`a`** · [`
|
|
19
|
+
**`a`** · [`Vector3Data`](Vector3Data.md) · Required
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
<a id="b"></a>
|
|
24
24
|
|
|
25
|
-
**`b`** · [`
|
|
25
|
+
**`b`** · [`Vector3Data`](Vector3Data.md) · Required
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
## Returns
|
|
30
30
|
|
|
31
|
-
[`
|
|
31
|
+
[`Vector3Data`](Vector3Data.md)
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
## Related APIs
|
|
35
35
|
|
|
36
|
-
- [
|
|
36
|
+
- [Vector3Data](Vector3Data.md)
|
|
37
37
|
|
|
38
38
|
## Guides
|
|
39
39
|
|
|
40
40
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
41
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
41
42
|
|
|
42
|
-
Package: `@metamesh/modeling@0.
|
|
43
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -79,4 +79,8 @@ sweepMesh(profile, [[0, 0, 0], [0, 0, 15], [10, 0, 25]], {
|
|
|
79
79
|
- [SweepOptions](SweepOptions.md)
|
|
80
80
|
- [TriangleMesh](TriangleMesh.md)
|
|
81
81
|
|
|
82
|
-
|
|
82
|
+
## Guides
|
|
83
|
+
|
|
84
|
+
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
85
|
+
|
|
86
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -34,4 +34,8 @@ non-decreasing, periodic at their endpoints, and reach radial zero.
|
|
|
34
34
|
- [ThreadProfile](ThreadProfile-type.md)
|
|
35
35
|
- [ThreadProfileSpec](ThreadProfileSpec.md)
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
## Guides
|
|
38
|
+
|
|
39
|
+
- [Conservative estimates and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
40
|
+
|
|
41
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# transform2
|
|
2
2
|
|
|
3
|
-
Creates an immutable XY transform, identity by default.
|
|
3
|
+
Creates an immutable XY transform, identity by default.
|
|
4
4
|
|
|
5
|
-
**transform2**(`
|
|
5
|
+
**transform2**(`input?`: [`Transform2Input`](Transform2Input.md)): [`Transform2`](Transform2-type.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,14 +10,20 @@ Creates an immutable XY transform, identity by default. Matrices are copied and
|
|
|
10
10
|
|
|
11
11
|
```ts
|
|
12
12
|
const placement = transform2().rotate(90).translate([10, 0]);
|
|
13
|
-
placement.applyPoint([1, 0]).
|
|
13
|
+
placement.applyPoint([1, 0]).toData(); // approximately [10, 1]
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
+
Values and data are copied and validated.
|
|
17
|
+
Pass it directly to Section.transform() and planar data helpers; to3D() explicitly crosses into XYZ.
|
|
18
|
+
Zero scales and singular matrices throw GeometryError; negative scales reflect.
|
|
19
|
+
|
|
20
|
+
Use `toData()` for frozen matrix interchange.
|
|
21
|
+
|
|
16
22
|
## Parameters
|
|
17
23
|
|
|
18
|
-
<a id="
|
|
24
|
+
<a id="input"></a>
|
|
19
25
|
|
|
20
|
-
**`
|
|
26
|
+
**`input`** · [`Transform2Input`](Transform2Input.md) · Optional
|
|
21
27
|
|
|
22
28
|
|
|
23
29
|
|
|
@@ -29,10 +35,11 @@ placement.applyPoint([1, 0]).toArray(); // approximately [10, 1]
|
|
|
29
35
|
## Related APIs
|
|
30
36
|
|
|
31
37
|
- [Transform2](Transform2-type.md)
|
|
32
|
-
- [
|
|
38
|
+
- [Transform2Input](Transform2Input.md)
|
|
33
39
|
|
|
34
40
|
## Guides
|
|
35
41
|
|
|
36
42
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
43
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
37
44
|
|
|
38
|
-
Package: `@metamesh/modeling@0.
|
|
45
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# transform3
|
|
2
2
|
|
|
3
|
-
Creates an immutable XYZ transform, identity by default.
|
|
3
|
+
Creates an immutable XYZ transform, identity by default.
|
|
4
4
|
|
|
5
|
-
**transform3**(`
|
|
5
|
+
**transform3**(`input?`: [`Transform3Input`](Transform3Input.md)): [`Transform3`](Transform3-type.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,14 +10,22 @@ Creates an immutable XYZ transform, identity by default. Matrices are copied and
|
|
|
10
10
|
|
|
11
11
|
```ts
|
|
12
12
|
const placement = transform3().rotate([0, 0, 90]).translate([10, 0, 0]);
|
|
13
|
-
placement.applyPoint([1, 0, 0]).
|
|
13
|
+
placement.applyPoint([1, 0, 0]).toData(); // approximately [10, 1, 0]
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
+
Values and data are copied and validated.
|
|
17
|
+
Calls apply in written order; rotations use degrees and pivots use current world coordinates.
|
|
18
|
+
Zero scales, singular matrices, nonfinite inputs and zero rotation axes throw GeometryError.
|
|
19
|
+
Use frameTransform3(frame) as the input for existing orthonormal frame placement.
|
|
20
|
+
|
|
21
|
+
Use `toData()` for frozen matrix interchange.
|
|
22
|
+
[composeTransform3](composeTransform3.md) takes matrices in after, before order.
|
|
23
|
+
|
|
16
24
|
## Parameters
|
|
17
25
|
|
|
18
|
-
<a id="
|
|
26
|
+
<a id="input"></a>
|
|
19
27
|
|
|
20
|
-
**`
|
|
28
|
+
**`input`** · [`Transform3Input`](Transform3Input.md) · Optional
|
|
21
29
|
|
|
22
30
|
|
|
23
31
|
|
|
@@ -29,10 +37,11 @@ placement.applyPoint([1, 0, 0]).toArray(); // approximately [10, 1, 0]
|
|
|
29
37
|
## Related APIs
|
|
30
38
|
|
|
31
39
|
- [Transform3](Transform3-type.md)
|
|
32
|
-
- [
|
|
40
|
+
- [Transform3Input](Transform3Input.md)
|
|
33
41
|
|
|
34
42
|
## Guides
|
|
35
43
|
|
|
36
44
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
45
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
37
46
|
|
|
38
|
-
Package: `@metamesh/modeling@0.
|
|
47
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Returns the determinant of a transform's linear 3x3 component.
|
|
4
4
|
|
|
5
|
-
**transformDeterminant3**(`transform`: [`
|
|
5
|
+
**transformDeterminant3**(`transform`: [`Transform3Data`](Transform3Data.md)): `number`
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -12,7 +12,7 @@ A negative result identifies a reflection; zero is rejected as singular.
|
|
|
12
12
|
|
|
13
13
|
<a id="transform"></a>
|
|
14
14
|
|
|
15
|
-
**`transform`** · [`
|
|
15
|
+
**`transform`** · [`Transform3Data`](Transform3Data.md) · Required
|
|
16
16
|
|
|
17
17
|
Valid affine transform.
|
|
18
18
|
|
|
@@ -27,10 +27,11 @@ Signed linear determinant.
|
|
|
27
27
|
|
|
28
28
|
## Related APIs
|
|
29
29
|
|
|
30
|
-
- [
|
|
30
|
+
- [Transform3Data](Transform3Data.md)
|
|
31
31
|
|
|
32
32
|
## Guides
|
|
33
33
|
|
|
34
34
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
35
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
35
36
|
|
|
36
|
-
Package: `@metamesh/modeling@0.
|
|
37
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -37,4 +37,8 @@ Transforms serialized polygon data with reflection-safe winding, without an engi
|
|
|
37
37
|
- [RegionData](RegionData.md)
|
|
38
38
|
- [Transform2Input](Transform2Input.md)
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
## Guides
|
|
41
|
+
|
|
42
|
+
- [Choose a geometry representation](../../guides/concepts.md#geometry-vocabulary)
|
|
43
|
+
|
|
44
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -39,4 +39,8 @@ A mesh with fresh transformed positions and copied or reversed indices.
|
|
|
39
39
|
- [Transform3Input](Transform3Input.md)
|
|
40
40
|
- [TriangleMesh](TriangleMesh.md)
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
## Guides
|
|
43
|
+
|
|
44
|
+
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
45
|
+
|
|
46
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Creates an immutable translation transform.
|
|
4
4
|
|
|
5
|
-
**translationTransform3**(`offset`: [`
|
|
5
|
+
**translationTransform3**(`offset`: [`Vector3Data`](Vector3Data.md)): [`Transform3Data`](Transform3Data.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,7 +10,7 @@ Creates an immutable translation transform.
|
|
|
10
10
|
|
|
11
11
|
<a id="offset"></a>
|
|
12
12
|
|
|
13
|
-
**`offset`** · [`
|
|
13
|
+
**`offset`** · [`Vector3Data`](Vector3Data.md) · Required
|
|
14
14
|
|
|
15
15
|
Finite XYZ translation in model units.
|
|
16
16
|
|
|
@@ -18,18 +18,19 @@ Finite XYZ translation in model units.
|
|
|
18
18
|
|
|
19
19
|
## Returns
|
|
20
20
|
|
|
21
|
-
[`
|
|
21
|
+
[`Transform3Data`](Transform3Data.md)
|
|
22
22
|
|
|
23
23
|
A frozen row-major transform.
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
## Related APIs
|
|
27
27
|
|
|
28
|
-
- [
|
|
29
|
-
- [
|
|
28
|
+
- [Transform3Data](Transform3Data.md)
|
|
29
|
+
- [Vector3Data](Vector3Data.md)
|
|
30
30
|
|
|
31
31
|
## Guides
|
|
32
32
|
|
|
33
33
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
34
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
34
35
|
|
|
35
|
-
Package: `@metamesh/modeling@0.
|
|
36
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -23,4 +23,8 @@ Ear-clips one normalized simple CCW loop into stable local vertex indices.
|
|
|
23
23
|
|
|
24
24
|
- [Contour](Contour.md)
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
## Guides
|
|
27
|
+
|
|
28
|
+
- [Choose a geometry representation](../../guides/concepts.md#geometry-vocabulary)
|
|
29
|
+
|
|
30
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
# validateSolidMesh
|
|
2
2
|
|
|
3
|
-
Checks closed indexed topology, triangle intersections, and alternating nested shell orientation.
|
|
3
|
+
Checks closed indexed topology, triangle intersections, and alternating nested shell orientation.
|
|
4
4
|
|
|
5
5
|
**validateSolidMesh**(`mesh`: [`TriangleMesh`](TriangleMesh.md), `options?`: [`SolidMeshValidationOptions`](SolidMeshValidationOptions.md)): [`TriangleMesh`](TriangleMesh.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
Outward exterior shells and inward cavity shells are accepted. Separate shells must not touch,
|
|
10
|
+
intersect, or overlap as material. Indexed neighbours may share their own vertex or edge.
|
|
11
|
+
|
|
9
12
|
Uses bounded floating-point tests, not exact predicates or repair. Contacts within the selected
|
|
10
13
|
tolerance reject conservatively. At most 200,000 triangles and 2,000,000 spatial/containment tests
|
|
11
14
|
are supported; exhausting a ceiling throws COMPLEXITY_LIMIT rather than claiming validity.
|
|
@@ -49,4 +52,8 @@ The original mesh after every requested check succeeds.
|
|
|
49
52
|
- [SolidMeshValidationOptions](SolidMeshValidationOptions.md)
|
|
50
53
|
- [TriangleMesh](TriangleMesh.md)
|
|
51
54
|
|
|
52
|
-
|
|
55
|
+
## Guides
|
|
56
|
+
|
|
57
|
+
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
58
|
+
|
|
59
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Validates that a transform is finite, affine, and non-singular.
|
|
4
4
|
|
|
5
|
-
**validateTransform3**(`transform`: [`
|
|
5
|
+
**validateTransform3**(`transform`: [`Transform3Data`](Transform3Data.md), `tolerance?`: [`GeometryToleranceOptions`](GeometryToleranceOptions.md)): [`Transform3Data`](Transform3Data.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -10,7 +10,7 @@ Validates that a transform is finite, affine, and non-singular.
|
|
|
10
10
|
|
|
11
11
|
<a id="transform"></a>
|
|
12
12
|
|
|
13
|
-
**`transform`** · [`
|
|
13
|
+
**`transform`** · [`Transform3Data`](Transform3Data.md) · Required
|
|
14
14
|
|
|
15
15
|
Row-major matrix to validate.
|
|
16
16
|
|
|
@@ -26,7 +26,7 @@ Optional comparison overrides.
|
|
|
26
26
|
|
|
27
27
|
## Returns
|
|
28
28
|
|
|
29
|
-
[`
|
|
29
|
+
[`Transform3Data`](Transform3Data.md)
|
|
30
30
|
|
|
31
31
|
The original transform after successful validation.
|
|
32
32
|
|
|
@@ -38,10 +38,11 @@ The original transform after successful validation.
|
|
|
38
38
|
## Related APIs
|
|
39
39
|
|
|
40
40
|
- [GeometryToleranceOptions](GeometryToleranceOptions.md)
|
|
41
|
-
- [
|
|
41
|
+
- [Transform3Data](Transform3Data.md)
|
|
42
42
|
|
|
43
43
|
## Guides
|
|
44
44
|
|
|
45
45
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
46
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
46
47
|
|
|
47
|
-
Package: `@metamesh/modeling@0.
|
|
48
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -56,4 +56,8 @@ The original mesh after successful validation.
|
|
|
56
56
|
- [TriangleMesh](TriangleMesh.md)
|
|
57
57
|
- [TriangleMeshValidationOptions](TriangleMeshValidationOptions.md)
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
## Guides
|
|
60
|
+
|
|
61
|
+
- [Exact counts and preflight guarantees](../../guides/concepts.md#check-preflight-guarantees)
|
|
62
|
+
|
|
63
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
# vector2
|
|
2
2
|
|
|
3
|
-
Creates immutable XY arithmetic from a finite tuple or vector, snapshotting the coordinates.
|
|
3
|
+
Creates immutable XY arithmetic from a finite tuple or vector, snapshotting the coordinates.
|
|
4
4
|
|
|
5
5
|
**vector2**(`input`: [`Vector2Input`](Vector2Input.md)): [`Vector2`](Vector2-type.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
Values and results are finite. Invalid dimensions throw `INVALID_ARGUMENT`; nonfinite coordinates
|
|
10
|
+
and overflow throw `NON_FINITE_VALUE` GeometryError.
|
|
11
|
+
Use transform2().applyDirection(value) for rotations and nonuniform scaling.
|
|
12
|
+
|
|
13
|
+
Use `toData()` for frozen tuple interchange, or
|
|
14
|
+
[normalize2](normalize2.md) for tuple-based normalization in numerical loops.
|
|
15
|
+
|
|
9
16
|
## Parameters
|
|
10
17
|
|
|
11
18
|
<a id="input"></a>
|
|
@@ -27,5 +34,6 @@ Creates immutable XY arithmetic from a finite tuple or vector, snapshotting the
|
|
|
27
34
|
## Guides
|
|
28
35
|
|
|
29
36
|
- [Reusable transforms and vector math](../../guides/concepts.md#reuse-a-transform-across-shapes-and-coordinates)
|
|
37
|
+
- [Fluent values and tuple kernels](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
30
38
|
|
|
31
|
-
Package: `@metamesh/modeling@0.
|
|
39
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# vector3
|
|
2
2
|
|
|
3
|
-
Creates immutable XYZ arithmetic from a finite tuple or vector, snapshotting the coordinates.
|
|
3
|
+
Creates immutable XYZ arithmetic from a finite tuple or vector, snapshotting the coordinates.
|
|
4
4
|
|
|
5
5
|
**vector3**(`input`: [`Vector3Input`](Vector3Input.md)): [`Vector3`](Vector3-type.md)
|
|
6
6
|
|
|
@@ -13,6 +13,13 @@ const direction = vector3([1, 2, 3]).add([4, 0, 0]).normalize().scale(10);
|
|
|
13
13
|
const alignment = direction.dot([0, 0, 1]);
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
+
Values and results are finite. Invalid dimensions throw `INVALID_ARGUMENT`; nonfinite coordinates
|
|
17
|
+
and overflow throw `NON_FINITE_VALUE` GeometryError.
|
|
18
|
+
Use transform3().applyDirection(value) for rotations and nonuniform scaling.
|
|
19
|
+
|
|
20
|
+
Use `toData()` for frozen tuple interchange, or
|
|
21
|
+
[normalize3](normalize3.md) for tuple-based normalization in numerical loops.
|
|
22
|
+
|
|
16
23
|
## Parameters
|
|
17
24
|
|
|
18
25
|
<a id="input"></a>
|
|
@@ -34,5 +41,6 @@ const alignment = direction.dot([0, 0, 1]);
|
|
|
34
41
|
## Guides
|
|
35
42
|
|
|
36
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)
|
|
37
45
|
|
|
38
|
-
Package: `@metamesh/modeling@0.
|
|
46
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -12,19 +12,21 @@ const contour = rectangleContour({ size: [30, 20], treatment: { kind: "round", r
|
|
|
12
12
|
|
|
13
13
|
Lengths use millimetres. Winding and closing conventions are explicit. Mutable external meshes are inspected freshly, and predictable allocations are bounded before sampling.
|
|
14
14
|
|
|
15
|
-
Use
|
|
15
|
+
Use `bounds2`/`bounds3` for immutable measurement queries and `Bounds2Data`/`Bounds3Data` for min/max records. Standalone bounds helpers fit and arrange parts from either form. Fit text vector paths before sampling to retain physical tolerance.
|
|
16
|
+
|
|
17
|
+
Choose [fluent values or standalone algorithms](../guides/concepts.md#choose-fluent-values-or-standalone-algorithms), compare [geometry representations](../guides/concepts.md#geometry-vocabulary), and check [preflight guarantees](../guides/concepts.md#check-preflight-guarantees).
|
|
16
18
|
|
|
17
19
|
## Categories
|
|
18
20
|
|
|
19
|
-
- [Mechanical foundations](geometry/categories/mechanical.md) — Resolve gears, fastener standards, thread profiles, fit, and predictable allocations.
|
|
21
|
+
- [Mechanical foundations](geometry/categories/mechanical.md) — Resolve gears, knuckle joints, fastener standards, thread profiles, fit, and predictable allocations.
|
|
20
22
|
- [Triangle meshes and surfaces](geometry/categories/meshes.md) — Build, transform, validate, analyze, and locally optimize copied indexed meshes.
|
|
21
23
|
- [SVG and vector layouts](geometry/categories/vector-import.md) — Parse bounded painted SVG and carry explicit prepared text geometry.
|
|
22
24
|
- [Profiles and regions](geometry/categories/profiles-regions.md) — Define winding, holes, stable profile landmarks, and reusable planar boundaries.
|
|
23
25
|
- [Curves and paths](geometry/categories/curves-paths.md) — Sample reusable lines, arcs, cubic curves, and path frames with explicit physical policies.
|
|
24
|
-
- [Bounds
|
|
25
|
-
- [Pattern
|
|
26
|
+
- [Bounds and layout](geometry/categories/bounds-layout.md) — Measure finite bounds, test positioned containment, and fit or arrange geometry.
|
|
27
|
+
- [Pattern placement](geometry/categories/pattern-placement.md) — Calculate pure linear, radial, grid, and path transforms.
|
|
26
28
|
- [Transforms and vector math](geometry/categories/transforms-math.md) — Build immutable reusable placements and calculate with fluent vectors or tuple kernels.
|
|
27
29
|
- [Resolution and errors](geometry/categories/resolution-errors.md) — Resolve physical sampling, numerical tolerances, and contextual failures.
|
|
28
30
|
- [Primitive options](geometry/categories/primitive-options.md) — Share one option contract for dimensional primitives and edge treatments.
|
|
29
31
|
|
|
30
|
-
Package: `@metamesh/modeling@0.
|
|
32
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -11,7 +11,7 @@ be parallel to `direction`; anchor construction projects and normalizes it.
|
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
`readonly` **direction**: [`
|
|
14
|
+
`readonly` **direction**: [`Vector3Data`](Vector3Data.md)
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
|
|
@@ -23,7 +23,7 @@ Unit outward normal used as the anchor's local +Z direction.
|
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
|
|
26
|
-
`readonly` **position**: [`
|
|
26
|
+
`readonly` **position**: [`Vector3Data`](Vector3Data.md)
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
|
|
@@ -35,7 +35,7 @@ World-space attachment position.
|
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
`readonly` **up**: [`
|
|
38
|
+
`readonly` **up**: [`Vector3Data`](Vector3Data.md)
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
|
|
@@ -44,11 +44,12 @@ Roll guide projected into the plane perpendicular to `direction`.
|
|
|
44
44
|
|
|
45
45
|
## Related APIs
|
|
46
46
|
|
|
47
|
-
- [
|
|
47
|
+
- [Vector3Data](Vector3Data.md)
|
|
48
48
|
|
|
49
49
|
## Guides
|
|
50
50
|
|
|
51
51
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
52
52
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
53
|
+
- [Fluent values and standalone algorithms](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
53
54
|
|
|
54
|
-
Package: `@metamesh/modeling@0.
|
|
55
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -64,5 +64,6 @@ Optional numeric comparison overrides.
|
|
|
64
64
|
|
|
65
65
|
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
66
66
|
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
67
|
+
- [Fluent values and standalone algorithms](../../guides/concepts.md#choose-fluent-values-or-standalone-algorithms)
|
|
67
68
|
|
|
68
|
-
Package: `@metamesh/modeling@0.
|
|
69
|
+
Package: `@metamesh/modeling@0.17.0`.
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# Bounds2
|
|
2
|
+
|
|
3
|
+
Immutable finite XY bounds in millimetres, with tuple coordinates for data interoperability.
|
|
4
|
+
|
|
5
|
+
## Extends
|
|
6
|
+
|
|
7
|
+
- [`Bounds2Data`](Bounds2Data.md)
|
|
8
|
+
|
|
9
|
+
## Properties
|
|
10
|
+
|
|
11
|
+
### max
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
`readonly` **max**: [`Vector2Data`](Vector2Data.md)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
Inclusive maximum X/Y coordinates.
|
|
20
|
+
|
|
21
|
+
#### Inherited from
|
|
22
|
+
|
|
23
|
+
[`Bounds2Data`](Bounds2Data.md).[`max`](Bounds2Data.md#max)
|
|
24
|
+
|
|
25
|
+
***
|
|
26
|
+
|
|
27
|
+
### min
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
`readonly` **min**: [`Vector2Data`](Vector2Data.md)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
Inclusive minimum X/Y coordinates.
|
|
36
|
+
|
|
37
|
+
#### Inherited from
|
|
38
|
+
|
|
39
|
+
[`Bounds2Data`](Bounds2Data.md).[`min`](Bounds2Data.md#min)
|
|
40
|
+
|
|
41
|
+
## Methods
|
|
42
|
+
|
|
43
|
+
### size()
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
**size**(): [`Vector2`](Vector2-type.md)
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
Returns nonnegative X/Y dimensions in millimetres, including zero extents.
|
|
52
|
+
|
|
53
|
+
#### Returns
|
|
54
|
+
|
|
55
|
+
[`Vector2`](Vector2-type.md)
|
|
56
|
+
|
|
57
|
+
***
|
|
58
|
+
|
|
59
|
+
### center()
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
**center**(): [`Vector2`](Vector2-type.md)
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
Returns the midpoint in millimetres.
|
|
68
|
+
|
|
69
|
+
#### Returns
|
|
70
|
+
|
|
71
|
+
[`Vector2`](Vector2-type.md)
|
|
72
|
+
|
|
73
|
+
***
|
|
74
|
+
|
|
75
|
+
### containsBounds()
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
**containsBounds**(`other`: [`Bounds2Input`](Bounds2Input.md)): `boolean`
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
Tests positioned XY containment, including touching boundaries.
|
|
84
|
+
|
|
85
|
+
#### Parameters
|
|
86
|
+
|
|
87
|
+
<a id="other"></a>
|
|
88
|
+
|
|
89
|
+
**`other`** · [`Bounds2Input`](Bounds2Input.md) · Required
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
#### Returns
|
|
94
|
+
|
|
95
|
+
`boolean`
|
|
96
|
+
|
|
97
|
+
***
|
|
98
|
+
|
|
99
|
+
### toData()
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
**toData**(): [`Bounds2Data`](Bounds2Data.md)
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
Returns this value's frozen plain record; repeated calls do not allocate.
|
|
108
|
+
|
|
109
|
+
#### Returns
|
|
110
|
+
|
|
111
|
+
[`Bounds2Data`](Bounds2Data.md)
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
## Related APIs
|
|
115
|
+
|
|
116
|
+
- [Bounds2Data](Bounds2Data.md)
|
|
117
|
+
- [Bounds2Input](Bounds2Input.md)
|
|
118
|
+
- [Vector2](Vector2-type.md)
|
|
119
|
+
- [Vector2Data](Vector2Data.md)
|
|
120
|
+
|
|
121
|
+
## Guides
|
|
122
|
+
|
|
123
|
+
- [Measure and compare bounds](../../guides/concepts.md#measure-and-compare-bounds)
|
|
124
|
+
|
|
125
|
+
Package: `@metamesh/modeling@0.17.0`.
|