@metamesh/modeling 0.12.0 → 0.14.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 +40 -0
- package/README.md +103 -72
- package/dist/api/engine.d.ts +123 -97
- package/dist/api/geometry.d.ts +4232 -3307
- package/dist/api/index.d.ts +2758 -2268
- package/dist/api/text.d.ts +119 -107
- package/dist/docs/guides/concepts.md +300 -0
- package/dist/docs/guides/fonts.md +59 -0
- package/dist/docs/guides/fundamentals.md +137 -0
- package/dist/docs/guides/generation.md +223 -0
- package/dist/docs/guides/hosting.md +91 -0
- package/dist/docs/guides/recipes.md +718 -0
- package/dist/docs/manifest.json +10703 -0
- package/dist/docs/reference/engine/Export3mfOptions.md +29 -0
- package/dist/docs/reference/engine/ExportMeshPart.md +65 -0
- package/dist/docs/reference/engine/GenerationOptions.md +62 -0
- package/dist/docs/reference/engine/GeometryResource.md +77 -0
- package/dist/docs/reference/engine/ModelDependencies.md +41 -0
- package/dist/docs/reference/engine/ModelEngine.md +103 -0
- package/dist/docs/reference/engine/ModelEngineOptions.md +33 -0
- package/dist/docs/reference/engine/ModelSession.md +96 -0
- package/dist/docs/reference/engine/ModelSnapshot.md +173 -0
- package/dist/docs/reference/engine/SessionOptions.md +123 -0
- package/dist/docs/reference/engine/SnapshotPart.md +130 -0
- package/dist/docs/reference/engine/categories/host-lifecycle.md +37 -0
- package/dist/docs/reference/engine/createModelEngine.md +56 -0
- package/dist/docs/reference/engine/defaultModelingLimits.md +7 -0
- package/dist/docs/reference/engine/modelingWasmUrl.md +7 -0
- package/dist/docs/reference/engine/validateModel.md +48 -0
- package/dist/docs/reference/engine.md +25 -0
- package/dist/docs/reference/geometry/AcmeThreadProfileSpec.md +75 -0
- package/dist/docs/reference/geometry/AlignedCircularSegmentsOptions.md +92 -0
- package/dist/docs/reference/geometry/Anchor3.md +53 -0
- package/dist/docs/reference/geometry/ArcCurve2.md +70 -0
- package/dist/docs/reference/geometry/ArcCurve3.md +94 -0
- package/dist/docs/reference/geometry/AttachTransformOptions.md +62 -0
- package/dist/docs/reference/geometry/AxisAngleRotation3.md +66 -0
- package/dist/docs/reference/geometry/Bounds2.md +39 -0
- package/dist/docs/reference/geometry/Bounds3.md +39 -0
- package/dist/docs/reference/geometry/BoundsFit2.md +52 -0
- package/dist/docs/reference/geometry/BoundsFit3.md +52 -0
- package/dist/docs/reference/geometry/BoundsFitOptions.md +23 -0
- package/dist/docs/reference/geometry/BoundsFromSizeOptions.md +23 -0
- package/dist/docs/reference/geometry/BoxAnchorFace.md +14 -0
- package/dist/docs/reference/geometry/BoxAnchorOptions.md +63 -0
- package/dist/docs/reference/geometry/BoxEdge.md +7 -0
- package/dist/docs/reference/geometry/BoxEdgeSelection.md +14 -0
- package/dist/docs/reference/geometry/BoxEdgeTreatments.md +15 -0
- package/dist/docs/reference/geometry/BoxOptions.md +87 -0
- package/dist/docs/reference/geometry/ButtressPressureFlankSide.md +7 -0
- package/dist/docs/reference/geometry/ButtressThreadProfileSpec.md +93 -0
- package/dist/docs/reference/geometry/ChamferedEdgeTreatment.md +29 -0
- package/dist/docs/reference/geometry/CircleContourOptions.md +15 -0
- package/dist/docs/reference/geometry/CircularPrimitiveOptions.md +59 -0
- package/dist/docs/reference/geometry/CircularResolutionOptions.md +107 -0
- package/dist/docs/reference/geometry/ClearanceHoleDimensions.md +41 -0
- package/dist/docs/reference/geometry/ClearanceHoleFit.md +7 -0
- package/dist/docs/reference/geometry/ClosestPointOnPathOptions.md +34 -0
- package/dist/docs/reference/geometry/ClosestPointOnPathResult.md +65 -0
- package/dist/docs/reference/geometry/CompensatedThreadDiameters.md +53 -0
- package/dist/docs/reference/geometry/Contour.md +17 -0
- package/dist/docs/reference/geometry/ContourCurve.md +35 -0
- package/dist/docs/reference/geometry/ContourPoint.md +29 -0
- package/dist/docs/reference/geometry/ContourSegment.md +86 -0
- package/dist/docs/reference/geometry/CorrespondingComponent.md +46 -0
- package/dist/docs/reference/geometry/CorrespondingContour.md +46 -0
- package/dist/docs/reference/geometry/CorrespondingProfile.md +22 -0
- package/dist/docs/reference/geometry/CorrespondingProfileStation.md +27 -0
- package/dist/docs/reference/geometry/CubicBezierCurve2.md +70 -0
- package/dist/docs/reference/geometry/CubicBezierCurve3.md +70 -0
- package/dist/docs/reference/geometry/Curve2.md +16 -0
- package/dist/docs/reference/geometry/Curve3.md +16 -0
- package/dist/docs/reference/geometry/CurveSamplingOptions.md +64 -0
- package/dist/docs/reference/geometry/CustomThreadProfileSpec.md +73 -0
- package/dist/docs/reference/geometry/CylinderAnchorFace.md +14 -0
- package/dist/docs/reference/geometry/CylinderAnchorOptions.md +87 -0
- package/dist/docs/reference/geometry/CylinderOptions.md +53 -0
- package/dist/docs/reference/geometry/CylindricalGearDimensions.md +209 -0
- package/dist/docs/reference/geometry/CylindricalGearMeshKind.md +7 -0
- package/dist/docs/reference/geometry/CylindricalGearOutlineOptions.md +71 -0
- package/dist/docs/reference/geometry/CylindricalGearPairDimensions.md +82 -0
- package/dist/docs/reference/geometry/CylindricalGearPairMotionOptions.md +34 -0
- package/dist/docs/reference/geometry/CylindricalGearPairMotionReport.md +41 -0
- package/dist/docs/reference/geometry/CylindricalGearPairSpec.md +47 -0
- package/dist/docs/reference/geometry/CylindricalGearSpec.md +82 -0
- package/dist/docs/reference/geometry/DEFAULT_GEOMETRY_TOLERANCE.md +7 -0
- package/dist/docs/reference/geometry/EdgeTreatment.md +17 -0
- package/dist/docs/reference/geometry/EllipseContourOptions.md +15 -0
- package/dist/docs/reference/geometry/EndTreatments.md +34 -0
- package/dist/docs/reference/geometry/ExtrudeOptions.md +134 -0
- package/dist/docs/reference/geometry/ExtrusionSamplingOptions.md +77 -0
- package/dist/docs/reference/geometry/FittedTextLayout.md +60 -0
- package/dist/docs/reference/geometry/Frame3.md +58 -0
- package/dist/docs/reference/geometry/GeometryError.md +97 -0
- package/dist/docs/reference/geometry/GeometryErrorCode.md +7 -0
- package/dist/docs/reference/geometry/GeometryErrorContext.md +29 -0
- package/dist/docs/reference/geometry/GeometryResolution.md +74 -0
- package/dist/docs/reference/geometry/GeometrySamplingLimits.md +62 -0
- package/dist/docs/reference/geometry/GeometryToleranceOptions.md +41 -0
- package/dist/docs/reference/geometry/GridPatternOptions.md +42 -0
- package/dist/docs/reference/geometry/HeightfieldMeshLimits.md +14 -0
- package/dist/docs/reference/geometry/HeightfieldOptions.md +67 -0
- package/dist/docs/reference/geometry/HeightfieldPreflight.md +53 -0
- package/dist/docs/reference/geometry/HelicalThreadRidgeMeshOptions.md +141 -0
- package/dist/docs/reference/geometry/HelicalThreadSolidMeshOptions.md +265 -0
- package/dist/docs/reference/geometry/HelicalThreadSolidMeshPreflight.md +53 -0
- package/dist/docs/reference/geometry/IDENTITY_TRANSFORM3.md +18 -0
- package/dist/docs/reference/geometry/InternalThreadCutterOptions.md +242 -0
- package/dist/docs/reference/geometry/LineCurve2.md +46 -0
- package/dist/docs/reference/geometry/LineCurve3.md +46 -0
- package/dist/docs/reference/geometry/LinearPatternOptions.md +30 -0
- package/dist/docs/reference/geometry/LoftCorrespondence.md +19 -0
- package/dist/docs/reference/geometry/LoftMeshStation.md +27 -0
- package/dist/docs/reference/geometry/LoftOptions.md +84 -0
- package/dist/docs/reference/geometry/LoftPlacement.md +66 -0
- package/dist/docs/reference/geometry/METRIC_FASTENER_STANDARDS.md +18 -0
- package/dist/docs/reference/geometry/MatchProfilesOptions.md +35 -0
- package/dist/docs/reference/geometry/MetricFastenerSize.md +7 -0
- package/dist/docs/reference/geometry/MetricFastenerStandard.md +72 -0
- package/dist/docs/reference/geometry/MetricHexNutDimensions.md +29 -0
- package/dist/docs/reference/geometry/MetricSocketCapHeadDimensions.md +41 -0
- package/dist/docs/reference/geometry/ModelingLimits.md +126 -0
- package/dist/docs/reference/geometry/PRINTABLE_THREAD_FIT_POLICIES.md +17 -0
- package/dist/docs/reference/geometry/Path2.md +14 -0
- package/dist/docs/reference/geometry/Path3.md +14 -0
- package/dist/docs/reference/geometry/PathFrame.md +46 -0
- package/dist/docs/reference/geometry/PathNormalGuide.md +38 -0
- package/dist/docs/reference/geometry/PathPatternOptions.md +46 -0
- package/dist/docs/reference/geometry/PathPlacement.md +34 -0
- package/dist/docs/reference/geometry/Pivot2Options.md +26 -0
- package/dist/docs/reference/geometry/Pivot3Options.md +26 -0
- package/dist/docs/reference/geometry/PlanarMeshOptimizationFallbackReason.md +7 -0
- package/dist/docs/reference/geometry/PlanarMeshOptimizationOptions.md +156 -0
- package/dist/docs/reference/geometry/PlanarMeshOptimizationResult.md +120 -0
- package/dist/docs/reference/geometry/PlanarPatchQuality.md +190 -0
- package/dist/docs/reference/geometry/PolygonData.md +38 -0
- package/dist/docs/reference/geometry/PolylineResamplingOptions.md +92 -0
- package/dist/docs/reference/geometry/PrimitivePlacement.md +31 -0
- package/dist/docs/reference/geometry/PrimitivePlacementOptions.md +83 -0
- package/dist/docs/reference/geometry/PrintableThreadFit.md +7 -0
- package/dist/docs/reference/geometry/PrintableThreadFitPolicy.md +45 -0
- package/dist/docs/reference/geometry/Profile.md +22 -0
- package/dist/docs/reference/geometry/ProfileComponent2.md +46 -0
- package/dist/docs/reference/geometry/ProfileContour2.md +34 -0
- package/dist/docs/reference/geometry/ProfileSpan2.md +47 -0
- package/dist/docs/reference/geometry/ProfiledEdgeTreatment.md +36 -0
- package/dist/docs/reference/geometry/RackPitchDimensions.md +113 -0
- package/dist/docs/reference/geometry/RackPitchSpec.md +77 -0
- package/dist/docs/reference/geometry/RadialPatternOptions.md +62 -0
- package/dist/docs/reference/geometry/RadialSizing.md +7 -0
- package/dist/docs/reference/geometry/RadialSizingOptions.md +40 -0
- package/dist/docs/reference/geometry/RectangleContourOptions.md +66 -0
- package/dist/docs/reference/geometry/RectangleCornerTreatment.md +34 -0
- package/dist/docs/reference/geometry/RectangleCornerTreatments.md +14 -0
- package/dist/docs/reference/geometry/RectangleProfileOptions.md +94 -0
- package/dist/docs/reference/geometry/RegionData.md +14 -0
- package/dist/docs/reference/geometry/RegularPolygonContourOptions.md +84 -0
- package/dist/docs/reference/geometry/ResolvedGeometryTolerance.md +65 -0
- package/dist/docs/reference/geometry/RevolveOptions.md +82 -0
- package/dist/docs/reference/geometry/RoundedEdgeTreatment.md +91 -0
- package/dist/docs/reference/geometry/RowLayoutOptions.md +23 -0
- package/dist/docs/reference/geometry/SampleContourOptions.md +71 -0
- package/dist/docs/reference/geometry/SampleHelixOptions.md +95 -0
- package/dist/docs/reference/geometry/SampleSideProfileOptions.md +71 -0
- package/dist/docs/reference/geometry/SampledCurve2.md +34 -0
- package/dist/docs/reference/geometry/SampledCurve3.md +34 -0
- package/dist/docs/reference/geometry/SampledThreadHelices.md +58 -0
- package/dist/docs/reference/geometry/SideProfileCurve.md +35 -0
- package/dist/docs/reference/geometry/SideProfilePoint.md +29 -0
- package/dist/docs/reference/geometry/SideProfileSegment.md +86 -0
- package/dist/docs/reference/geometry/SmoothEdgeTreatment.md +71 -0
- package/dist/docs/reference/geometry/SolidMeshValidationOptions.md +34 -0
- package/dist/docs/reference/geometry/SphereOptions.md +15 -0
- package/dist/docs/reference/geometry/SquareThreadProfileSpec.md +75 -0
- package/dist/docs/reference/geometry/StrokePathCap.md +7 -0
- package/dist/docs/reference/geometry/StrokePathJoin.md +7 -0
- package/dist/docs/reference/geometry/StrokePathRegionOptions.md +85 -0
- package/dist/docs/reference/geometry/SvgImportOptions.md +60 -0
- package/dist/docs/reference/geometry/SvgRegionPreflight.md +61 -0
- package/dist/docs/reference/geometry/SvgRegionPreflightGeometryMetrics.md +118 -0
- package/dist/docs/reference/geometry/SvgRegionPreflightRepairs.md +65 -0
- package/dist/docs/reference/geometry/SvgRegionPreflightSourceMetrics.md +53 -0
- package/dist/docs/reference/geometry/SweepOptions.md +109 -0
- package/dist/docs/reference/geometry/SweepOrientation.md +109 -0
- package/dist/docs/reference/geometry/ThreadBevelOptions.md +53 -0
- package/dist/docs/reference/geometry/ThreadCircularSegmentsOptions.md +100 -0
- package/dist/docs/reference/geometry/ThreadCompensationOptions.md +73 -0
- package/dist/docs/reference/geometry/ThreadEndStyle.md +7 -0
- package/dist/docs/reference/geometry/ThreadEndTreatmentOptions.md +113 -0
- package/dist/docs/reference/geometry/ThreadHandedness.md +7 -0
- package/dist/docs/reference/geometry/ThreadHelixOptions.md +120 -0
- package/dist/docs/reference/geometry/ThreadLeadInEnvelope.md +7 -0
- package/dist/docs/reference/geometry/ThreadLeadInShape.md +7 -0
- package/dist/docs/reference/geometry/ThreadProfile.md +82 -0
- package/dist/docs/reference/geometry/ThreadProfileBaseSpec.md +49 -0
- package/dist/docs/reference/geometry/ThreadProfileSpec.md +19 -0
- package/dist/docs/reference/geometry/ThreadRole.md +7 -0
- package/dist/docs/reference/geometry/ThreadedNutBevel.md +7 -0
- package/dist/docs/reference/geometry/ThreadedNutOptions.md +269 -0
- package/dist/docs/reference/geometry/ThreadedNutPreflight.md +94 -0
- package/dist/docs/reference/geometry/ThreadedNutShape.md +7 -0
- package/dist/docs/reference/geometry/ThreadedRodOptions.md +242 -0
- package/dist/docs/reference/geometry/TorusOptions.md +105 -0
- package/dist/docs/reference/geometry/Transform2-type.md +255 -0
- package/dist/docs/reference/geometry/Transform2Input.md +19 -0
- package/dist/docs/reference/geometry/Transform2Matrix.md +14 -0
- package/dist/docs/reference/geometry/Transform3-type.md +295 -0
- package/dist/docs/reference/geometry/Transform3Input.md +19 -0
- package/dist/docs/reference/geometry/Transform3Matrix.md +17 -0
- package/dist/docs/reference/geometry/TrapezoidalThreadProfileSpec.md +91 -0
- package/dist/docs/reference/geometry/TriangleMesh.md +34 -0
- package/dist/docs/reference/geometry/TriangleMeshAnalysis.md +119 -0
- package/dist/docs/reference/geometry/TriangleMeshAnalysisOptions.md +75 -0
- package/dist/docs/reference/geometry/TriangleMeshMeasurements.md +75 -0
- package/dist/docs/reference/geometry/TriangleMeshQualityOptions.md +39 -0
- package/dist/docs/reference/geometry/TriangleMeshQualityReport.md +190 -0
- package/dist/docs/reference/geometry/TriangleMeshSignature.md +107 -0
- package/dist/docs/reference/geometry/TriangleMeshSignatureOptions.md +41 -0
- package/dist/docs/reference/geometry/TriangleMeshSignatureTolerances.md +29 -0
- package/dist/docs/reference/geometry/TriangleMeshValidationOptions.md +51 -0
- package/dist/docs/reference/geometry/TriangularThreadProfileSpec.md +91 -0
- package/dist/docs/reference/geometry/TubeOptions.md +138 -0
- package/dist/docs/reference/geometry/Vector2-type.md +269 -0
- package/dist/docs/reference/geometry/Vector2Input.md +19 -0
- package/dist/docs/reference/geometry/Vector2Tuple.md +14 -0
- package/dist/docs/reference/geometry/Vector3-type.md +281 -0
- package/dist/docs/reference/geometry/Vector3Input.md +19 -0
- package/dist/docs/reference/geometry/Vector3Tuple.md +14 -0
- package/dist/docs/reference/geometry/VectorTextArcBaseline.md +53 -0
- package/dist/docs/reference/geometry/VectorTextLayout.md +39 -0
- package/dist/docs/reference/geometry/VectorTextLayoutOptions.md +111 -0
- package/dist/docs/reference/geometry/VectorTextMetrics.md +94 -0
- package/dist/docs/reference/geometry/VectorTextOptions.md +50 -0
- package/dist/docs/reference/geometry/add2.md +36 -0
- package/dist/docs/reference/geometry/add3.md +42 -0
- package/dist/docs/reference/geometry/analyzeTriangleMesh.md +57 -0
- package/dist/docs/reference/geometry/analyzeTriangleMeshQuality.md +52 -0
- package/dist/docs/reference/geometry/anchorFrame3.md +40 -0
- package/dist/docs/reference/geometry/applyTransformDirection3.md +45 -0
- package/dist/docs/reference/geometry/applyTransformPoint3.md +43 -0
- package/dist/docs/reference/geometry/attachTransform.md +77 -0
- package/dist/docs/reference/geometry/boundsCenter.md +62 -0
- package/dist/docs/reference/geometry/boundsFromSize.md +83 -0
- package/dist/docs/reference/geometry/boundsSize.md +62 -0
- package/dist/docs/reference/geometry/boxAnchor3.md +52 -0
- package/dist/docs/reference/geometry/buildHelicalThreadRidgeMesh.md +68 -0
- package/dist/docs/reference/geometry/buildHelicalThreadSolidMesh.md +102 -0
- package/dist/docs/reference/geometry/categories/bounds-layout.md +35 -0
- package/dist/docs/reference/geometry/categories/curves-paths.md +66 -0
- package/dist/docs/reference/geometry/categories/mechanical.md +101 -0
- package/dist/docs/reference/geometry/categories/meshes.md +73 -0
- package/dist/docs/reference/geometry/categories/pattern-placement.md +34 -0
- package/dist/docs/reference/geometry/categories/primitive-options.md +36 -0
- package/dist/docs/reference/geometry/categories/profiles-regions.md +74 -0
- package/dist/docs/reference/geometry/categories/resolution-errors.md +47 -0
- package/dist/docs/reference/geometry/categories/transforms-math.md +92 -0
- package/dist/docs/reference/geometry/categories/vector-import.md +40 -0
- package/dist/docs/reference/geometry/circleContour.md +33 -0
- package/dist/docs/reference/geometry/closeToAxis.md +34 -0
- package/dist/docs/reference/geometry/closestPointOnPath.md +110 -0
- package/dist/docs/reference/geometry/compensateThreadDiameters.md +51 -0
- package/dist/docs/reference/geometry/compensateThreadProfileAxially.md +42 -0
- package/dist/docs/reference/geometry/compensateThreadProfileForFaceting.md +56 -0
- package/dist/docs/reference/geometry/composeTransform3.md +44 -0
- package/dist/docs/reference/geometry/computeClosedParallelTransportFrames.md +45 -0
- package/dist/docs/reference/geometry/computeParallelTransportFrames.md +47 -0
- package/dist/docs/reference/geometry/computeTriangleMeshCentroid.md +31 -0
- package/dist/docs/reference/geometry/containsBounds.md +72 -0
- package/dist/docs/reference/geometry/contourContainsPoint.md +33 -0
- package/dist/docs/reference/geometry/createAnchor3.md +67 -0
- package/dist/docs/reference/geometry/createThreadProfile.md +37 -0
- package/dist/docs/reference/geometry/createTriangleMeshSignature.md +60 -0
- package/dist/docs/reference/geometry/cross2.md +36 -0
- package/dist/docs/reference/geometry/cross3.md +42 -0
- package/dist/docs/reference/geometry/cumulativePathLengths.md +33 -0
- package/dist/docs/reference/geometry/cylinderAnchor3.md +60 -0
- package/dist/docs/reference/geometry/defaultGeometrySamplingLimits.md +14 -0
- package/dist/docs/reference/geometry/distance2.md +36 -0
- package/dist/docs/reference/geometry/distance3.md +36 -0
- package/dist/docs/reference/geometry/distributeAlongPath.md +51 -0
- package/dist/docs/reference/geometry/dot2.md +36 -0
- package/dist/docs/reference/geometry/dot3.md +42 -0
- package/dist/docs/reference/geometry/ellipseContour.md +33 -0
- package/dist/docs/reference/geometry/eulerTransform3.md +42 -0
- package/dist/docs/reference/geometry/extrudeMesh.md +73 -0
- package/dist/docs/reference/geometry/fitBounds.md +95 -0
- package/dist/docs/reference/geometry/fitTextLayout.md +57 -0
- package/dist/docs/reference/geometry/frameTransform3.md +48 -0
- package/dist/docs/reference/geometry/getMetricClearanceHole.md +33 -0
- package/dist/docs/reference/geometry/getMetricFastenerStandard.md +27 -0
- package/dist/docs/reference/geometry/gridPatternTransforms.md +31 -0
- package/dist/docs/reference/geometry/heightfieldMesh.md +43 -0
- package/dist/docs/reference/geometry/inverseTransform3.md +34 -0
- package/dist/docs/reference/geometry/isGeometryError.md +26 -0
- package/dist/docs/reference/geometry/joinTriangleMeshes.md +36 -0
- package/dist/docs/reference/geometry/layoutRow.md +43 -0
- package/dist/docs/reference/geometry/length2.md +30 -0
- package/dist/docs/reference/geometry/length3.md +30 -0
- package/dist/docs/reference/geometry/lerp2.md +42 -0
- package/dist/docs/reference/geometry/lerp3.md +42 -0
- package/dist/docs/reference/geometry/linearPatternTransforms.md +31 -0
- package/dist/docs/reference/geometry/loftMesh.md +72 -0
- package/dist/docs/reference/geometry/matchProfiles.md +51 -0
- package/dist/docs/reference/geometry/measureInternalCylindricalGearPairMotion.md +48 -0
- package/dist/docs/reference/geometry/measureTriangleMesh.md +55 -0
- package/dist/docs/reference/geometry/meshBounds.md +35 -0
- package/dist/docs/reference/geometry/minimumCylindricalGearToothCountWithoutUndercut.md +29 -0
- package/dist/docs/reference/geometry/normalize2.md +36 -0
- package/dist/docs/reference/geometry/normalize3.md +36 -0
- package/dist/docs/reference/geometry/normalizeContour.md +45 -0
- package/dist/docs/reference/geometry/normalizePolygon.md +37 -0
- package/dist/docs/reference/geometry/normalizeRegion.md +33 -0
- package/dist/docs/reference/geometry/optimizePlanarPatches.md +91 -0
- package/dist/docs/reference/geometry/pathLength.md +33 -0
- package/dist/docs/reference/geometry/pathPatternTransforms.md +57 -0
- package/dist/docs/reference/geometry/preflightHeightfield.md +34 -0
- package/dist/docs/reference/geometry/preflightHelicalThreadSolidMesh.md +96 -0
- package/dist/docs/reference/geometry/preflightInternalThreadCutter.md +85 -0
- package/dist/docs/reference/geometry/preflightSvgRegion.md +56 -0
- package/dist/docs/reference/geometry/preflightThreadedNut.md +96 -0
- package/dist/docs/reference/geometry/preflightThreadedRod.md +85 -0
- package/dist/docs/reference/geometry/projectOntoPlane3.md +36 -0
- package/dist/docs/reference/geometry/radialPatternTransforms.md +47 -0
- package/dist/docs/reference/geometry/rectangleContour.md +49 -0
- package/dist/docs/reference/geometry/rectangleProfile.md +53 -0
- package/dist/docs/reference/geometry/regionArea.md +34 -0
- package/dist/docs/reference/geometry/regionBounds.md +27 -0
- package/dist/docs/reference/geometry/regularPolygonContour.md +53 -0
- package/dist/docs/reference/geometry/resamplePolyline2.md +64 -0
- package/dist/docs/reference/geometry/resamplePolyline3.md +67 -0
- package/dist/docs/reference/geometry/resolveAlignedCircularSegments.md +83 -0
- package/dist/docs/reference/geometry/resolveArcSegments.md +67 -0
- package/dist/docs/reference/geometry/resolveCircularSegments.md +62 -0
- package/dist/docs/reference/geometry/resolveCylindricalGear.md +31 -0
- package/dist/docs/reference/geometry/resolveCylindricalGearPair.md +31 -0
- package/dist/docs/reference/geometry/resolveExtrusionDivisions.md +74 -0
- package/dist/docs/reference/geometry/resolveGeometrySamplingLimits.md +26 -0
- package/dist/docs/reference/geometry/resolveGeometryTolerance.md +59 -0
- package/dist/docs/reference/geometry/resolvePrintableThreadFitPolicy.md +27 -0
- package/dist/docs/reference/geometry/resolveRackPitch.md +27 -0
- package/dist/docs/reference/geometry/resolveThreadCircularSegments.md +59 -0
- package/dist/docs/reference/geometry/reverseTriangleMesh.md +30 -0
- package/dist/docs/reference/geometry/revolveMesh.md +76 -0
- package/dist/docs/reference/geometry/rotate2.md +36 -0
- package/dist/docs/reference/geometry/rotationTransform3.md +53 -0
- package/dist/docs/reference/geometry/roundClosedPolylinePath.md +50 -0
- package/dist/docs/reference/geometry/sampleContour.md +77 -0
- package/dist/docs/reference/geometry/sampleCurve2.md +61 -0
- package/dist/docs/reference/geometry/sampleCurve3.md +61 -0
- package/dist/docs/reference/geometry/sampleCylindricalGearOutline.md +58 -0
- package/dist/docs/reference/geometry/sampleHelix.md +41 -0
- package/dist/docs/reference/geometry/sampleInternalCylindricalGearSpaceOutline.md +59 -0
- package/dist/docs/reference/geometry/sampleRackToothPath.md +39 -0
- package/dist/docs/reference/geometry/sampleSideProfile.md +73 -0
- package/dist/docs/reference/geometry/sampleTextContours.md +53 -0
- package/dist/docs/reference/geometry/sampleThreadHelices.md +63 -0
- package/dist/docs/reference/geometry/scale2.md +36 -0
- package/dist/docs/reference/geometry/scale3.md +42 -0
- package/dist/docs/reference/geometry/scaleTransform3.md +38 -0
- package/dist/docs/reference/geometry/signedContourArea.md +26 -0
- package/dist/docs/reference/geometry/starContour.md +51 -0
- package/dist/docs/reference/geometry/strokePathRegion.md +63 -0
- package/dist/docs/reference/geometry/subtract2.md +36 -0
- package/dist/docs/reference/geometry/subtract3.md +42 -0
- package/dist/docs/reference/geometry/sweepMesh.md +82 -0
- package/dist/docs/reference/geometry/transform2.md +38 -0
- package/dist/docs/reference/geometry/transform3.md +38 -0
- package/dist/docs/reference/geometry/transformContour.md +42 -0
- package/dist/docs/reference/geometry/transformDeterminant3.md +36 -0
- package/dist/docs/reference/geometry/transformPath2.md +40 -0
- package/dist/docs/reference/geometry/transformPath3.md +33 -0
- package/dist/docs/reference/geometry/transformRegionData.md +40 -0
- package/dist/docs/reference/geometry/transformTriangleMesh.md +42 -0
- package/dist/docs/reference/geometry/translationTransform3.md +35 -0
- package/dist/docs/reference/geometry/triangulateContour.md +26 -0
- package/dist/docs/reference/geometry/validateSolidMesh.md +52 -0
- package/dist/docs/reference/geometry/validateTransform3.md +47 -0
- package/dist/docs/reference/geometry/validateTriangleMesh.md +59 -0
- package/dist/docs/reference/geometry/vector2.md +31 -0
- package/dist/docs/reference/geometry/vector3.md +38 -0
- package/dist/docs/reference/geometry.md +30 -0
- package/dist/docs/reference/model/Anchor3.md +54 -0
- package/dist/docs/reference/model/AttachOptions.md +63 -0
- package/dist/docs/reference/model/Bounds2.md +39 -0
- package/dist/docs/reference/model/Bounds3.md +39 -0
- package/dist/docs/reference/model/BoxEdge.md +15 -0
- package/dist/docs/reference/model/BoxEdgeSelection.md +19 -0
- package/dist/docs/reference/model/BoxEdgeTreatments.md +20 -0
- package/dist/docs/reference/model/BoxOptions.md +92 -0
- package/dist/docs/reference/model/ChamferedEdgeTreatment.md +35 -0
- package/dist/docs/reference/model/CircleContourOptions.md +21 -0
- package/dist/docs/reference/model/CircleOptions.md +21 -0
- package/dist/docs/reference/model/CircularPrimitiveOptions.md +64 -0
- package/dist/docs/reference/model/Computed.md +35 -0
- package/dist/docs/reference/model/ComputedValue.md +20 -0
- package/dist/docs/reference/model/Contour.md +22 -0
- package/dist/docs/reference/model/CorrespondingComponent.md +46 -0
- package/dist/docs/reference/model/CorrespondingContour.md +46 -0
- package/dist/docs/reference/model/CorrespondingProfile.md +22 -0
- package/dist/docs/reference/model/CorrespondingProfileStation.md +27 -0
- package/dist/docs/reference/model/CylinderOptions.md +58 -0
- package/dist/docs/reference/model/DiagnosticOptions.md +23 -0
- package/dist/docs/reference/model/EdgeTreatment.md +22 -0
- package/dist/docs/reference/model/EllipseContourOptions.md +21 -0
- package/dist/docs/reference/model/EllipseOptions.md +21 -0
- package/dist/docs/reference/model/EndTreatments.md +39 -0
- package/dist/docs/reference/model/ExtrudeOptions.md +140 -0
- package/dist/docs/reference/model/FinalizedModel.md +121 -0
- package/dist/docs/reference/model/FinalizedPart.md +87 -0
- package/dist/docs/reference/model/Frame3.md +63 -0
- package/dist/docs/reference/model/GenerateCallback.md +37 -0
- package/dist/docs/reference/model/GenerateContext.md +277 -0
- package/dist/docs/reference/model/GeneratedPart.md +93 -0
- package/dist/docs/reference/model/GenerationDiagnostic.md +41 -0
- package/dist/docs/reference/model/GenerationError.md +54 -0
- package/dist/docs/reference/model/GeometryResolution.md +70 -0
- package/dist/docs/reference/model/GeometrySamplingLimits.md +62 -0
- package/dist/docs/reference/model/GeometryToleranceOptions.md +46 -0
- package/dist/docs/reference/model/GridPatternOptions.md +43 -0
- package/dist/docs/reference/model/HeightfieldOptions.md +67 -0
- package/dist/docs/reference/model/HelicalThreadRidgeMeshOptions.md +140 -0
- package/dist/docs/reference/model/HelicalThreadSolidMeshPreflight.md +58 -0
- package/dist/docs/reference/model/HullOptions.md +72 -0
- package/dist/docs/reference/model/ImmutableBuffer-type.md +80 -0
- package/dist/docs/reference/model/ImmutableTriangleMesh.md +34 -0
- package/dist/docs/reference/model/ImplicitOptions.md +83 -0
- package/dist/docs/reference/model/InternalThreadCutterOptions.md +245 -0
- package/dist/docs/reference/model/LinearPatternOptions.md +31 -0
- package/dist/docs/reference/model/LoftCorrespondence.md +27 -0
- package/dist/docs/reference/model/LoftOptions.md +91 -0
- package/dist/docs/reference/model/LoftPlacement.md +73 -0
- package/dist/docs/reference/model/LoftStation.md +35 -0
- package/dist/docs/reference/model/MatchProfilesOptions.md +35 -0
- package/dist/docs/reference/model/ModelProgram.md +44 -0
- package/dist/docs/reference/model/ModelingLimits.md +126 -0
- package/dist/docs/reference/model/NumericArray.md +7 -0
- package/dist/docs/reference/model/PartGeometry.md +16 -0
- package/dist/docs/reference/model/PartOptions.md +65 -0
- package/dist/docs/reference/model/Path2.md +20 -0
- package/dist/docs/reference/model/PathNormalGuide.md +45 -0
- package/dist/docs/reference/model/PathPatternOptions.md +47 -0
- package/dist/docs/reference/model/PatternSource.md +26 -0
- package/dist/docs/reference/model/Pivot2Options.md +27 -0
- package/dist/docs/reference/model/Pivot3Options.md +27 -0
- package/dist/docs/reference/model/PlaneOptions.md +39 -0
- package/dist/docs/reference/model/PolygonData.md +43 -0
- package/dist/docs/reference/model/PolygonOptions.md +189 -0
- package/dist/docs/reference/model/PrimitivePlacement.md +40 -0
- package/dist/docs/reference/model/PrimitivePlacementOptions.md +88 -0
- package/dist/docs/reference/model/PrintableThreadFit.md +14 -0
- package/dist/docs/reference/model/PrintableThreadFitPolicy.md +50 -0
- package/dist/docs/reference/model/Profile.md +22 -0
- package/dist/docs/reference/model/ProfileComponent2.md +46 -0
- package/dist/docs/reference/model/ProfileContour2.md +34 -0
- package/dist/docs/reference/model/ProfileSpan2.md +47 -0
- package/dist/docs/reference/model/ProfiledEdgeTreatment.md +41 -0
- package/dist/docs/reference/model/RadialPatternOptions.md +63 -0
- package/dist/docs/reference/model/RadialSizing.md +15 -0
- package/dist/docs/reference/model/RadialSizingOptions.md +40 -0
- package/dist/docs/reference/model/RectangleContourOptions.md +72 -0
- package/dist/docs/reference/model/RectangleCornerTreatment.md +40 -0
- package/dist/docs/reference/model/RectangleCornerTreatments.md +20 -0
- package/dist/docs/reference/model/RectangleOptions.md +107 -0
- package/dist/docs/reference/model/RegionData.md +19 -0
- package/dist/docs/reference/model/RegularPolygonOptions.md +53 -0
- package/dist/docs/reference/model/RevolveOptions.md +89 -0
- package/dist/docs/reference/model/RoundedEdgeTreatment.md +96 -0
- package/dist/docs/reference/model/Section.md +490 -0
- package/dist/docs/reference/model/SectionHullOptions.md +72 -0
- package/dist/docs/reference/model/SectionInspection.md +98 -0
- package/dist/docs/reference/model/SectionOffsetJoin.md +16 -0
- package/dist/docs/reference/model/SectionOffsetOptions.md +65 -0
- package/dist/docs/reference/model/SmoothEdgeTreatment.md +76 -0
- package/dist/docs/reference/model/Solid.md +373 -0
- package/dist/docs/reference/model/SolidInspection.md +98 -0
- package/dist/docs/reference/model/SolidRayHit.md +58 -0
- package/dist/docs/reference/model/SphereOptions.md +20 -0
- package/dist/docs/reference/model/StarOptions.md +98 -0
- package/dist/docs/reference/model/StrokeOptions.md +91 -0
- package/dist/docs/reference/model/StrokePathCap.md +16 -0
- package/dist/docs/reference/model/StrokePathJoin.md +16 -0
- package/dist/docs/reference/model/SvgOrigin.md +16 -0
- package/dist/docs/reference/model/SvgPathSectionOptions.md +78 -0
- package/dist/docs/reference/model/SvgSectionOptions.md +66 -0
- package/dist/docs/reference/model/SweepOptions.md +116 -0
- package/dist/docs/reference/model/SweepOrientation.md +116 -0
- package/dist/docs/reference/model/TextSectionOptions.md +41 -0
- package/dist/docs/reference/model/ThreadEndStyle.md +14 -0
- package/dist/docs/reference/model/ThreadEndTreatmentOptions.md +117 -0
- package/dist/docs/reference/model/ThreadHandedness.md +14 -0
- package/dist/docs/reference/model/ThreadLeadInEnvelope.md +14 -0
- package/dist/docs/reference/model/ThreadLeadInShape.md +14 -0
- package/dist/docs/reference/model/ThreadProfile.md +86 -0
- package/dist/docs/reference/model/ThreadRidgeOptions.md +18 -0
- package/dist/docs/reference/model/ThreadedNutBevel.md +14 -0
- package/dist/docs/reference/model/ThreadedNutOptions.md +273 -0
- package/dist/docs/reference/model/ThreadedNutPreflight.md +98 -0
- package/dist/docs/reference/model/ThreadedNutShape.md +14 -0
- package/dist/docs/reference/model/ThreadedRodOptions.md +245 -0
- package/dist/docs/reference/model/TorusOptions.md +110 -0
- package/dist/docs/reference/model/Transform2-type.md +256 -0
- package/dist/docs/reference/model/Transform2Input.md +20 -0
- package/dist/docs/reference/model/Transform2Matrix.md +15 -0
- package/dist/docs/reference/model/Transform3-type.md +296 -0
- package/dist/docs/reference/model/Transform3Input.md +20 -0
- package/dist/docs/reference/model/Transform3Matrix.md +18 -0
- package/dist/docs/reference/model/TriangleMesh.md +42 -0
- package/dist/docs/reference/model/TriangleMeshAnalysis.md +123 -0
- package/dist/docs/reference/model/TriangleMeshMeasurements.md +79 -0
- package/dist/docs/reference/model/TubeOptions.md +143 -0
- package/dist/docs/reference/model/Vector2-type.md +270 -0
- package/dist/docs/reference/model/Vector2Input.md +20 -0
- package/dist/docs/reference/model/Vector2Tuple.md +15 -0
- package/dist/docs/reference/model/Vector3-type.md +282 -0
- package/dist/docs/reference/model/Vector3Input.md +20 -0
- package/dist/docs/reference/model/Vector3Tuple.md +15 -0
- package/dist/docs/reference/model/VectorTextLayout.md +40 -0
- package/dist/docs/reference/model/VectorTextMetrics.md +100 -0
- package/dist/docs/reference/model/anchor.md +46 -0
- package/dist/docs/reference/model/box.md +62 -0
- package/dist/docs/reference/model/categories/boolean-operations.md +37 -0
- package/dist/docs/reference/model/categories/bounded-surfaces.md +26 -0
- package/dist/docs/reference/model/categories/contracts.md +16 -0
- package/dist/docs/reference/model/categories/core-values-errors.md +30 -0
- package/dist/docs/reference/model/categories/explicit-profiles.md +32 -0
- package/dist/docs/reference/model/categories/extrude-revolve-sweep.md +42 -0
- package/dist/docs/reference/model/categories/generation.md +44 -0
- package/dist/docs/reference/model/categories/inspection.md +23 -0
- package/dist/docs/reference/model/categories/mesh-inspection.md +29 -0
- package/dist/docs/reference/model/categories/primitives.md +61 -0
- package/dist/docs/reference/model/categories/resolution.md +18 -0
- package/dist/docs/reference/model/categories/sections.md +62 -0
- package/dist/docs/reference/model/categories/threads.md +50 -0
- package/dist/docs/reference/model/categories/transforms-placement.md +57 -0
- package/dist/docs/reference/model/circle.md +39 -0
- package/dist/docs/reference/model/components.md +71 -0
- package/dist/docs/reference/model/compose.md +31 -0
- package/dist/docs/reference/model/cylinder.md +52 -0
- package/dist/docs/reference/model/distance.md +45 -0
- package/dist/docs/reference/model/ellipse.md +39 -0
- package/dist/docs/reference/model/extrude.md +83 -0
- package/dist/docs/reference/model/generate.md +46 -0
- package/dist/docs/reference/model/gridPattern.md +80 -0
- package/dist/docs/reference/model/heightfield.md +40 -0
- package/dist/docs/reference/model/hull.md +74 -0
- package/dist/docs/reference/model/immutableBuffer.md +44 -0
- package/dist/docs/reference/model/immutableMesh.md +40 -0
- package/dist/docs/reference/model/implicit.md +47 -0
- package/dist/docs/reference/model/inspectSection.md +38 -0
- package/dist/docs/reference/model/inspectSolid.md +38 -0
- package/dist/docs/reference/model/internalThreadCutter.md +100 -0
- package/dist/docs/reference/model/intersect.md +70 -0
- package/dist/docs/reference/model/isEmpty.md +39 -0
- package/dist/docs/reference/model/linearPattern.md +80 -0
- package/dist/docs/reference/model/loft.md +137 -0
- package/dist/docs/reference/model/matchProfiles.md +42 -0
- package/dist/docs/reference/model/minkowskiSum.md +37 -0
- package/dist/docs/reference/model/pathPattern.md +118 -0
- package/dist/docs/reference/model/polygon.md +40 -0
- package/dist/docs/reference/model/preflightInternalThreadCutter.md +89 -0
- package/dist/docs/reference/model/preflightThreadedNut.md +100 -0
- package/dist/docs/reference/model/preflightThreadedRod.md +89 -0
- package/dist/docs/reference/model/radialPattern.md +113 -0
- package/dist/docs/reference/model/rayCast.md +40 -0
- package/dist/docs/reference/model/rectangle.md +59 -0
- package/dist/docs/reference/model/regularPolygon.md +39 -0
- package/dist/docs/reference/model/revolve.md +74 -0
- package/dist/docs/reference/model/solidFromMesh.md +42 -0
- package/dist/docs/reference/model/sphere.md +42 -0
- package/dist/docs/reference/model/split.md +54 -0
- package/dist/docs/reference/model/splitByPlane.md +66 -0
- package/dist/docs/reference/model/star.md +63 -0
- package/dist/docs/reference/model/stroke.md +74 -0
- package/dist/docs/reference/model/svgPathSection.md +65 -0
- package/dist/docs/reference/model/svgSection.md +64 -0
- package/dist/docs/reference/model/sweep.md +92 -0
- package/dist/docs/reference/model/textSection.md +57 -0
- package/dist/docs/reference/model/threadRidge.md +72 -0
- package/dist/docs/reference/model/threadedNut.md +110 -0
- package/dist/docs/reference/model/threadedRod.md +99 -0
- package/dist/docs/reference/model/toTriangleMesh.md +27 -0
- package/dist/docs/reference/model/torus.md +70 -0
- package/dist/docs/reference/model/transform2.md +39 -0
- package/dist/docs/reference/model/transform3.md +39 -0
- package/dist/docs/reference/model/tube.md +77 -0
- package/dist/docs/reference/model/union.md +72 -0
- package/dist/docs/reference/model/vector2.md +32 -0
- package/dist/docs/reference/model/vector3.md +39 -0
- package/dist/docs/reference/model.md +39 -0
- package/dist/docs/reference/text/Bounds2.md +34 -0
- package/dist/docs/reference/text/MAX_VECTOR_FONT_BYTES.md +7 -0
- package/dist/docs/reference/text/Vector2Tuple.md +7 -0
- package/dist/docs/reference/text/VectorFont.md +186 -0
- package/dist/docs/reference/text/VectorFontOptions.md +17 -0
- package/dist/docs/reference/text/VectorTextArcBaseline.md +53 -0
- package/dist/docs/reference/text/VectorTextLayout.md +34 -0
- package/dist/docs/reference/text/VectorTextLayoutOptions.md +111 -0
- package/dist/docs/reference/text/VectorTextMetrics.md +94 -0
- package/dist/docs/reference/text/VectorTextOptions.md +50 -0
- package/dist/docs/reference/text/categories/font-preparation.md +38 -0
- package/dist/docs/reference/text/prepareVectorFont.md +46 -0
- package/dist/docs/reference/text.md +21 -0
- package/dist/engine/construction-operations.js +10 -3
- package/dist/engine/deferred-context.js +11 -172
- package/dist/engine/execution.js +1 -1
- package/dist/engine/export-3mf.js +2 -2
- package/dist/engine/finalization.js +3 -3
- package/dist/engine/loft-operations.js +4 -4
- package/dist/engine/native/adapter.js +1 -1
- package/dist/engine/native/regions.js +9 -9
- package/dist/engine/native/transforms.js +6 -1
- package/dist/engine/pattern-operations.js +24 -13
- package/dist/engine/placement.js +2 -2
- package/dist/engine/primitive-operations.js +10 -10
- package/dist/engine/primitive-profiles.js +1 -0
- package/dist/engine/profile-mesh.js +7 -7
- package/dist/engine/recipe-realization.js +29 -21
- package/dist/engine/section-operations.js +44 -17
- package/dist/engine/session-graph.js +6 -4
- package/dist/engine/session-native.js +1 -1
- package/dist/engine/session-snapshot.js +3 -2
- package/dist/engine/session.js +4 -5
- package/dist/engine/shape-anchors.js +3 -9
- package/dist/engine/transform-operations.js +42 -25
- package/dist/geometry/bounds.js +117 -0
- package/dist/geometry/cylinder.js +5 -1
- package/dist/geometry/edge-finishing.js +2 -2
- package/dist/geometry/heightfield.js +1 -1
- package/dist/geometry/index.js +20 -13
- package/dist/geometry/{loft-correspondence.js → loft/loft-correspondence.js} +3 -3
- package/dist/geometry/{loft-geometry.js → loft/loft-geometry.js} +8 -8
- package/dist/geometry/{loft-options.js → loft/loft-options.js} +2 -2
- package/dist/geometry/{loft-simple-mesh.js → loft/loft-simple-mesh.js} +6 -6
- package/dist/geometry/{loft-triangulation.js → loft/loft-triangulation.js} +6 -6
- package/dist/geometry/{loft.js → loft/loft.js} +8 -8
- package/dist/geometry/math/immutable-value.js +20 -0
- package/dist/geometry/math/vector-value.js +168 -0
- package/dist/geometry/math/vector2.js +80 -0
- package/dist/geometry/math/vector3.js +42 -8
- package/dist/geometry/mechanical/gear-motion.js +7 -4
- package/dist/geometry/mechanical/gears.js +2 -2
- package/dist/geometry/mechanical/thread-mesh.js +3 -3
- package/dist/geometry/mechanical/thread-profiles.js +2 -2
- package/dist/geometry/mechanical/thread-surface.js +14 -5
- package/dist/geometry/{mesh-centroid.js → mesh/mesh-centroid.js} +1 -1
- package/dist/geometry/{mesh-planar.js → mesh/mesh-planar.js} +1 -1
- package/dist/geometry/{mesh-quality.js → mesh/mesh-quality.js} +2 -2
- package/dist/geometry/{mesh-signature.js → mesh/mesh-signature.js} +2 -2
- package/dist/geometry/{mesh-solid-intersections.js → mesh/mesh-solid-intersections.js} +5 -1
- package/dist/geometry/{mesh-solid.js → mesh/mesh-solid.js} +2 -2
- package/dist/geometry/{mesh.js → mesh/mesh.js} +7 -8
- package/dist/geometry/paths/closest-point.js +74 -0
- package/dist/geometry/paths/frames.js +7 -8
- package/dist/geometry/patterns/options.js +1 -0
- package/dist/{engine/pattern-placements.js → geometry/patterns/placements.js} +22 -8
- package/dist/geometry/patterns.js +25 -0
- package/dist/geometry/primitive-resolution.js +4 -1
- package/dist/geometry/primitive-resolvers.js +9 -9
- package/dist/geometry/profiles/contour.js +3 -3
- package/dist/geometry/profiles/matched.js +3 -3
- package/dist/geometry/profiles/profiles.js +10 -10
- package/dist/geometry/profiles/rectangle.js +7 -7
- package/dist/geometry/profiles/shapes.js +9 -9
- package/dist/geometry/profiles/side-profile.js +37 -0
- package/dist/geometry/regions.js +15 -15
- package/dist/geometry/resolution.js +17 -5
- package/dist/geometry/revolve/revolve-mesh.js +5 -5
- package/dist/geometry/stroke-path.js +50 -46
- package/dist/geometry/svg/errors.js +0 -3
- package/dist/geometry/svg/fill.js +7 -7
- package/dist/geometry/svg/index.js +1 -1
- package/dist/geometry/svg/matrix.js +0 -114
- package/dist/geometry/svg/parser.js +1 -439
- package/dist/geometry/svg-import.js +3 -3
- package/dist/geometry/sweeps/stations.js +4 -4
- package/dist/geometry/sweeps/sweep-closed.js +4 -4
- package/dist/geometry/sweeps/sweep-mesh.js +1 -1
- package/dist/geometry/sweeps/sweep-open.js +6 -6
- package/dist/geometry/sweeps/validation.js +2 -2
- package/dist/geometry/text-fitting.js +85 -0
- package/dist/geometry/tolerance.js +2 -2
- package/dist/geometry/transform-chain.js +172 -0
- package/dist/geometry/transform-geometry.js +31 -27
- package/dist/geometry/transform-matrix.js +14 -0
- package/dist/geometry/transform2.js +60 -0
- package/dist/geometry/transform3.js +70 -26
- package/dist/index.js +3 -0
- package/dist/model/execution-binding.js +10 -5
- package/dist/model/generation.js +1 -1
- package/dist/model/geometry-recipes.js +15 -0
- package/dist/{engine → model}/immutable-generation-data.js +25 -3
- package/dist/model/operation-contracts.js +1 -0
- package/dist/model/operation-dispatch.js +13 -0
- package/dist/model/operations.js +40 -59
- package/dist/model/recipe-declaration.js +193 -0
- package/dist/model/shape-handles.js +15 -4
- package/package.json +10 -8
- package/dist/engine/geometry-recipes.js +0 -12
- /package/dist/geometry/{mesh-edge-table.js → mesh/mesh-edge-table.js} +0 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# transform3
|
|
2
|
+
|
|
3
|
+
Creates an immutable XYZ transform, identity by default. Matrices are copied and validated. Calls apply in written order; rotations use degrees and pivots use current world coordinates. Zero scales, singular matrices, nonfinite inputs and zero rotation axes throw GeometryError. Use frameTransform3(frame) as the input for existing orthonormal frame placement.
|
|
4
|
+
|
|
5
|
+
**transform3**(`matrix?`: [`Transform3Matrix`](Transform3Matrix.md)): [`Transform3`](Transform3-type.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Example
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
const placement = transform3().rotate([0, 0, 90]).translate([10, 0, 0]);
|
|
13
|
+
placement.applyPoint([1, 0, 0]).toArray(); // approximately [10, 1, 0]
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Parameters
|
|
17
|
+
|
|
18
|
+
<a id="matrix"></a>
|
|
19
|
+
|
|
20
|
+
**`matrix`** · [`Transform3Matrix`](Transform3Matrix.md) · Optional
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
## Returns
|
|
25
|
+
|
|
26
|
+
[`Transform3`](Transform3-type.md)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
## Related APIs
|
|
30
|
+
|
|
31
|
+
- [Transform3](Transform3-type.md)
|
|
32
|
+
- [Transform3Matrix](Transform3Matrix.md)
|
|
33
|
+
|
|
34
|
+
## Guides
|
|
35
|
+
|
|
36
|
+
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
37
|
+
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
38
|
+
|
|
39
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# tube
|
|
2
|
+
|
|
3
|
+
Hollow +Z tube.
|
|
4
|
+
|
|
5
|
+
**tube**(`options`: [`TubeOptions`](TubeOptions.md)): [`Solid`](Solid.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Example: Tube
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
```ts
|
|
14
|
+
tube({ height: 20, outerRadius: 10, innerRadius: 6 });
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## Parameters
|
|
20
|
+
|
|
21
|
+
<a id="options"></a>
|
|
22
|
+
|
|
23
|
+
**`options`** · [`TubeOptions`](TubeOptions.md) · Required
|
|
24
|
+
|
|
25
|
+
- [`height`](TubeOptions.md#height) · `number` · Required
|
|
26
|
+
|
|
27
|
+
Total height along Z in millimetres.
|
|
28
|
+
|
|
29
|
+
- [`innerRadius`](TubeOptions.md#innerradius) · `number` · Required
|
|
30
|
+
|
|
31
|
+
Positive inner radius in millimetres.
|
|
32
|
+
|
|
33
|
+
- [`outerRadius`](TubeOptions.md#outerradius) · `number` · Required
|
|
34
|
+
|
|
35
|
+
Outer radius in millimetres; greater than [TubeOptions.innerRadius](TubeOptions.md#innerradius).
|
|
36
|
+
|
|
37
|
+
- [`limits`](TubeOptions.md#limits) · `Partial`\<[`GeometrySamplingLimits`](GeometrySamplingLimits.md)\> · Optional
|
|
38
|
+
|
|
39
|
+
Explicit sampling ceilings; bound modeling operations may only lower the host policy.
|
|
40
|
+
|
|
41
|
+
- [`segments`](TubeOptions.md#segments) · `number` · Optional
|
|
42
|
+
|
|
43
|
+
Exact circumferential segment count from three through the configured safety limit.
|
|
44
|
+
|
|
45
|
+
This local topology override takes precedence over [CircularPrimitiveOptions.resolution](CircularPrimitiveOptions.md#resolution)
|
|
46
|
+
and any active model-wide resolution policy.
|
|
47
|
+
|
|
48
|
+
- [`resolution`](TubeOptions.md#resolution) · [`GeometryResolution`](GeometryResolution.md) · Optional
|
|
49
|
+
|
|
50
|
+
Operation-level physical tessellation policy over the active model-wide policy.
|
|
51
|
+
|
|
52
|
+
- [`placement`](TubeOptions.md#placement) · [`PrimitivePlacementOptions`](PrimitivePlacementOptions.md) · Optional
|
|
53
|
+
|
|
54
|
+
Applied after local construction; Section placement must preserve the XY plane.
|
|
55
|
+
|
|
56
|
+
- [`center`](TubeOptions.md#center) · `boolean` · Optional · Default: `true`
|
|
57
|
+
|
|
58
|
+
Centers the tube on the Z origin when `true`; otherwise its bottom is at `Z = 0`.
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
## Returns
|
|
63
|
+
|
|
64
|
+
[`Solid`](Solid.md)
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
## Related APIs
|
|
68
|
+
|
|
69
|
+
- [Solid](Solid.md)
|
|
70
|
+
- [TubeOptions](TubeOptions.md)
|
|
71
|
+
|
|
72
|
+
## Guides
|
|
73
|
+
|
|
74
|
+
- [Choose a primitive](../../guides/recipes.md#choose-a-primitive)
|
|
75
|
+
- [Treated boxes, frustums, and mirrored arrays](../../guides/recipes.md#treated-boxes-frustums-and-mirrored-arrays)
|
|
76
|
+
|
|
77
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# union
|
|
2
|
+
|
|
3
|
+
Robust union.
|
|
4
|
+
|
|
5
|
+
## Call Signature
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
**union**(`solids`: readonly [`Solid`](Solid.md)[]): [`Solid`](Solid.md)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
## Example: Union
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
const block = box({ size: 20 });
|
|
19
|
+
const cap = sphere({ radius: 10 }).translate([0, 0, 10]);
|
|
20
|
+
union([block, cap]);
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
Robust union.
|
|
26
|
+
|
|
27
|
+
### Parameters
|
|
28
|
+
|
|
29
|
+
<a id="solids"></a>
|
|
30
|
+
|
|
31
|
+
**`solids`** · readonly [`Solid`](Solid.md)[] · Required
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
### Returns
|
|
36
|
+
|
|
37
|
+
[`Solid`](Solid.md)
|
|
38
|
+
|
|
39
|
+
## Call Signature
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
**union**(`sections`: readonly [`Section`](Section.md)[]): [`Section`](Section.md)
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
Native filled section union; dimensions cannot be mixed.
|
|
48
|
+
|
|
49
|
+
### Parameters
|
|
50
|
+
|
|
51
|
+
<a id="sections"></a>
|
|
52
|
+
|
|
53
|
+
**`sections`** · readonly [`Section`](Section.md)[] · Required
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
### Returns
|
|
58
|
+
|
|
59
|
+
[`Section`](Section.md)
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
## Related APIs
|
|
63
|
+
|
|
64
|
+
- [Section](Section.md)
|
|
65
|
+
- [Solid](Solid.md)
|
|
66
|
+
|
|
67
|
+
## Guides
|
|
68
|
+
|
|
69
|
+
- [Choose the Boolean by the material you want](../../guides/fundamentals.md#choose-the-boolean-by-the-material-you-want)
|
|
70
|
+
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
71
|
+
|
|
72
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# vector2
|
|
2
|
+
|
|
3
|
+
Creates immutable XY arithmetic from a finite tuple or vector, snapshotting the coordinates. Values and results are finite. Invalid dimensions throw `INVALID_ARGUMENT`; nonfinite coordinates and overflow throw `NON_FINITE_VALUE` GeometryError. Use transform2().applyDirection(value) for rotations and nonuniform scaling.
|
|
4
|
+
|
|
5
|
+
**vector2**(`input`: [`Vector2Input`](Vector2Input.md)): [`Vector2`](Vector2-type.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Parameters
|
|
10
|
+
|
|
11
|
+
<a id="input"></a>
|
|
12
|
+
|
|
13
|
+
**`input`** · [`Vector2Input`](Vector2Input.md) · Required
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## Returns
|
|
18
|
+
|
|
19
|
+
[`Vector2`](Vector2-type.md)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## Related APIs
|
|
23
|
+
|
|
24
|
+
- [Vector2](Vector2-type.md)
|
|
25
|
+
- [Vector2Input](Vector2Input.md)
|
|
26
|
+
|
|
27
|
+
## Guides
|
|
28
|
+
|
|
29
|
+
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
30
|
+
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
31
|
+
|
|
32
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# vector3
|
|
2
|
+
|
|
3
|
+
Creates immutable XYZ arithmetic from a finite tuple or vector, snapshotting the coordinates. Values and results are finite. Invalid dimensions throw `INVALID_ARGUMENT`; nonfinite coordinates and overflow throw `NON_FINITE_VALUE` GeometryError. Use transform3().applyDirection(value) for rotations and nonuniform scaling.
|
|
4
|
+
|
|
5
|
+
**vector3**(`input`: [`Vector3Input`](Vector3Input.md)): [`Vector3`](Vector3-type.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## Example
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
const direction = vector3([1, 2, 3]).add([4, 0, 0]).normalize().scale(10);
|
|
13
|
+
const alignment = direction.dot([0, 0, 1]);
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Parameters
|
|
17
|
+
|
|
18
|
+
<a id="input"></a>
|
|
19
|
+
|
|
20
|
+
**`input`** · [`Vector3Input`](Vector3Input.md) · Required
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
## Returns
|
|
25
|
+
|
|
26
|
+
[`Vector3`](Vector3-type.md)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
## Related APIs
|
|
30
|
+
|
|
31
|
+
- [Vector3](Vector3-type.md)
|
|
32
|
+
- [Vector3Input](Vector3Input.md)
|
|
33
|
+
|
|
34
|
+
## Guides
|
|
35
|
+
|
|
36
|
+
- [Named anchors and custom frames](../../guides/recipes.md#named-anchors-and-custom-frames)
|
|
37
|
+
- [Primitive booleans and repeated placement](../../guides/recipes.md#primitive-booleans-and-repeated-placement)
|
|
38
|
+
|
|
39
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Model API
|
|
2
|
+
|
|
3
|
+
Immutable shapes, vectors and transforms with fluent operations and host-owned geometry evaluation.
|
|
4
|
+
|
|
5
|
+
Import `generate`, shape constructors, vectors, transforms and collection functions from `@metamesh/modeling`. Chain shape methods to transform, subtract, and finish immutable recipes; a host session owns execution and optional computed caches.
|
|
6
|
+
|
|
7
|
+
```ts
|
|
8
|
+
import { box, cylinder, generate } from "@metamesh/modeling";
|
|
9
|
+
import { createModelEngine } from "@metamesh/modeling/engine";
|
|
10
|
+
const model = generate<Record<never, never>>(({ part }) => [part("plate", box({ size: [30, 20, 6] }).subtract([cylinder({ radius: 3, height: 8 })]))]);
|
|
11
|
+
const engine = await createModelEngine();
|
|
12
|
+
const session = engine.createSession(model);
|
|
13
|
+
const snapshot = session.run({});
|
|
14
|
+
snapshot.dispose();
|
|
15
|
+
session.dispose();
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Computed data and recipes reuse unchanged work. Part placement and color are separate from local geometry. Section recipes preserve holes through Boolean and offset chains. Construction and composition work without an engine. Ordinary recipes may be reused across sessions regardless of where constructed. Explicit resolution settings are captured; unspecified settings inherit the evaluating host defaults. Observed component selections remain restricted to their originating session. Observations require synchronous host execution. Temporary native allocations belong to the current transaction; sessions may retain bounded evaluated geometry privately. Copied snapshots remain valid after session disposal until they are disposed.
|
|
19
|
+
|
|
20
|
+
See [host lifecycle](engine.md) and [pure foundations](geometry.md).
|
|
21
|
+
|
|
22
|
+
## Categories
|
|
23
|
+
|
|
24
|
+
- [Primitives](model/categories/primitives.md) — Create foundational solid geometry and configure its dimensions and tessellation.
|
|
25
|
+
- [Local resolution](model/categories/resolution.md) — Choose physical curve sampling and explicit native tolerance.
|
|
26
|
+
- [2D Sections](model/categories/sections.md) — Create immutable filled XY shapes, including prepared text and bounded painted SVG.
|
|
27
|
+
- [Boolean Operations](model/categories/boolean-operations.md) — Combine, intersect and subtract same-dimensional shapes; construct solid envelopes and sums.
|
|
28
|
+
- [Transforms, Vectors & Placement](model/categories/transforms-placement.md) — Calculate with immutable vectors, reuse transforms, and arrange geometry with explicit placement contracts.
|
|
29
|
+
- [Extrude, Revolve & Sweep](model/categories/extrude-revolve-sweep.md) — Turn sections and paths into extruded, lofted, revolved, or swept solids.
|
|
30
|
+
- [Printable threads](model/categories/threads.md) — Construct compensated thread forms and inspect allocation-free preflight facts.
|
|
31
|
+
- [Mesh & Inspection](model/categories/mesh-inspection.md) — Convert validated meshes and inspect stable section or solid measurements.
|
|
32
|
+
- [Core Values & Errors](model/categories/core-values-errors.md) — Use the small shared vocabulary for authored geometry, coordinates, paths, and stable failures.
|
|
33
|
+
- [Explicit matching profiles](model/categories/explicit-profiles.md) — Build hollow or multicomponent lofts and sweeps using stable landmarks.
|
|
34
|
+
- [Sampled surfaces](model/categories/bounded-surfaces.md) — Construct bounded heightfields and positive-inside implicit fields.
|
|
35
|
+
- [Solid inspection](model/categories/inspection.md) — Evaluate recipes and copy observations while the host owns native resources.
|
|
36
|
+
- [Model generation](model/categories/generation.md) — Declare typed programs, optional computations, semantic parts and structured diagnostics.
|
|
37
|
+
- [Model contracts](model/categories/contracts.md) — Describe opaque handles, dimensions, manufacturing parts, and completed snapshots.
|
|
38
|
+
|
|
39
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Bounds2
|
|
2
|
+
|
|
3
|
+
Axis-aligned bounds in two-dimensional model space.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
### max
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
`readonly` **max**: [`Vector2Tuple`](Vector2Tuple.md)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
Inclusive maximum X/Y coordinates.
|
|
16
|
+
|
|
17
|
+
***
|
|
18
|
+
|
|
19
|
+
### min
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
`readonly` **min**: [`Vector2Tuple`](Vector2Tuple.md)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
Inclusive minimum X/Y coordinates.
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
## Related APIs
|
|
31
|
+
|
|
32
|
+
- [Vector2Tuple](Vector2Tuple.md)
|
|
33
|
+
|
|
34
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
# VectorFont
|
|
2
|
+
|
|
3
|
+
A prepared font owns its parsed bytes; keep handles local to their Worker or invocation.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
### layout
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
`readonly` **layout**: (`text`: `string`, `options`: [`VectorTextLayoutOptions`](VectorTextLayoutOptions.md)) => [`VectorTextLayout`](VectorTextLayout.md)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
Shape horizontal lines or one circular line; bounded to 512 UTF-16 units and supports blank text.
|
|
16
|
+
|
|
17
|
+
#### Parameters
|
|
18
|
+
|
|
19
|
+
<a id="text"></a>
|
|
20
|
+
|
|
21
|
+
**`text`** · `string` · Required
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
<a id="options"></a>
|
|
26
|
+
|
|
27
|
+
**`options`** · [`VectorTextLayoutOptions`](VectorTextLayoutOptions.md) · Required
|
|
28
|
+
|
|
29
|
+
- [`fontSize`](VectorTextLayoutOptions.md#fontsize) · `number` · Required
|
|
30
|
+
|
|
31
|
+
Em size in millimetres, greater than zero and at most 10000; not the visible glyph height.
|
|
32
|
+
|
|
33
|
+
- [`align`](VectorTextLayoutOptions.md#align) · `"left"` \| `"right"` \| `"center"` · Optional
|
|
34
|
+
|
|
35
|
+
Place the advance's start, midpoint or end at the datum; defaults to center on arcs, otherwise left.
|
|
36
|
+
|
|
37
|
+
- [`baseline`](VectorTextLayoutOptions.md#baseline) · [`VectorTextArcBaseline`](VectorTextArcBaseline.md) · Optional
|
|
38
|
+
|
|
39
|
+
Omitted uses horizontal lines. Arcs require one line and baseline vertical alignment.
|
|
40
|
+
|
|
41
|
+
- [`lineHeight`](VectorTextLayoutOptions.md#lineheight) · `number` · Optional
|
|
42
|
+
|
|
43
|
+
Baseline spacing in ems, 0.5–5; omitted uses the selected face's natural vertical metrics.
|
|
44
|
+
|
|
45
|
+
- [`verticalAlign`](VectorTextLayoutOptions.md#verticalalign) · `"top"` \| `"bottom"` \| `"center"` \| `"baseline"` · Optional
|
|
46
|
+
|
|
47
|
+
Place the first baseline or complete ink bounds at Y=0; arcs only accept baseline.
|
|
48
|
+
|
|
49
|
+
- [`fontWeight`](VectorTextLayoutOptions.md#fontweight) · `number` · Optional
|
|
50
|
+
|
|
51
|
+
Actual static or variable weight, 1–1000; defaults to the prepared face's static weight.
|
|
52
|
+
|
|
53
|
+
- [`letterSpacing`](VectorTextLayoutOptions.md#letterspacing) · `number` · Optional
|
|
54
|
+
|
|
55
|
+
Tracking between glyph clusters in millimetres, -100–100; defaults to zero.
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
#### Returns
|
|
60
|
+
|
|
61
|
+
[`VectorTextLayout`](VectorTextLayout.md)
|
|
62
|
+
|
|
63
|
+
***
|
|
64
|
+
|
|
65
|
+
### measure
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
`readonly` **measure**: (`text`: `string`, `options`: [`VectorTextLayoutOptions`](VectorTextLayoutOptions.md)) => [`VectorTextMetrics`](VectorTextMetrics.md)
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
Measure the same cached vector layout; all returned lengths are in millimetres.
|
|
74
|
+
|
|
75
|
+
#### Parameters
|
|
76
|
+
|
|
77
|
+
<a id="text-1"></a>
|
|
78
|
+
|
|
79
|
+
**`text`** · `string` · Required
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
<a id="options-1"></a>
|
|
84
|
+
|
|
85
|
+
**`options`** · [`VectorTextLayoutOptions`](VectorTextLayoutOptions.md) · Required
|
|
86
|
+
|
|
87
|
+
- [`fontSize`](VectorTextLayoutOptions.md#fontsize) · `number` · Required
|
|
88
|
+
|
|
89
|
+
Em size in millimetres, greater than zero and at most 10000; not the visible glyph height.
|
|
90
|
+
|
|
91
|
+
- [`align`](VectorTextLayoutOptions.md#align) · `"left"` \| `"right"` \| `"center"` · Optional
|
|
92
|
+
|
|
93
|
+
Place the advance's start, midpoint or end at the datum; defaults to center on arcs, otherwise left.
|
|
94
|
+
|
|
95
|
+
- [`baseline`](VectorTextLayoutOptions.md#baseline) · [`VectorTextArcBaseline`](VectorTextArcBaseline.md) · Optional
|
|
96
|
+
|
|
97
|
+
Omitted uses horizontal lines. Arcs require one line and baseline vertical alignment.
|
|
98
|
+
|
|
99
|
+
- [`lineHeight`](VectorTextLayoutOptions.md#lineheight) · `number` · Optional
|
|
100
|
+
|
|
101
|
+
Baseline spacing in ems, 0.5–5; omitted uses the selected face's natural vertical metrics.
|
|
102
|
+
|
|
103
|
+
- [`verticalAlign`](VectorTextLayoutOptions.md#verticalalign) · `"top"` \| `"bottom"` \| `"center"` \| `"baseline"` · Optional
|
|
104
|
+
|
|
105
|
+
Place the first baseline or complete ink bounds at Y=0; arcs only accept baseline.
|
|
106
|
+
|
|
107
|
+
- [`fontWeight`](VectorTextLayoutOptions.md#fontweight) · `number` · Optional
|
|
108
|
+
|
|
109
|
+
Actual static or variable weight, 1–1000; defaults to the prepared face's static weight.
|
|
110
|
+
|
|
111
|
+
- [`letterSpacing`](VectorTextLayoutOptions.md#letterspacing) · `number` · Optional
|
|
112
|
+
|
|
113
|
+
Tracking between glyph clusters in millimetres, -100–100; defaults to zero.
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
#### Returns
|
|
118
|
+
|
|
119
|
+
[`VectorTextMetrics`](VectorTextMetrics.md)
|
|
120
|
+
|
|
121
|
+
***
|
|
122
|
+
|
|
123
|
+
### toSvg
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
`readonly` **toSvg**: (`text`: `string`, `options`: [`VectorTextLayoutOptions`](VectorTextLayoutOptions.md)) => `string`
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
Serialize visible horizontal or circular outlines as bounded path-only SVG in physical millimetres.
|
|
132
|
+
|
|
133
|
+
#### Parameters
|
|
134
|
+
|
|
135
|
+
<a id="text-2"></a>
|
|
136
|
+
|
|
137
|
+
**`text`** · `string` · Required
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
<a id="options-2"></a>
|
|
142
|
+
|
|
143
|
+
**`options`** · [`VectorTextLayoutOptions`](VectorTextLayoutOptions.md) · Required
|
|
144
|
+
|
|
145
|
+
- [`fontSize`](VectorTextLayoutOptions.md#fontsize) · `number` · Required
|
|
146
|
+
|
|
147
|
+
Em size in millimetres, greater than zero and at most 10000; not the visible glyph height.
|
|
148
|
+
|
|
149
|
+
- [`align`](VectorTextLayoutOptions.md#align) · `"left"` \| `"right"` \| `"center"` · Optional
|
|
150
|
+
|
|
151
|
+
Place the advance's start, midpoint or end at the datum; defaults to center on arcs, otherwise left.
|
|
152
|
+
|
|
153
|
+
- [`baseline`](VectorTextLayoutOptions.md#baseline) · [`VectorTextArcBaseline`](VectorTextArcBaseline.md) · Optional
|
|
154
|
+
|
|
155
|
+
Omitted uses horizontal lines. Arcs require one line and baseline vertical alignment.
|
|
156
|
+
|
|
157
|
+
- [`lineHeight`](VectorTextLayoutOptions.md#lineheight) · `number` · Optional
|
|
158
|
+
|
|
159
|
+
Baseline spacing in ems, 0.5–5; omitted uses the selected face's natural vertical metrics.
|
|
160
|
+
|
|
161
|
+
- [`verticalAlign`](VectorTextLayoutOptions.md#verticalalign) · `"top"` \| `"bottom"` \| `"center"` \| `"baseline"` · Optional
|
|
162
|
+
|
|
163
|
+
Place the first baseline or complete ink bounds at Y=0; arcs only accept baseline.
|
|
164
|
+
|
|
165
|
+
- [`fontWeight`](VectorTextLayoutOptions.md#fontweight) · `number` · Optional
|
|
166
|
+
|
|
167
|
+
Actual static or variable weight, 1–1000; defaults to the prepared face's static weight.
|
|
168
|
+
|
|
169
|
+
- [`letterSpacing`](VectorTextLayoutOptions.md#letterspacing) · `number` · Optional
|
|
170
|
+
|
|
171
|
+
Tracking between glyph clusters in millimetres, -100–100; defaults to zero.
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
#### Returns
|
|
176
|
+
|
|
177
|
+
`string`
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
## Related APIs
|
|
181
|
+
|
|
182
|
+
- [VectorTextLayout](VectorTextLayout.md)
|
|
183
|
+
- [VectorTextLayoutOptions](VectorTextLayoutOptions.md)
|
|
184
|
+
- [VectorTextMetrics](VectorTextMetrics.md)
|
|
185
|
+
|
|
186
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# VectorFontOptions
|
|
2
|
+
|
|
3
|
+
Identifies the actual weight of a static face, without synthesizing a different weight.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
### staticWeight?
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
`readonly` `optional` **staticWeight?**: `number`
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
Actual weight of a static face, 1–1000; defaults to 400.
|
|
16
|
+
|
|
17
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# VectorTextArcBaseline
|
|
2
|
+
|
|
3
|
+
A circular baseline centered at the XY origin, with rigid shaped glyph groups.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
### kind
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
`readonly` **kind**: `"arc"`
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
Selects a circular baseline; glyph outlines rotate without bending or stretching.
|
|
16
|
+
|
|
17
|
+
***
|
|
18
|
+
|
|
19
|
+
### radius
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
`readonly` **radius**: `number`
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
Baseline radius in millimetres, greater than zero and at most 10000.
|
|
28
|
+
|
|
29
|
+
***
|
|
30
|
+
|
|
31
|
+
### centerAngleDegrees?
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
`readonly` `optional` **centerAngleDegrees?**: `number`
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
Alignment datum in degrees counterclockwise from +X; defaults to 90.
|
|
40
|
+
|
|
41
|
+
***
|
|
42
|
+
|
|
43
|
+
### direction?
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
`readonly` `optional` **direction?**: `"clockwise"` \| `"counterclockwise"`
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
Reading direction around the circle; defaults to clockwise.
|
|
52
|
+
|
|
53
|
+
Package: `@metamesh/modeling@0.14.0`.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# VectorTextLayout
|
|
2
|
+
|
|
3
|
+
Immutable vector layout with no browser, font parser, or kernel ownership.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
### paths
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
`readonly` **paths**: readonly `string`[]
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
Nonzero-filled path data in millimetres, positive Y upward; empty for text with no ink.
|
|
16
|
+
|
|
17
|
+
***
|
|
18
|
+
|
|
19
|
+
### metrics
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
`readonly` **metrics**: [`VectorTextMetrics`](VectorTextMetrics.md)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
Exact measurements of these paths and their logical text layout.
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
## Related APIs
|
|
31
|
+
|
|
32
|
+
- [VectorTextMetrics](VectorTextMetrics.md)
|
|
33
|
+
|
|
34
|
+
Package: `@metamesh/modeling@0.14.0`.
|