Public Member Functions | Private Member Functions | Private Attributes
triSurfaceDetectFeatureEdges Class Reference
Collaboration diagram for triSurfaceDetectFeatureEdges:
Collaboration graph
[legend]

Public Member Functions

 triSurfaceDetectFeatureEdges (triSurf &surface, const scalar angleDeviation=45.0)
 Construct from triSurface and tolerance. More...
 
 ~triSurfaceDetectFeatureEdges ()
 
void detectFeatureEdges ()
 store regions in a graph More...
 

Private Member Functions

void detectFeatureEdgesAngleCriterion ()
 
 triSurfaceDetectFeatureEdges (const triSurfaceDetectFeatureEdges &)
 Disallow default bitwise copy construct. More...
 
void operator= (const triSurfaceDetectFeatureEdges &)
 Disallow default bitwise assignment. More...
 

Private Attributes

triSurfsurf_
 reference to triSurf More...
 
List< directionfeatureEdges_
 detected feature edges More...
 
scalar angleTolerance_
 angle tolerance More...
 

Detailed Description

Definition at line 50 of file triSurfaceDetectFeatureEdges.H.

Constructor & Destructor Documentation

◆ triSurfaceDetectFeatureEdges() [1/2]

Disallow default bitwise copy construct.

◆ triSurfaceDetectFeatureEdges() [2/2]

triSurfaceDetectFeatureEdges ( triSurf surface,
const scalar  angleDeviation = 45.0 
)

Construct from triSurface and tolerance.

Definition at line 41 of file triSurfaceDetectFeatureEdges.C.

References Foam::exit(), Foam::FatalError, and UPstream::parRun().

Here is the call graph for this function:

◆ ~triSurfaceDetectFeatureEdges()

Definition at line 57 of file triSurfaceDetectFeatureEdges.C.

Member Function Documentation

◆ detectFeatureEdgesAngleCriterion()

void detectFeatureEdgesAngleCriterion ( )
private

detect feature edges by check angle between the normals of the two neighbouring facets

check the orientation of triangles at this edge check the sign of the angle if the orientation is not consistent

Definition at line 44 of file triSurfaceDetectFeatureEdgesFunctions.C.

References triSurfaceDetectFeatureEdges::angleTolerance_, DynList< T, staticSize >::append(), Foam::constRow, Foam::cos(), triSurfAddressing::edgeFacets(), triSurfAddressing::facetNormals(), triSurfaceDetectFeatureEdges::featureEdges_, Pair::first(), forAll, Foam::mag(), Pair::second(), DynList< T, staticSize >::size(), VRWGraph::sizeOfRow(), and triSurfaceDetectFeatureEdges::surf_.

Here is the call graph for this function:

◆ operator=()

void operator= ( const triSurfaceDetectFeatureEdges )
private

Disallow default bitwise assignment.

◆ detectFeatureEdges()

void detectFeatureEdges ( )

store regions in a graph

Definition at line 62 of file triSurfaceDetectFeatureEdges.C.

References LongList< T, Offset >::append(), LongList< T, Offset >::clear(), triSurfAddressing::edges(), triSurfaceDetectFeatureEdges::featureEdges_, triSurfModifier::featureEdgesAccess(), forAll, and triSurfaceDetectFeatureEdges::surf_.

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

Field Documentation

◆ surf_

triSurf& surf_
private

◆ featureEdges_

List<direction> featureEdges_
private

◆ angleTolerance_

scalar angleTolerance_
private

The documentation for this class was generated from the following files: