68 #ifndef surfaceIntersection_H 69 #define surfaceIntersection_H 86 class triSurfaceSearch;
88 class edgeIntersections;
102 class surfaceIntersection
134 label warnDegenerate_;
178 static scalar minEdgeLen(
const triSurface& surf,
const label pointi);
200 void writeIntersectedEdges
209 static label classify
211 const scalar startTol,
220 void storeIntersection
226 const label cutPointId,
surfaceIntersection()
Construct null.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
This class describes the interaction of an object (often a face) and a point. It carries the info of ...
const labelListList & surf2EdgeCuts() const
List of cut points on edges of surface2.
Helper class to search on triSurface.
const edgeList & cutEdges() const
The list of created edges.
const dimensionedScalar e
Elementary charge.
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects...
An edge is a list of two vertex labels. This can correspond to a directed graph edge or an edge on a ...
ClassName("surfaceIntersection")
Self-intersection, region-wise only.
static const dictionary null
An empty dictionary, which is also the parent for all dictionaries.
void mergeEdges()
Merge duplicate edges.
LabelPairMap< edge > labelPairEdgeLookup
Key is non-commutative pair of labels. Value is commutative pair of labels.
const labelListList & edgeCuts(const bool isFirstSurf) const
Access either surf1EdgeCuts (isFirstSurface = true) or.
A HashTable similar to std::unordered_map.
A HashTable to objects of type <T> with a labelPair key. The hashing is based on labelPair (FixedList...
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
An Ostream is an abstract base class for all output systems (streams, files, token lists...
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
OBJstream os(runTime.globalPath()/outputName)
EdgeMap< labelPairHashSet > edgelabelPairHashLookup
Map from edge back to all parents (pairs of faces)
const pointField & cutPoints() const
The list of cut points.
const labelPairLookup & facePairToEdgeId() const
Lookup of pairs of faces to created edges.
Basic run-time type information using word as the type's name. Used to enhance the standard RTTI to c...
const labelListList & surf1EdgeCuts() const
List of cut points on edges of surface1.
void mergePoints(const scalar mergeDist)
Geometric merge points (points within mergeDist) prior to.
intersectionType
Surface intersection types for classify, doCutEdges.
None = invalid (for input only)
Triangulated surface description with patch information.
Holder of intersections of edges of a surface with another surface. Optionally shuffles around points...
static const Enum< intersectionType > selfIntersectionNames
The user-selectable self-intersection enumeration names.