sweepFace Class Reference

This curved face sweeps the points of an opposing pair of the face's four edges over the surface of the face. Each row of points is constructed by transforming (i.e., translating and rotating) and uniformly scaling the swept edges so that their end points connect to the points of the other two edges. This does a better job than the standard interpolation algorithm of conforming to cylinders, cones, toroids and similar. More...

Inheritance diagram for sweepFace:
Collaboration diagram for sweepFace:

Public Member Functions

 TypeName ("sweep")
 Runtime type information. More...
 
 sweepFace (const dictionary &dict, const label index, const searchableSurfaceList &geometry, Istream &)
 Construct from Istream setting pointsList. More...
 
 sweepFace (const sweepFace &)=delete
 Disallow default bitwise copy construction. More...
 
virtual ~sweepFace ()
 Destructor. More...
 
virtual void project (const blockDescriptor &, const label blockFacei, pointField &points) const
 Project the given points onto the surface. More...
 
void operator= (const sweepFace &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from blockFace
 TypeName ("blockFace")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, blockFace, Istream,(const dictionary &dict, const label index, const searchableSurfaceList &geometry, Istream &is),(dict, index, geometry, is))
 
 blockFace (const face &vertices)
 Construct from face vertices. More...
 
 blockFace (const dictionary &dict, const label index, Istream &)
 Construct from Istream. More...
 
virtual autoPtr< blockFaceclone () const
 Clone function. More...
 
virtual ~blockFace ()
 Destructor. More...
 
const facevertices () const
 Return block face vertices. More...
 
bool compare (const blockFace &) const
 Compare with given blockFace. More...
 
bool compare (const face &vertices) const
 Compare with the given block and block face. More...
 
void write (Ostream &, const dictionary &) const
 Write face with variable backsubstitution. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from blockFace
static autoPtr< blockFaceNew (const dictionary &dict, const label index, const searchableSurfaceList &geometry, Istream &)
 New function which constructs and returns pointer to a blockFace. More...
 
- Protected Attributes inherited from blockFace
const face vertices_
 Block face vertices. More...
 

Detailed Description

This curved face sweeps the points of an opposing pair of the face's four edges over the surface of the face. Each row of points is constructed by transforming (i.e., translating and rotating) and uniformly scaling the swept edges so that their end points connect to the points of the other two edges. This does a better job than the standard interpolation algorithm of conforming to cylinders, cones, toroids and similar.

The algorithm is asymmetric, and depends on the order in which the vertices are supplied. E.g., if vertices (0 1 2 3) are supplied, then that means edge (0 1) will be swept towards edge (2 3) in the direction defined by edges (0 3) and (1 2).

Additionally, the swept edges can be rotated around their axis to match any bend in the sweep path. This behaviour is controlled by a single user-defined scalar parameter, the rotation fraction, which must take a value between 0 and 1. A value of 0 means no rotation is performed, whilst a value of 1 means that the edges are fully rotated to maintain a consistent angle with the sweep path.

Sweeping is done in both directions, and the results are blended with a weight proportional to the proximity to the starting edge. This prevents discontinuities in the case that the start and end edge are not geometrically similar.

Source files

Definition at line 72 of file sweepFace.H.

Constructor & Destructor Documentation

◆ sweepFace() [1/2]

sweepFace ( const dictionary dict,
const label  index,
const searchableSurfaceList geometry,
Istream is 
)

Construct from Istream setting pointsList.

Definition at line 45 of file sweepFace.C.

References Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, and blockFace::vertices().

Here is the call graph for this function:

◆ sweepFace() [2/2]

sweepFace ( const sweepFace )
delete

Disallow default bitwise copy construction.

◆ ~sweepFace()

virtual ~sweepFace ( )
inlinevirtual

Destructor.

Definition at line 104 of file sweepFace.H.

Member Function Documentation

◆ TypeName()

TypeName ( "sweep"  )

Runtime type information.

◆ project()

void project ( const blockDescriptor desc,
const label  blockFacei,
pointField points 
) const
virtual

◆ operator=()

void operator= ( const sweepFace )
delete

Disallow default bitwise assignment.


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