Skip to main content

Crate hypercurve

Crate hypercurve 

Source
Expand description

Curve primitives built on the hyper geometry stack.

This crate starts with a line/circular-arc core using hyperreal::Real coordinates and the hyperlimit predicate policy model. The core topology follows the robust-computation principle of deciding predicates before branching; see Shewchuk, “Adaptive Precision Floating-Point Arithmetic and Fast Robust Geometric Predicates” (Discrete & Computational Geometry 18(3), 305-363, 1997).

Structs§

Aabb2
An axis-aligned bounding box for two-dimensional curve geometry.
ArcArcIntersectionPoint
One point in an arc-arc intersection result.
Bezier2Facts
Structural facts for polynomial Bezier curves.
BezierAlgebraicCoordinateImage
One exact coordinate image of a Bezier expression at an algebraic parameter.
BezierAlgebraicEndpointImage2
Exact point and tangent images for one algebraic split endpoint.
BezierAlgebraicParameter2
Algebraic Bezier parameter represented by a polynomial and isolating interval.
BezierAlgebraicPointImage2
Exact algebraic image of a Bezier point.
BezierAlgebraicRationalCoordinateImage
One exact rational-function coordinate image at an algebraic parameter.
BezierAlgebraicSameTangentOrderReport
Report for a certified algebraic same-tangent higher-order predicate.
BezierAlgebraicScalarSignReport
Sign construction report for a cross, dot, or norm-squared scalar.
BezierAlgebraicTangentImage2
Exact algebraic image of a Bezier derivative vector.
BezierAlgebraicTangentOrderReport
Report for a certified algebraic tangent-order predicate.
BezierAlgebraicTangentVector2
A represented algebraic tangent vector with exact coordinate evidence.
BezierAlgebraicTangentVectorReport
Extraction report for a represented tangent vector.
BezierArcLengthParameterRegion2
Certified parameter region for an inverse arc-length query.
BezierAreaMomentPrefixSums2
Exact prefix sums of Bezier area and first-moment boundary contributions.
BezierAreaMoments2
Exact Green’s-theorem area and first-moment boundary contributions.
BezierAreaPrefixSums2
Exact prefix sums of Bezier signed-area boundary contributions.
BezierArrangementChain2
One endpoint-connected traversal chain through retained Bezier fragments.
BezierArrangementFragment2
One retained Bezier arrangement fragment with source provenance.
BezierArrangementGraph2
Branch-free retained Bezier arrangement graph.
BezierArrangementTraversal2
Traversal result for a branch-free retained Bezier arrangement graph.
BezierBoundaryLoop2
A closed native Bezier/conic boundary loop.
BezierCurveIntersectionPoint
Certified geometric intersection point between two Bezier segments.
BezierCurveIntersectionRegion
Pair of parameter spans that covers one possible curve/curve intersection region.
BezierFitCertificate
Certificate attached to a zero-error Bezier primitive fit.
BezierFlatteningCertificate
Certificate attached to a flattened Bezier polyline.
BezierFlatteningOptions
Options for certified Bezier-to-polyline flattening.
BezierGraphContact
Certified contact on a shared-axis monotone Bezier graph relation.
BezierLengthBounds2
Exact lower and upper bounds for a Bezier segment’s arc length.
BezierLineContact
Certified represented root of a Bezier/supporting-line predicate.
BezierMonotoneSpan
Closed parameter span on which a Bezier has no certified interior extremum.
BezierOffsetPreflight2
Exact source analysis retained before a staged Bezier offset candidate is built.
BezierParameterInterval
Closed isolating interval for a Bezier parameter root.
BezierParameterPolynomial
Power-basis polynomial used to define an algebraic Bezier parameter.
BezierRegion2
A retained higher-order region with native Bezier/conic boundary loops.
BezierRetainedBoundaryLoop2
A closed retained Bezier/conic boundary loop.
BezierRetainedCurveEnvelope2
Exact curve-interior envelope for retained Bezier/conic carriers.
BezierRetainedCurvedNestingRoleReport2
Exact nesting-derived role assignment for native retained curved loops.
BezierRetainedEndpointEnvelope2
Exact endpoint envelope for a retained Bezier region or loop.
BezierRetainedFragmentSource2
Arrangement provenance for one retained boundary fragment.
BezierRetainedLineOverlapSplit2
Exact split evidence for a positive-dimensional line-image overlap.
BezierRetainedLineRegionRoleReport2
Exact role assignment for retained line-image Bezier boundary loops.
BezierRetainedLinearOverlapSplit2
Exact Bezier-parameter split evidence for a linearly parameterized overlap.
BezierRetainedLinearOverlapSplitGraph2
Graph refined at all certified linearly-parameterized overlap endpoints.
BezierRetainedLinearOverlapTraversal2
Traversal through a graph whose certified linear overlaps were refined.
BezierRetainedOverlap2
One certified overlap pair in a retained Bezier arrangement graph.
BezierRetainedOverlapRefinedFragment2
One fragment in a graph refined by certified linear-overlap split points.
BezierRetainedOverlapReport2
Exact overlap report for materialized retained Bezier arrangement fragments.
BezierRetainedOverlapTraversal2
Retained traversal after consuming certified duplicate materialized overlaps.
BezierRetainedRegion2
A higher-order retained region built from accepted native/algebraic carriers.
BezierRetainedResolvedLinearOverlap2
One resolved overlap span after exact linear-overlap graph refinement.
BezierRetainedSignedAreaRoleReport2
Exact orientation-derived role assignment for native retained Bezier loops.
BezierSplitMaterialization2
Ordered split result for one Bezier segment.
BooleanBoundaryChain
One endpoint-connected directed boundary chain.
BooleanBoundaryChainSet
Endpoint-connected boundary chains.
BooleanBoundaryFragmentSet
Boundary fragments selected by a boolean operation.
BooleanBoundaryLoop
One closed boolean result boundary loop.
BooleanBoundaryLoopSet
Closed boolean boundary loops before material/hole role assignment.
BooleanFragmentClassification
Boolean classification for one source fragment.
BooleanFragmentSelection
Boolean classification for all fragments in a region-pair fragment set.
BulgeVertex2
A point plus the bulge for the outgoing segment.
CertifiedBezierLineFit2
A zero-error line fit recovered from a certified flattened Bezier polyline.
CertifiedBezierLineImage2
A Bezier or conic segment certified to trace exactly one endpoint line segment.
CertifiedBezierLineImageOffset2
Exact offset of a certified Bezier/conic line image.
CertifiedBezierLineOffset2
Exact offset of a certified zero-error line fit.
CertifiedBezierPointFit2
A zero-error point fit recovered from a certified flattened Bezier polyline.
CertifiedBezierPointImage2
A Bezier or conic segment certified to be one exact affine point.
CertifiedBezierPolyline2
A polyline produced by certified Bezier flattening.
CircularArc2
A finite circular arc segment.
CircularArc2Facts
Structural facts for a CircularArc2.
Contour2
A closed sequence of connected native segments.
ContourFragment
One source-contour fragment between adjacent split markers.
ContourFragmentSet
Ordered fragments from a split contour.
ContourIntersectionSet
A normalized set of contour-pair topology events.
ContourOverlapIntersection
A finite overlap event between two contours.
ContourPointIntersection
A point event between two contours.
ContourSplitMap
Per-segment split parameters for a contour.
ContourSplitMarkers
Point-bearing split markers grouped by source contour segment.
ContourUncertainIntersection
An uncertain segment-pair relation.
CubicBezier2
A polynomial cubic Bezier segment with four exact control points.
CurvePolicy
Operation-level policy for curve algorithms.
CurveString2
An ordered sequence of connected native segments.
CurveStringFacts
Structural facts for a curve string or contour segment list.
CurveStringIntersection
One segment-pair event between two curve strings.
DirectedBooleanFragment
A selected fragment with geometry already oriented for result traversal.
EndpointTangent2
Exact first-derivative information at a Bezier endpoint.
FiniteContourImport2
Result of importing a finite closed line ring.
FiniteCurveStringImport2
Result of importing a finite open line string.
FinitePolyline2
Finite f64 polyline emitted from a native curve object.
FiniteProjectionOptions
Options for projecting native curves to finite f64 polylines.
FiniteRegionProfile2
A finite material ring and the finite hole rings owned by it.
FiniteRegionProjection2
Finite f64 projection of a region with material and hole roles retained.
LineArcIntersectionPoint
One point in a line-arc intersection result.
LineSeg2
A finite line segment.
LineSeg2Facts
Structural facts for a LineSeg2.
ParamRange
Parameter range on a segment.
PlanarPcurveImageEqualityReport2
Evidence report for one planar pcurve image-equality predicate.
Point2
A two-dimensional point.
Point2Facts
Structural facts for a Point2.
PolylineReconstructionOptions
Controls reconstruction of line and circular-arc segments from sampled polyline points.
PolynomialBSplineBezierExtraction2
Exact Bezier extraction report for one polynomial B-spline.
PolynomialBSplineCurve2
Exact polynomial B-spline curve in the plane.
PredicatePolicy
Runtime policy for predicate escalation.
PreparedCircularArc2
Prepared sweep and circle classifier for a fixed CircularArc2.
PreparedContourView2
A borrowed contour with cached contour and segment bounding boxes.
PreparedCurveStringView2
A borrowed curve string with cached segment and whole-string bounding boxes.
PreparedLineSeg2
Prepared point-line classifier for a fixed LineSeg2.
PreparedRegionView2
A borrowed region view with cached contour and region bounding boxes.
PreparedRetainedPlanarFace2
Prepared retained planar face for repeated support-surface and UV queries.
QuadraticBezier2
A polynomial quadratic Bezier segment with three exact control points.
Rational
Ratio of two integers
RationalBSplineBezierExtraction2
Exact rational Bezier extraction report for a retained NURBS curve.
RationalBSplineCurve2
Exact rational B-spline/NURBS curve in the plane.
RationalBSplineNativeTopologyReport2
Native-topology audit report for a retained rational B-spline extraction.
RationalBezierAlgebraicPointImage2
Exact algebraic image of a rational quadratic Bezier affine point.
RationalBezierAlgebraicTangentImage2
Exact algebraic image of a rational quadratic Bezier derivative vector.
RationalBezierSpan2
One exact rational Bezier span extracted from a retained NURBS curve.
RationalBezierSpanTopologyReport2
Native-topology audit report for one retained rational Bezier span.
RationalQuadraticBSplineBezierExtraction2
Exact rational Bezier extraction report for one quadratic NURBS curve.
RationalQuadraticBSplineCurve2
Exact quadratic NURBS curve in the plane.
RationalQuadraticBezier2
A rational quadratic Bezier segment with exact control points and weights.
RationalQuadraticBezier2Facts
Structural facts for rational quadratic Bezier/conic segments.
Real
(More) Real numbers
Region2
An owned planar region with explicit material and hole contour bins.
RegionContourFragments
Fragments for one keyed contour in a region-pair query.
RegionContourIntersection
Intersections between two keyed contours from a region-pair query.
RegionContourKey
Identifies one contour inside a region-pair query.
RegionContourProfile
A material contour and the hole contours owned by it.
RegionFacts
Structural facts for a region prepared from material and hole contours.
RegionFragmentSet
Fragment inventory for both regions in a region-pair query.
RegionIntersectionSet
Normalized contour-pair intersections between two regions.
RegionView2
Borrowed view over material and hole contours.
RetainedBSplineSpanFactReport2
Span-local fact report for one B-spline/NURBS extraction.
RetainedBSplineSpanFacts2
Span-local facts produced from B-spline/NURBS Bezier extraction.
RetainedCurveCacheSummary2
Prepared-cache shape summary for a retained curve.
RetainedCurveIdentity2
Stable source identity for a retained curve.
RetainedCurveProfile2
Retained curve profile combining identity, domain, trim, endpoints, and cache facts.
RetainedEndpointEvidence2
Exact endpoint evidence at the active retained domain boundaries.
RetainedImportRecord2
Retained audit record for one imported finite curve carrier.
RetainedParameterDomain1
Exact one-dimensional parameter domain.
RetainedPlanarFace2
Retained planar face assembled from material and hole pcurve trim loops.
RetainedPlanarFaceEdgeUseReport2
Evidence report for a retained planar pcurve edge-use query.
RetainedPlanarFacePointReport2
Evidence report for an exact UV point-in-face query.
RetainedPlanarPcurve2
Open retained pcurve on a planar support surface.
RetainedPlanarSurfaceIdentity2
Opaque identity of a retained planar support surface.
RetainedPlanarTrimLoop2
Closed retained trim-loop pcurve on a planar support surface.
RetainedSourceTolerance2
Absolute/relative tolerance carried from an import source.
RetainedSpanWeightDomainReport2
Nonzero-weight evidence for a retained rational span.
RetainedTrimInterval1
Exact trim interval on a retained curve domain.
Segment2Facts
Structural facts for a native Segment2.
SegmentKindCounts
Counts of native segment families in a prepared object.
SegmentSplitMarker
A local split marker with both ordering parameter and geometric point.
SegmentSplitPoint
A local split parameter on one contour segment.
Similarity2
A 2D affine transform whose linear part is a nonsingular similarity.
SymbolicDependencyMask
Opaque bit mask of symbolic dependencies visible in a Real.
Tolerance
Optional absolute/relative tolerance metadata for edge-preview operations.

