![]() |
Project
|
One closed, oriented polygon loop in a surface's parametric domain: outer loops wind counter-clockwise, holes clockwise. More...
#include <BoundedSurface.h>
Public Member Functions | |
| int | edgeCount () const |
| int | storedIndexOfSource (int inputIndex) const |
| The stored segment that came from input segment inputIndex, or -1 if there is none. | |
| SurfaceEdge | edge (int index) const |
| bool | initialize (const std::vector< Vec2 > &inputVertices, WireRole wireRole, WireStatus &status, const ParametricMetric &metric={}) |
| Build and validate the wire from an implicitly closed vertex ring; metric turns separations into 3D lengths. | |
| bool | initializeFromEdges (const std::vector< SurfaceEdge > &edges, WireRole wireRole, WireStatus &status, const ParametricMetric &metric={}, double joinTolerance=kWireJoinTolerance) |
| Build and validate the wire from an ordered edge list, joining within joinTolerance through metric, as CurveWire does. | |
| double | signedArea () const |
| void | parametricBounds (Vec2 &lower, Vec2 &upper) const |
| std::vector< Vec2 > | sampledBoundary () const |
| The de-duplicated vertex ring, closed back to its first vertex. | |
| WireClassification | classify (const Vec2 &point, double band) const |
| Classify against the polygon with an on-boundary half-width of band, in parametric units. | |
| WireClassification | classify (const Vec2 &point, const ParametricMetric &metric={}) const |
| metric sizes the band only: a polygon is exact, so its band is the length floor. | |
Public Attributes | |
| std::vector< Vec2 > | vertices |
| WireRole | role = WireRole::Outer |
| std::vector< int > | sourceEdge |
| For each stored segment its input segment, or -1 once a vertex was dropped; sidecar v3 edge identities key on it. | |
One closed, oriented polygon loop in a surface's parametric domain: outer loops wind counter-clockwise, holes clockwise.
Definition at line 434 of file BoundedSurface.h.
|
inline |
metric sizes the band only: a polygon is exact, so its band is the length floor.
Definition at line 626 of file BoundedSurface.h.
|
inline |
Classify against the polygon with an on-boundary half-width of band, in parametric units.
Definition at line 602 of file BoundedSurface.h.
|
inline |
Definition at line 454 of file BoundedSurface.h.
|
inline |
Definition at line 441 of file BoundedSurface.h.
|
inline |
Build and validate the wire from an implicitly closed vertex ring; metric turns separations into 3D lengths.
Definition at line 461 of file BoundedSurface.h.
|
inline |
Build and validate the wire from an ordered edge list, joining within joinTolerance through metric, as CurveWire does.
Definition at line 538 of file BoundedSurface.h.
Accumulate this wire's vertices into a parametric axis-aligned bounding box. This is independent of any concrete surface so cylinders, spheres and cones can reuse it.
Definition at line 578 of file BoundedSurface.h.
|
inline |
The de-duplicated vertex ring, closed back to its first vertex.
Definition at line 589 of file BoundedSurface.h.
|
inline |
Definition at line 565 of file BoundedSurface.h.
The stored segment that came from input segment inputIndex, or -1 if there is none.
Definition at line 444 of file BoundedSurface.h.
| WireRole o2::cad::surface::SurfaceWire::role = WireRole::Outer |
Definition at line 436 of file BoundedSurface.h.
| std::vector<int> o2::cad::surface::SurfaceWire::sourceEdge |
For each stored segment its input segment, or -1 once a vertex was dropped; sidecar v3 edge identities key on it.
Definition at line 439 of file BoundedSurface.h.
| std::vector<Vec2> o2::cad::surface::SurfaceWire::vertices |
Definition at line 435 of file BoundedSurface.h.