A topoSetSource to select cells based on cell centres inside a rotated and/or skewed box. More...
Public Member Functions | |
TypeName ("rotatedBoxToCell") | |
Runtime type information. More... | |
rotatedBoxToCell (const polyMesh &mesh, const vector &origin, const vector &i, const vector &j, const vector &k) | |
Construct from components. More... | |
rotatedBoxToCell (const polyMesh &mesh, const dictionary &dict) | |
Construct from dictionary. More... | |
virtual | ~rotatedBoxToCell () |
Destructor. More... | |
virtual sourceType | setType () const |
virtual void | applyToSet (const topoSetSource::setAction action, topoSet &) const |
Public Member Functions inherited from topoSetSource | |
TypeName ("topoSetSource") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, topoSetSource, word,(const polyMesh &mesh, const dictionary &dict),(mesh, dict)) | |
topoSetSource (const polyMesh &mesh) | |
Construct from components. More... | |
topoSetSource (const topoSetSource &)=delete | |
Disallow default bitwise copy construction. More... | |
autoPtr< topoSetSource > | clone () const |
Clone. More... | |
virtual | ~topoSetSource () |
Destructor. More... | |
const polyMesh & | mesh () const |
void | operator= (const topoSetSource &)=delete |
Disallow default bitwise assignment. More... | |
Additional Inherited Members | |
Public Types inherited from topoSetSource | |
enum | sourceType { CELLSETSOURCE , FACESETSOURCE , POINTSETSOURCE , CELLZONESOURCE , FACEZONESOURCE , POINTZONESOURCE } |
Enumeration defining the types of sources. More... | |
enum | setAction { CLEAR , NEW , INVERT , ADD , DELETE , SUBSET , LIST , REMOVE } |
Enumeration defining the valid actions. More... | |
Static Public Member Functions inherited from topoSetSource | |
static setAction | toAction (const word &actionName) |
Convert string to action. More... | |
static autoPtr< topoSetSource > | New (const word &topoSetSourceType, const polyMesh &mesh, const dictionary &dict) |
Return a reference to the selected topoSetSource. More... | |
Protected Member Functions inherited from topoSetSource | |
void | addOrDelete (topoSet &set, const label celli, const bool) const |
Add (if bool) celli to set or delete celli from set. More... | |
Protected Attributes inherited from topoSetSource | |
const polyMesh & | mesh_ |
A topoSetSource to select cells based on cell centres inside a rotated and/or skewed box.
The box can be defined with an origin and three vectors; i, j, and k. The origin is one corner of the box, and the vectors are the edges connected to that corner.
For example, the following defines a box rotated 45 degrees around the z-axis, with width and depth of 0.2, height of 200, and with a bottom left corner at (0.4 0.4 -100):
origin (0.4 0.4 -100); i (0.141421 0.141421 0); j (-0.141421 0.141421 0); k (0 0 200);
Alternatively, the box can be defined using a non-rotated box and details of how it should be rotated. This syntax is triggered by the presence of the keyword "box". A standard bounding box is supplied, along with a centre of rotation and two vectors, n1 and n2. The rotation is taken to be that which transforms n1 onto n2.
The above example can be equivalently specified in this alternative form as follows:
box (0.4 0.4 -100) (0.6 0.6 100); centre (0.4 0.4 0); n1 (1 0 0); n2 (1 1 0);
Definition at line 81 of file rotatedBoxToCell.H.
rotatedBoxToCell | ( | const polyMesh & | mesh, |
const vector & | origin, | ||
const vector & | i, | ||
const vector & | j, | ||
const vector & | k | ||
) |
Construct from components.
Definition at line 105 of file rotatedBoxToCell.C.
rotatedBoxToCell | ( | const polyMesh & | mesh, |
const dictionary & | dict | ||
) |
Construct from dictionary.
Definition at line 122 of file rotatedBoxToCell.C.
References Foam::constant::universal::c, dict, Foam::dimLength, Foam::dimless, boundBox::midpoint(), boundBox::min(), Foam::normalised(), boundBox::points(), Foam::R(), and Foam::rotationTensor().
|
virtual |
Destructor.
Definition at line 164 of file rotatedBoxToCell.C.
TypeName | ( | "rotatedBoxToCell" | ) |
Runtime type information.
|
inlinevirtual |
Implements topoSetSource.
Definition at line 133 of file rotatedBoxToCell.H.
References topoSetSource::CELLSETSOURCE.
|
virtual |
Implements topoSetSource.
Definition at line 170 of file rotatedBoxToCell.C.
References topoSetSource::ADD, Foam::combine(), topoSetSource::DELETE, Foam::endl(), Foam::Info, and topoSetSource::NEW.