All Classes Namespaces Functions Variables Typedefs Enumerations Pages
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
OpenMBV::CoilSpring Class Reference

#include <coilspring.h>

Inheritance diagram for OpenMBV::CoilSpring:
OpenMBV::DynamicColoredBody OpenMBV::Body OpenMBV::Object fmatvec::Atom

Public Types

enum  Type { tube, scaledTube, polyline }
 
- Public Types inherited from OpenMBV::Body
enum  DrawStyle { filled, lines, points }
 
- Public Types inherited from fmatvec::Atom
enum  MsgType
 

Public Member Functions

std::string getClassName ()
 
template<typename T >
void append (const T &row)
 
int getRows ()
 
std::vector< double > getRow (int i)
 
void setSpringRadius (double radius)
 
double getSpringRadius ()
 
void setCrossSectionRadius (double radius)
 
double getCrossSectionRadius ()
 
void setScaleFactor (double scale)
 
double getScaleFactor ()
 
void setNumberOfCoils (double nr)
 
double getNumberOfCoils ()
 
void setNominalLength (double l)
 
double getNominalLength ()
 
void setType (Type t)
 
Type getType ()
 
virtual void initializeUsingXML (xercesc::DOMElement *element)
 
xercesc::DOMElement * writeXMLFile (xercesc::DOMNode *parent)
 
- Public Member Functions inherited from OpenMBV::DynamicColoredBody
void setMinimalColorValue (double min)
 
double getMinimalColorValue ()
 
void setMaximalColorValue (double max)
 
double getMaximalColorValue ()
 
void setDynamicColor (const double col)
 
double getDynamicColor ()
 
void setDiffuseColor (const std::vector< double > &hsv)
 
void setDiffuseColor (double h, double s, double v)
 
std::vector< double > getDiffuseColor ()
 
void setTransparency (double t)
 
double getTransparency ()
 
xercesc::DOMElement * writeXMLFile (xercesc::DOMNode *parent)
 
- Public Member Functions inherited from OpenMBV::Body
void setHDF5LinkTarget (const boost::shared_ptr< Body > &dest)
 
boost::shared_ptr< Body > & getHDF5LinkTarget ()
 
bool isHDF5Link ()
 
void setOutLine (bool ol)
 
bool getOutLine ()
 
void setShilouetteEdge (bool ol)
 
bool getShilouetteEdge ()
 
void setDrawMethod (DrawStyle ds)
 
DrawStyle getDrawMethod ()
 
- Public Member Functions inherited from OpenMBV::Object
void setEnable (bool enable)
 
bool getEnable ()
 
void setBoundingBox (bool bbox)
 
bool getBoundingBox ()
 
void setName (const std::string &name_)
 
std::string getName ()
 
virtual std::string getFullName (bool includingFileName=false, bool stopAtSeparateFile=false)
 
boost::shared_ptr< GroupgetSeparateGroup ()
 
boost::shared_ptr< GroupgetTopLevelGroup ()
 
boost::weak_ptr< GroupgetParent ()
 
H5::GroupBasegetHDF5Group ()
 
std::string getID () const
 
void setID (std::string ID_)
 
bool getSelected () const
 
void setSelected (bool selected_)
 
- Public Member Functions inherited from fmatvec::Atom
Atomoperator= (const Atom &)
 
void setMessageStreamActive (MsgType type, bool active)
 
void getMessageStream (MsgType type, boost::shared_ptr< bool > &a, boost::shared_ptr< std::ostream > &s)
 
void adoptMessageStreams (const Atom *src=NULL)
 
std::ostream & msg (MsgType type)
 
bool msgAct (MsgType type)
 

Protected Member Functions

void createHDF5File ()
 
void openHDF5File ()
 
- Protected Member Functions inherited from OpenMBV::Body
void terminate ()
 
- Protected Member Functions inherited from fmatvec::Atom
 Atom (const Atom &src)
 

Protected Attributes

H5::VectorSerie< double > * data
 
double springRadius
 
double crossSectionRadius
 
double scaleFactor
 
double numberOfCoils
 
double nominalLength
 
Type type
 
- Protected Attributes inherited from OpenMBV::DynamicColoredBody
double minimalColorValue
 
double maximalColorValue
 
double dynamicColor
 
std::vector< double > diffuseColor
 
double transparency
 
- Protected Attributes inherited from OpenMBV::Body
std::string outLineStr
 
std::string shilouetteEdgeStr
 
DrawStyle drawMethod
 
