![]() |
Project
|
Whether a set of bounded surfaces forms a closed, consistently oriented 2-manifold, by half-edges, rims and edge identities. More...
#include <BoundedSurface.h>
Public Attributes | |
| bool | closed = true |
| every boundary edge is shared by exactly two faces | |
| bool | orientationConsistent = true |
| shared edges are traversed in opposite directions | |
| int | boundaryEdges = 0 |
| edges present on only one face (e.g. a missing face) | |
| int | nonManifoldEdges = 0 |
| edges shared by more than two faces | |
| int | reversedEdges = 0 |
| edges shared by two faces in the same direction | |
| double | signedVolume = 0. |
| divergence-theorem volume; positive if normals point out | |
Rim-based measurement: the boundary as curves in cm, counted per rim; the verdict when there are no edge identities | |
Largest distance in cm from any rim chord to the nearest chord of another face; not a seam width. | |
| double | maxRimIsolation = 0. |
| double | totalRimLength = 0. |
| summed length in cm of every face's trim boundary | |
| double | unmatchedRimLength = 0. |
| how much of it has no other face within the match band, cm | |
| double | rimEpsilon = 0. |
| the declared matching tolerance, in cm | |
| double | rimChordResolution = 0. |
| int | rims = 0 |
| total number of trim loops over all faces | |
| int | matchedRims = 0 |
| int | reversedRims = 0 |
| int | nonManifoldRims = 0 |
| some chord has two or more other faces within rimEpsilon | |
| int | boundaryRims = 0 |
| std::vector< RimRecord > | rimRecords |
Closure by edge identity (sidecar v3): an edge is shared when it appears exactly twice, once each way | |
True when every surface carried a boundary edge list. | |
| bool | edgeIdentityAvailable = false |
| int | edgeIncidences = 0 |
| distinct edge identifiers seen over all faces | |
| int | edgeSharedCount = 0 |
| appearing exactly twice, opposite sense: a properly shared edge | |
| int | edgeBoundaryCount = 0 |
| appearing once: a face is missing on the other side | |
| int | edgeNonManifoldCount = 0 |
| appearing three or more times | |
| int | edgeReversedCount = 0 |
| appearing exactly twice, but with the same sense | |
| int | edgeDegenerateCount = 0 |
| double | maxSharedEdgeDeviation = 0. |
| Largest Hausdorff distance between two faces' realisations of a shared edge, in cm; a measurement, not a verdict. | |
| uint32_t | maxSharedEdgeDeviationEdge = 0 |
| which edge that was | |
| Vec3 | maxSharedEdgeDeviationPoint {} |
| and where on it | |
| int | maxSharedEdgeDeviationFaces [2] = {-1, -1} |
| between which two faces | |
| int | sharedEdgesMeasured = 0 |
| shared edges both of whose faces could be sampled | |
| int | sharedEdgesUnmeasured = 0 |
Whether a set of bounded surfaces forms a closed, consistently oriented 2-manifold, by half-edges, rims and edge identities.
Definition at line 4676 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::boundaryEdges = 0 |
edges present on only one face (e.g. a missing face)
Definition at line 4679 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::boundaryRims = 0 |
some chord has no other face within the match band
Definition at line 4700 of file BoundedSurface.h.
| bool o2::cad::surface::ClosureReport::closed = true |
every boundary edge is shared by exactly two faces
Definition at line 4677 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::edgeBoundaryCount = 0 |
appearing once: a face is missing on the other side
Definition at line 4712 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::edgeDegenerateCount = 0 |
flagged degenerate (cone apex, sphere pole): excluded from the counts above, because a point has no second face to meet
Definition at line 4715 of file BoundedSurface.h.
| bool o2::cad::surface::ClosureReport::edgeIdentityAvailable = false |
Definition at line 4709 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::edgeIncidences = 0 |
distinct edge identifiers seen over all faces
Definition at line 4710 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::edgeNonManifoldCount = 0 |
appearing three or more times
Definition at line 4713 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::edgeReversedCount = 0 |
appearing exactly twice, but with the same sense
Definition at line 4714 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::edgeSharedCount = 0 |
appearing exactly twice, opposite sense: a properly shared edge
Definition at line 4711 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::matchedRims = 0 |
every chord has another face within the match band, traversed the opposite way
Definition at line 4695 of file BoundedSurface.h.
| double o2::cad::surface::ClosureReport::maxRimIsolation = 0. |
Definition at line 4687 of file BoundedSurface.h.
| double o2::cad::surface::ClosureReport::maxSharedEdgeDeviation = 0. |
Largest Hausdorff distance between two faces' realisations of a shared edge, in cm; a measurement, not a verdict.
Definition at line 4719 of file BoundedSurface.h.
| uint32_t o2::cad::surface::ClosureReport::maxSharedEdgeDeviationEdge = 0 |
which edge that was
Definition at line 4720 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::maxSharedEdgeDeviationFaces[2] = {-1, -1} |
between which two faces
Definition at line 4722 of file BoundedSurface.h.
| Vec3 o2::cad::surface::ClosureReport::maxSharedEdgeDeviationPoint {} |
and where on it
Definition at line 4721 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::nonManifoldEdges = 0 |
edges shared by more than two faces
Definition at line 4680 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::nonManifoldRims = 0 |
some chord has two or more other faces within rimEpsilon
Definition at line 4699 of file BoundedSurface.h.
| bool o2::cad::surface::ClosureReport::orientationConsistent = true |
shared edges are traversed in opposite directions
Definition at line 4678 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::reversedEdges = 0 |
edges shared by two faces in the same direction
Definition at line 4681 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::reversedRims = 0 |
matched, but the partner traverses the shared curve the same way (one face's outward normal points inward)
Definition at line 4697 of file BoundedSurface.h.
| double o2::cad::surface::ClosureReport::rimChordResolution = 0. |
the largest amount by which any rim polyline can sit off the smooth rim it samples, in cm; the per-chord value of this is what widens the match band
Definition at line 4691 of file BoundedSurface.h.
| double o2::cad::surface::ClosureReport::rimEpsilon = 0. |
the declared matching tolerance, in cm
Definition at line 4690 of file BoundedSurface.h.
| std::vector<RimRecord> o2::cad::surface::ClosureReport::rimRecords |
One entry per rim, in the order the faces were visited: the detail behind the counters above. The counters say how many rims are open; these say which, and where.
Definition at line 4703 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::rims = 0 |
total number of trim loops over all faces
Definition at line 4694 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::sharedEdgesMeasured = 0 |
shared edges both of whose faces could be sampled
Definition at line 4723 of file BoundedSurface.h.
| int o2::cad::surface::ClosureReport::sharedEdgesUnmeasured = 0 |
the rest: a parametric-rectangle face names its edges but carries no curve for them, so there is nothing to compare
Definition at line 4724 of file BoundedSurface.h.
| double o2::cad::surface::ClosureReport::signedVolume = 0. |
divergence-theorem volume; positive if normals point out
Definition at line 4682 of file BoundedSurface.h.
| double o2::cad::surface::ClosureReport::totalRimLength = 0. |
summed length in cm of every face's trim boundary
Definition at line 4688 of file BoundedSurface.h.
| double o2::cad::surface::ClosureReport::unmatchedRimLength = 0. |
how much of it has no other face within the match band, cm
Definition at line 4689 of file BoundedSurface.h.