Workspace 6.21.5
|
Defines a generic element class.
#include <Mesh/DataStructures/element.h>
Public Types | |
typedef std::vector< Node * > | ElementNodes |
Public Types inherited from NumberedObject | |
enum | { flag0 , flag1 , flag2 , flag3 , flag4 , flag5 , flag6 , flag7 , flag8 , flag9 , flag10 , flag11 , flag12 , flag13 , flag14 , flag15 } |
Public Member Functions | |
virtual | ~Element ()=default |
virtual void | attachElement ()=0 |
virtual void | attachNodes ()=0 |
virtual void | detachElement ()=0 |
Vector3d | getCentroid () const |
Node & | getNode (int index) const |
ElementNodes & | getNodes () |
const ElementNodes & | getNodes () const |
Node * | nodeAfter (const Node &node) const |
Node * | nodeBefore (const Node &node) const |
unsigned | numNodes () const |
void | setNode (int index, Node &n) |
void | setNodeStates (int index, const Vector3d &v) |
void | setNodeStates (int index, double v) |
void | setNodeStates (int index, int v) |
bool | usesNode (const Node &node) const |
Deprecated functions | |
bool | UsesNode (const Node &node) const |
bool | usesNode (long id) const |
bool | UsesNode (long id) const |
const ElementNodes & | GetNodes () const |
ElementNodes & | GetNodes () |
Node & | GetNode (int index) const |
void | SetNode (int index, Node &n) |
Node * | NodeBefore (const Node &node) const |
Node * | NodeAfter (const Node &node) const |
void | setNodeFlags (unsigned flag, bool b=true) |
void | SetNodeFlags (unsigned flag, bool b=true) |
void | SetNodeStates (int index, double v) |
void | SetNodeStates (int index, const Vector3d &v) |
Vector3d | GetCentroid () const |
Public Member Functions inherited from Entity | |
long | getCompID () const |
Get the ID of the component this entity belongs to. | |
void | setCompID (long compID) |
void | SetCompID (long compID) |
long | GetCompID () const |
Public Member Functions inherited from NumberedObject | |
NumberedObject (long ID) | |
Create an object with the specified ID and all flags except isValid not set. | |
void | clearFlag (unsigned flag) |
Clear flag. Do not use this to manipulate the isValid flag, since list managers are responsible for that. | |
void | copyFlags (const NumberedObject &t) |
long | getID () const |
long | getIndex () const |
bool | isFlagSet (unsigned flag) const |
bool | isValid () const |
void | setFlag (unsigned flag, bool b=true) |
Set flag to b. Do not use this to manipulate the isValid flag, since list managers are responsible for that. | |
void | setID (long ID) |
void | setIndex (long i) |
void | SetID (long ID) |
long | GetID () const |
void | SetIndex (long i) |
long | GetIndex () const |
bool | IsFlagSet (unsigned flag) const |
void | ClearFlag (unsigned flag) |
void | SetFlag (unsigned flag) |
void | setFlagTo (unsigned flag, bool b=true) |
void | SetFlagTo (unsigned flag, bool b=true) |
bool | IsValid () const |
Public Member Functions inherited from State | |
State (unsigned stateSize, unsigned integerDataSize) | |
~State () | |
void | addToIntegerData (int index, long val) |
void | addToState (int index, const Vector3d &v) |
void | addToState (int index, double val) |
void | copyIntegerData (int index, const State &s) |
void | copyState (int index, const State &s) |
void | copyStateVector (int index, const State &s) |
long | getIntegerData (int index) const |
double | getState (int index) const |
Vector3d | getStateVector (int index) const |
void | setIntegerData (int index, long val) |
void | setState (int index, const Vector3d &v) |
void | setState (int index, double val) |
void | CopyIntegerData (int index, const State &s) |
void | AddToIntegerData (int index, long val) |
void | SetIntegerData (int index, long val) |
long | GetIntegerData (int index) const |
void | CopyStateVector (int index, const State &s) |
void | CopyState (int index, const State &s) |
void | AddToState (int index, const Vector3d &v) |
void | AddToState (int index, double val) |
double | GetState (int index) const |
Vector3d | GetStateVector (int index) const |
void | SetState (int index, double val) |
void | SetState (int index, const Vector3d &v) |
Protected Member Functions | |
Element (long IDnum, long compIDnum, unsigned stateSize=0, unsigned integerDataSize=0) | |
Protected Member Functions inherited from Entity | |
Entity (long id, long compID) | |
Protected Attributes | |
ElementNodes | nodes_ |
Additional Inherited Members | |
Related Functions inherited from NumberedObject | |
int | bitMask (unsigned pos) |
typedef std::vector<Node*> ElementNodes |
|
protected |
IDnum | The ID of the element. |
compIDnum | The component ID of the element. |
stateSize | The state size for the element's state. |
integerDataSize | The size of the integer data array for the element's state. |
Constructs a null element with no nodes but with the state arrays of the specified sizes. Subclasses are responsible for setting the nodes.
|
virtualdefault |
|
pure virtual |
Implemented in Segment, ShellElement, and VolumeElement.
|
pure virtual |
Implemented in Segment, ShellElement, and VolumeElement.
|
pure virtual |
Implemented in Segment, ShellElement, and VolumeElement.
Vector3d getCentroid | ( | ) | const |
|
inline |
|
inline |
|
inline |
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inline |
|
inline |
|
inline |
node | Look for the node after this one in the node storage order. |
node | Look for the node before this one in the node storage order. |
|
inline |
|
inline |
index | The index of the node to replace for the element. |
n | The node to put at index. |
This function replaces the node at the specified index. It cannot be used to set the node at an index that has not yet been assigned. It is generally only used by low-level algorithms that modify elements in-place, which should generally be avoided anyway.
|
inline |
void setNodeFlags | ( | unsigned | flag, |
bool | b = true |
||
) |
|
inline |
void setNodeStates | ( | int | index, |
const Vector3d & | v | ||
) |
index | The node state index to be set. |
v | The value to set for the vector state at the specified index. |
For every node this element uses, set the vector state index to v.
|
inline |
void setNodeStates | ( | int | index, |
double | v | ||
) |
index | The node state index to be set. |
v | The value to set for the scalar state at the specified index. |
For every node this element uses, set the scalar state index to v.
|
inline |
void setNodeStates | ( | int | index, |
int | v | ||
) |
index | The node state index to be set. |
v | The value to set for the integer state at the specified index. |
For every node this element uses, set the integer state index to v.
bool usesNode | ( | const Node & | node | ) | const |
|
inline |
bool usesNode | ( | long | id | ) | const |
|
inline |
|
protected |