boost::shared_ptr< Bodyhdf5LinkBody
 
std::string hdf5LinkStr
 
- Protected Attributes inherited from OpenMBV::Object
std::string name
 
std::string enableStr
 
std::string boundingBoxStr
 
std::string ID
 
bool selected
 
boost::weak_ptr< Groupparent
 
H5::GroupBasehdf5Group
 

Friends

class ObjectFactory
 

Additional Inherited Members

- Static Public Member Functions inherited from OpenMBV::Object
static double getDouble (xercesc::DOMElement *e)
 
static std::vector< double > getVec (xercesc::DOMElement *e, unsigned int rows=0)
 
static std::vector
< std::vector< double > > 
getMat (xercesc::DOMElement *e, unsigned int rows=0, unsigned int cols=0)
 
static std::string numtostr (int i)
 
static std::string numtostr (double d)
 
template<class T >
static void addElementText (xercesc::DOMElement *parent, const MBXMLUtils::FQN &name, const T &value)
 
static void addElementText (xercesc::DOMElement *parent, const MBXMLUtils::FQN &name, double value, double def)
 
static void addElementText (xercesc::DOMElement *parent, const MBXMLUtils::FQN &name, const std::vector< double > &value)
 
static void addElementText (xercesc::DOMElement *parent, const MBXMLUtils::FQN &name, const std::vector< std::vector< double > > &value)
 
template<class T >
static void addAttribute (xercesc::DOMNode *node, std::string name, T value)
 
template<class T >
static void addAttribute (xercesc::DOMNode *node, std::string name, T value, std::string def)
 
- Static Public Member Functions inherited from fmatvec::Atom
static void setCurrentMessageStream (MsgType type, const boost::shared_ptr< bool > &a=boost::make_shared< bool >(true), const boost::shared_ptr< std::ostream > &s=boost::make_shared< std::ostream >(std::cout.rdbuf()))
 
static std::ostream & msgStatic (MsgType type)
 
static bool msgActStatic (MsgType type)
 
- Static Protected Member Functions inherited from OpenMBV::Object
static std::vector< double > toVector (std::string str)
 
static std::vector
< std::vector< double > > 
toMatrix (std::string str)
 

Detailed Description

A coil spring

HDF5-Dataset: The HDF5 dataset of this object is a 2D array of double precision values. Each row represents one dataset in time. A row consists of the following columns in order given in world frame: time, "from" point x, "from" point y, "from" point z, "to" point x, "to" point y, "to" point z, color

Member Function Documentation

std::string OpenMBV::CoilSpring::getClassName ( )
inlinevirtual

Retrun the class name

Reimplemented from OpenMBV::Body.

std::vector<double> OpenMBV::CoilSpring::getRow ( int  i)
inlinevirtual

Get row number i of the default data. NOTE: see also append()

Implements OpenMBV::Body.

int OpenMBV::CoilSpring::getRows ( )
inlinevirtual

Get the number of rows of the default data. Returns -1, if no default data is avaliable. NOTE: see also append()

Implements OpenMBV::Body.

void OpenMBV::CoilSpring::initializeUsingXML ( xercesc::DOMElement *  element)
virtual

Initializes the time invariant part of the object using a XML node

Reimplemented from OpenMBV::DynamicColoredBody.

void OpenMBV::CoilSpring::setCrossSectionRadius ( double  radius)
inline

The radius of the coil spring cross-section if type=tube or type=scaledTube. If type=polyline this parameter defines the point size of the polyline. If crossSectionRadius is less then 0, the cross-section radius is choosen automatically.

void OpenMBV::CoilSpring::setNominalLength ( double  l)
inline

Set the nominal length of the coil spring. This parameter is only usefull, if type=scaledTube: in this case the cross-section of the coil is an exact circle if the spring length is nominalLength. In all other cases the cross-section scales with the spring length and is getting a ellipse. If nominalLength is less than 0, the nominalLength is choosen automatically.

void OpenMBV::CoilSpring::setType ( Type  t)
inline

The type of the coil spring. "tube": The coil spring geometry is an extrusion of a circle along the spring center line; "scaledTube": The coil spring geometry is an extrusion of a circle along the spring center line with a spring length of nominalLength. This geometry is scaled as a whole for each other spring length. This type is much faster than "tube"; "polyline": The coil spring geometry is a polyline representing the the spring center line. this is the faster spring visualisation;


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

Impressum / Disclaimer / Datenschutz Generated by doxygen 1.8.5 Valid HTML