63#ifndef lumpedPointState_H
64#define lumpedPointState_H
125 mutable unique_ptr<tensorField> rotationPtr_;
130 void calcRotations()
const;
199 inline bool valid()
const;
202 inline bool empty()
const;
205 inline label
size()
const;
Enum is a wrapper around a list of names/values that represent particular enumeration (or int) values...
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
A class for handling file names.
The state of lumped points corresponds to positions and rotations.
const tensorField & rotations() const
The local-to-global transformation for each point.
lumpedPointState()
Default construct.
void writePlain(Ostream &os) const
Output as plain content.
inputFormatType
Input format types.
@ DICTIONARY
"dictionary" is the OpenFOAM dictionary format
@ PLAIN
"plain" is a simple ASCII format
bool degrees() const
Rotation angles in degrees.
bool valid() const
Has positions and consistent number of rotations?
label size() const
The number of points.
bool writeData(Ostream &os) const
Output as dictionary content.
static bool visUnused
Enable/disable visualization of unused points.
bool empty() const
If no points were specified.
quaternion::eulerOrder rotationOrder() const
The Euler-angle rotation order.
static scalar visLength
The length for visualization triangles.
static const Enum< inputFormatType > formatNames
Names for the input format types.
bool readData(Istream &is, const quaternion::eulerOrder rotOrder=quaternion::eulerOrder::ZXZ, const bool degrees=false)
Read input as dictionary content.
void operator=(const lumpedPointState &rhs)
Assignment operator.
void writeDict(Ostream &os) const
Output as dictionary content.
void writeVTP(const fileName &outputFile, const labelListList &lines=labelListList(), const labelList &pointIds=labelList::null()) const
Output points/rotations as VTK file for debugging/visualization.
const pointField & points() const
The points corresponding to mass centres.
bool readPlain(Istream &is, const quaternion::eulerOrder rotOrder=quaternion::eulerOrder::ZXZ, const bool degrees=false)
Read input as plain content.
void operator+=(const point &origin)
Shift points by specified origin.
virtual ~lumpedPointState()=default
Destructor.
void scalePoints(const scalar scaleFactor)
Scale points by given factor.
const vectorField & angles() const
The orientation of the points (mass centres)
eulerOrder
Euler-angle rotation order.
A class for managing temporary objects.
OBJstream os(runTime.globalPath()/outputName)
List< labelList > labelListList
A List of labelList.