Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::fem::Element::Node Class Reference

Class that stores information required to define a node. More...

#include <itkFEMElementBase.h>

Inheritance diagram for itk::fem::Element::Node:

Inheritance graph
[legend]
Collaboration diagram for itk::fem::Element::Node:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Node Self
typedef FEMLightObject Superclass
typedef SelfPointer
typedef const SelfConstPointer
typedef double Float
typedef FEMPArray< SelfArrayType
typedef std::set< Element * > SetOfElements

Public Member Functions

virtual Baseclass::Pointer Clone () const
virtual int ClassID () const
 Node ()
 Node (Float x, Float y)
 Node (Float x, Float y, Float z)
const VectorTypeGetCoordinates (void) const
void SetCoordinates (const VectorType &coords)
virtual void ClearDegreesOfFreedom (void) const
virtual void Read (std::istream &f, void *info)
virtual void Write (std::ostream &f) const
DegreeOfFreedomIDType GetDegreeOfFreedom (unsigned int i) const
void SetDegreeOfFreedom (unsigned int i, DegreeOfFreedomIDType dof) const

Static Public Member Functions

Self::Pointer New ()

Public Attributes

SetOfElements m_elements

Static Public Attributes

const int CLID

Detailed Description

Class that stores information required to define a node.

A node can define a point in space and can hold an arbitrary number of coordinates and the DOFs. Since the only classes that use nodes are the elements, the node class is defined within an element base class.

Definition at line 137 of file itkFEMElementBase.h.


Member Typedef Documentation

typedef FEMPArray<Self> itk::fem::Element::Node::ArrayType
 

Array class that holds special pointers to the nodes. Definition at line 150 of file itkFEMElementBase.h.

typedef const Self* itk::fem::Element::Node::ConstPointer
 

Const pointer or SmartPointer to an object.

Reimplemented from itk::fem::FEMLightObject.

Definition at line 139 of file itkFEMElementBase.h.

typedef double itk::fem::Element::Node::Float
 

Floating point precision type. Definition at line 145 of file itkFEMElementBase.h.

typedef Self* itk::fem::Element::Node::Pointer
 

Pointer or SmartPointer to an object.

Reimplemented from itk::fem::FEMLightObject.

Definition at line 139 of file itkFEMElementBase.h.

typedef Node itk::fem::Element::Node::Self
 

Standard Self typedef.

Reimplemented from itk::fem::FEMLightObject.

Definition at line 139 of file itkFEMElementBase.h.

typedef std::set<Element*> itk::fem::Element::Node::SetOfElements
 

List of pointers to elements that use this node. External code is responsible for maintaining the list. Definition at line 225 of file itkFEMElementBase.h.

Referenced by ClearDegreesOfFreedom().

typedef FEMLightObject itk::fem::Element::Node::Superclass
 

Standard Superclass typedef.

Reimplemented from itk::fem::FEMLightObject.

Definition at line 139 of file itkFEMElementBase.h.


Constructor & Destructor Documentation

itk::fem::Element::Node::Node  )  [inline]
 

Default constructor Definition at line 165 of file itkFEMElementBase.h.

itk::fem::Element::Node::Node Float  x,
Float  y
[inline]
 

Create 2D node. Definition at line 170 of file itkFEMElementBase.h.

itk::fem::Element::Node::Node Float  x,
Float  y,
Float  z
[inline]
 

Create 3D node. Definition at line 176 of file itkFEMElementBase.h.


Member Function Documentation

virtual int itk::fem::Element::Node::ClassID  )  const [inline, virtual]
 

Virtual function to access the class ID

Implements itk::fem::FEMLightObject.

Definition at line 139 of file itkFEMElementBase.h.

virtual void itk::fem::Element::Node::ClearDegreesOfFreedom void   )  const [inline, virtual]
 

Definition at line 212 of file itkFEMElementBase.h.

References m_elements, and SetOfElements.

virtual Baseclass::Pointer itk::fem::Element::Node::Clone  )  const [virtual]
 

Create a new object from the existing one

Implements itk::fem::FEMLightObject.

const VectorType& itk::fem::Element::Node::GetCoordinates void   )  const [inline]
 

Return a reference to a vector that contains coordinates of this node. Definition at line 183 of file itkFEMElementBase.h.

DegreeOfFreedomIDType itk::fem::Element::Node::GetDegreeOfFreedom unsigned int  i  )  const [inline]
 

Get DOF IDs associated with this node. Definition at line 195 of file itkFEMElementBase.h.

References itk::fem::Element::DegreeOfFreedomIDType.

Self::Pointer itk::fem::Element::Node::New void   )  [inline, static]
 

Object creation in an itk compatible way Definition at line 139 of file itkFEMElementBase.h.

virtual void itk::fem::Element::Node::Read std::istream &  f,
void *  info
[virtual]
 

Read an object data from input stream. Call this member to initialize the data members in the current object by reading data from provided input stream. Derived classes should first call the the parent's read function, to initialize the data from parent. Note that you must manually create the object of desired type using the FEMObjectFactory before you can call read function (this is pretty obvious). In this class only the global number is read from file. Derived classes may require some additional info in order to perform the reading. Pack this info in an object and pass a pointer to it in the info parameter. If you need runtime typechecking, use a polymorphic class and dynamic_cast operator inside the implementation of Read.

Reimplemented from itk::fem::FEMLightObject.

void itk::fem::Element::Node::SetCoordinates const VectorType coords  )  [inline]
 

Set coordinates of a node. Definition at line 189 of file itkFEMElementBase.h.

void itk::fem::Element::Node::SetDegreeOfFreedom unsigned int  i,
DegreeOfFreedomIDType  dof
const [inline]
 

Set DOF IDs associated with this node. Definition at line 205 of file itkFEMElementBase.h.

virtual void itk::fem::Element::Node::Write std::ostream &  f  )  const [virtual]
 

Write an object to the output stream. Call this member to write the data members in the current object to the output stream. Here we also need to know which derived class we actually are, so that we can write the class name. The class name is obtained by calling the virtual ClassID() member function and passing the result to the FEMObjectFactory.

Implementations of Write member funtion in derived classes should first call the parent's implementation of Write and finaly write whatever they need.

Reimplemented from itk::fem::FEMLightObject.


Member Data Documentation

const int itk::fem::Element::Node::CLID [static]
 

Class ID for FEM object factory Definition at line 139 of file itkFEMElementBase.h.

SetOfElements itk::fem::Element::Node::m_elements [mutable]
 

Definition at line 226 of file itkFEMElementBase.h.

Referenced by ClearDegreesOfFreedom().


The documentation for this class was generated from the following file:
Generated at Sun Apr 1 03:21:06 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000