pub struct BoundaryCoverage { /* private fields */ }Expand description
How much of a space’s body surface its declared boundaries cover, bound to the request it answers.
Implementations§
Source§impl BoundaryCoverage
impl BoundaryCoverage
Sourcepub fn try_new(
request: BoundaryCoverageRequest,
areas: CoverageAreas,
boundaries: Vec<MeasuredBoundary>,
overlaps: Vec<BoundaryOverlap>,
evidence: Evidence,
) -> Result<Self, BoundaryCoverageError>
pub fn try_new( request: BoundaryCoverageRequest, areas: CoverageAreas, boundaries: Vec<MeasuredBoundary>, overlaps: Vec<BoundaryOverlap>, evidence: Evidence, ) -> Result<Self, BoundaryCoverageError>
An answer to request: the areas, every declared boundary of the
space as measured and the pairs of boundaries that overlap.
The covered share is derived from the covered and surface areas.
§Errors
Refuses an unlocated evidence, a surface that may be empty, covered and uncovered areas that cannot add up to the surface, a boundary listed twice, an overlap naming a boundary not on the surface, and exact evidence over an interval that is not a point.
Sourcepub fn request(&self) -> &BoundaryCoverageRequest
pub fn request(&self) -> &BoundaryCoverageRequest
The request this answers.
Sourcepub fn surface_area(&self) -> SurfaceAreaInterval
pub fn surface_area(&self) -> SurfaceAreaInterval
The body’s surface area.
Sourcepub fn covered_area(&self) -> SurfaceAreaInterval
pub fn covered_area(&self) -> SurfaceAreaInterval
The part of the surface at least one boundary covers.
Sourcepub fn uncovered_area(&self) -> SurfaceAreaInterval
pub fn uncovered_area(&self) -> SurfaceAreaInterval
The part of the surface no boundary covers.
Sourcepub fn overlap_area(&self) -> SurfaceAreaInterval
pub fn overlap_area(&self) -> SurfaceAreaInterval
The part of the surface two or more boundaries cover.
The covered share of the surface: the covered area over the surface area, bounded by the least covered over the largest surface and the most covered over the smallest.
Sourcepub fn boundaries(&self) -> &[MeasuredBoundary]
pub fn boundaries(&self) -> &[MeasuredBoundary]
Every declared boundary of the space, in identity order.
Sourcepub fn off_surface(&self) -> impl Iterator<Item = &MeasuredBoundary>
pub fn off_surface(&self) -> impl Iterator<Item = &MeasuredBoundary>
The boundaries lying on no face plane of the body.
Sourcepub fn overlaps(&self) -> &[BoundaryOverlap]
pub fn overlaps(&self) -> &[BoundaryOverlap]
The pairs of boundaries covering a common part of the surface, in identity order.