Enums§

ArcArcIntersection
Intersection between two circular arcs.
Axis2
Coordinate axis used by Bezier monotonicity and bounds predicates.
BezierAlgebraicImageStatus
Status for a Bezier algebraic point or tangent image.
BezierAlgebraicSameTangentOrderStatus
Status for comparing two same-direction algebraic tangent branches with second-order local evidence.
BezierAlgebraicTangentOrderStatus
Status for algebraic tangent-order comparison.
BezierAlgebraicTangentVectorStatus
Status for extracting represented tangent coordinates from an image.
BezierCurveRelation
Coarse certified relation between two polynomial Bezier segments.
BezierCuspClassification
Certified cusp status visible to this exact predicate slice.
BezierDegree
Polynomial Bezier curve degree.
BezierEndpoint
An endpoint of a parametric Bezier segment.
BezierEndpointPointImage2
Exact point image retained at an algebraic split endpoint.
BezierEndpointTangentImage2
Exact tangent image retained at an algebraic split endpoint.
BezierFitBoundKind
Proof status for a Bezier fitting error bound.
BezierFitErrorMetric
Error metric used by a zero-error primitive fit.
BezierInflectionClassification
Certified inflection status for a polynomial Bezier segment.
BezierLineContactKind
Certified contact kind for a represented Bezier/supporting-line root.
BezierLineContactRelation
Supporting-line relation with represented root contact classification.
BezierLineFitRelation
Result of attempting a zero-error line fit.
BezierLineImageFitRelation
Result of attempting to fit the Bezier/conic object itself to a line.
BezierLineRelation
Certified relation between a Bezier segment and an infinite supporting line.
BezierMonotoneGraphContactOrder
Certified order of two Bezier graph curves with represented contact kinds.
BezierMonotoneGraphOrder
Certified order of two Bezier graph curves over one shared monotone axis.
BezierOffsetCandidate2
Result of a staged Bezier/conic offset attempt.
BezierOffsetRisk
Exact source-curve hazard that must be resolved before a Bezier offset is treated as a topology product.
BezierParameter2
Exact Bezier parameter carrier.
BezierPointFitRelation
Result of attempting a zero-error point fit.
BezierPointImageFitRelation
Result of attempting to fit the Bezier/conic object to one point.
BezierRetainedEnvelopeSourceKind
Source class of one retained envelope witness.
BezierRetainedLineOverlapExtent2
Certified extent class for a retained line-image overlap.
BezierRetainedOverlapOrientation2
Orientation of two refined fragments that carry the same overlap image.
BezierRetainedOverlapRelation2
Exact positive-dimensional overlap relation between two arrangement fragments.
BezierRetainedRegionLoopRole
Material/hole role assigned to one retained Bezier boundary loop.
BezierSplitFragment2
One fragment between adjacent split boundaries.
BezierSubcurve2
A native Bezier subcurve produced by exact split materialization.
BezierTangentTurnOrdering2
Certified turn ordering for two candidate tangents around a base tangent.
BooleanFragmentAction
How a classified source fragment participates in a boolean result.
BooleanOp
Boolean operation requested between two regions.
CircleCircleRelation
Relation between two full circles supporting circular arcs.
Classification
Result of a classification step.
ContourIntersection
One normalized contour-pair topology event.
ContourOperand
Which side of a contour-pair event to inspect.
ContourPointLocation
Point location relative to a closed contour.
CurveError
Errors returned by curve constructors and early topology scaffolding.
FillRule
Fill rule used when classifying contour interiors.
IntersectionKind
Local intersection kind.
LineArcIntersection
Intersection between a line segment and a circular arc.
LineArcOrder
Operand order for a line-arc segment intersection.
LineCircleRelation
Relation between an oriented supporting line and a full circle.
LineLineIntersection
Intersection between two line segments.
LineSide
Side of an oriented line.
NumericMode
Runtime numeric mode for whole curve operations.
OffsetCap
Endpoint cap style for checked open curve-string outlines.
PlanarPcurveImageRelation2
Exact image relation between two retained planar pcurves.
PreparedSegment2
Prepared exact-predicate handle for a native segment.
RationalQuadraticConicKind
Coarse conic family represented by a rational quadratic Bezier segment.
RealSign
Exact sign knowledge exposed by structural inspection.
RegionContourRole
Semantic role of a contour inside a region.
RegionPointLocation
Point location relative to a planar region.
RegionSide
Which region side a contour key belongs to.
RetainedCurveFamily2
Curve family carried by retained curve metadata.
RetainedCurvePeriodicity1
Periodicity evidence for a retained curve.
RetainedImportFormat2
Source family for a lossy retained curve import record.
RetainedImportTopology2
Source topology for a lossy retained curve import record.
RetainedPlanarFaceEdgeUseRelation2
Exact edge-use agreement between a retained planar pcurve and face trims.
RetainedPlanarFacePointLocation2
Point classification result for a retained planar face.
RetainedPlanarTrimLoopRole2
Role of the retained trim loop that owns a matched pcurve edge-use.
RetainedSpanAxisMonotonicity
Certified or retained monotonicity evidence for one extracted spline span.
RetainedTopologyStatus
Topology-readiness status for a retained curve or span.
RetainedTrimDirection
Direction of a trim interval relative to its parameter domain.
Segment2
A native line or circular-arc segment.
SegmentIntersection
Intersection between two native segments.
SegmentKind
Segment primitive family.
UncertaintyReason
Reason an operation could not decide a topology branch.
ZeroStatus
Whether structural inspection can prove zero or nonzero status.

Functions§

compare_algebraic_same_tangent_second_order
Compares same-direction algebraic tangent branches by second-order evidence.
compare_algebraic_same_tangent_third_order
Compares same-direction algebraic tangent branches by third-order evidence.
compare_algebraic_tangent_turn_from_base
Compares two candidate tangent turns from a base tangent.
finite_polyline_vertex_centroid
Returns the arithmetic centroid of finite polyline vertices.
finite_ring_signed_area
Returns the finite signed shoelace area of projected ring vertices.
triangulate_finite_rings
Triangulates a finite material ring with owned finite hole rings.
try_finite_polyline_vertex_centroid
Returns the checked arithmetic centroid of finite polyline vertices.
try_finite_ring_signed_area
Returns the checked finite signed shoelace area of projected ring vertices.

Type Aliases§

CurveResult
Result alias used by hypercurve.
FiniteTriangle2
A finite triangle emitted from a projected region profile.