neurolots  0.3.4
NeuroLOTs
nlgeometry::Vertex Class Reference
+ Inheritance diagram for nlgeometry::Vertex:
+ Collaboration diagram for nlgeometry::Vertex:

Public Member Functions

NLGEOMETRY_API Vertex (const Eigen::Vector3f &position_, const Eigen::Vector3f &normal_=Eigen::Vector3f(0.0f, 0.0f, 0.0f), const Eigen::Vector3f &color_=Eigen::Vector3f(0.0f, 0.0f, 0.0f), const Eigen::Vector2f &uv_=Eigen::Vector2f(0.0f, 0.0f))
 Constructor. More...
 
NLGEOMETRY_API Vertex (const Vertex &other_)
 Copy constructor. More...
 
virtual NLGEOMETRY_API ~Vertex (void)
 Default destructor.
 
NLGEOMETRY_API const unsigned int & id (void) const
 Method to get the vertex id. More...
 
NLGEOMETRY_API Eigen::Vector3f & position (void)
 Method to get the vertex position. More...
 
NLGEOMETRY_API const Eigen::Vector3f & position (void) const
 
NLGEOMETRY_API Eigen::Vector3f & normal (void)
 Method to get the vertex normal. More...
 
NLGEOMETRY_API const Eigen::Vector3f & normal (void) const
 
NLGEOMETRY_API Eigen::Vector3f & color (void)
 Method to get the vertex color. More...
 
NLGEOMETRY_API const Eigen::Vector3f & color (void) const
 
NLGEOMETRY_API Eigen::Vector2f & uv (void)
 Method to get the vertex uv coordinates. More...
 
NLGEOMETRY_API const Eigen::Vector2f & uv (void) const
 
virtual NLGEOMETRY_API void displace (const Eigen::Vector3f &displacement_)
 Method to displace the vertex position. More...
 
virtual NLGEOMETRY_API void place (const Eigen::Vector3f &placement_)
 Method to place the vertex position. More...
 
virtual NLGEOMETRY_API void rotate (const Eigen::Matrix3f &rotation_)
 Method to rotate the vertex position and normal. More...
 
virtual NLGEOMETRY_API void rotate (const Eigen::Quaternion< float > &rotation_)
 Method to rotate the vertex position and normal. More...
 
virtual NLGEOMETRY_API void norm (const float norm_)
 Method to change the modulus of the position vector. More...
 
virtual NLGEOMETRY_API void normalize (const Eigen::Vector3f &)
 
virtual NLGEOMETRY_API void store (std::vector< float > &buffer_, const TAttribType attribType_)
 
NLGEOMETRY_API void store (Attribs &attribs_, const AttribsFormat format_)
 Method that store the vertex attribs (position, normal, color, uv coordinates) and assigns the vertex id. More...
 
virtual NLGEOMETRY_API VertexPtr clone (void)
 Method that return a cloned vertex. More...
 

Protected Attributes

unsigned int _id
 Vertex id.
 
Eigen::Vector3f _position
 Vertex position.
 
Eigen::Vector3f _normal
 Vertex normal.
 
Eigen::Vector3f _color
 Vertex color.
 
Eigen::Vector2f _uv
 Vertex uv coordinates.
 

Detailed Description

Definition at line 53 of file Vertex.h.

Constructor & Destructor Documentation

NLGEOMETRY_API nlgeometry::Vertex::Vertex ( const Eigen::Vector3f &  position_,
const Eigen::Vector3f &  normal_ = Eigen::Vector3f(0.0f, 0.0f, 0.0f),
const Eigen::Vector3f &  color_ = Eigen::Vector3f(0.0f, 0.0f, 0.0f),
const Eigen::Vector2f &  uv_ = Eigen::Vector2f(0.0f, 0.0f) 
)

Constructor.

Parameters
position_vertex position
normal_vertex normal
color_vertex color
uv_vertex uv coordinates
NLGEOMETRY_API nlgeometry::Vertex::Vertex ( const Vertex other_)

Copy constructor.

Parameters
other_vertex to be copied

Member Function Documentation

virtual NLGEOMETRY_API VertexPtr nlgeometry::Vertex::clone ( void  )
virtual

Method that return a cloned vertex.

Returns
a cloned vertex from the actual vertex

Reimplemented in nlgeometry::OrbitalVertex.

NLGEOMETRY_API Eigen::Vector3f& nlgeometry::Vertex::color ( void  )

Method to get the vertex color.

Returns
vertex color
virtual NLGEOMETRY_API void nlgeometry::Vertex::displace ( const Eigen::Vector3f &  displacement_)
virtual

Method to displace the vertex position.

Parameters
displacement_displacement applied to the vertex position

Reimplemented in nlgeometry::OrbitalVertex.

NLGEOMETRY_API const unsigned int& nlgeometry::Vertex::id ( void  ) const

Method to get the vertex id.

Returns
vertex id
virtual NLGEOMETRY_API void nlgeometry::Vertex::norm ( const float  norm_)
virtual

Method to change the modulus of the position vector.

Parameters
norm_new position vector modulus

Reimplemented in nlgeometry::OrbitalVertex.

NLGEOMETRY_API Eigen::Vector3f& nlgeometry::Vertex::normal ( void  )

Method to get the vertex normal.

Returns
vertex normal
virtual NLGEOMETRY_API void nlgeometry::Vertex::place ( const Eigen::Vector3f &  placement_)
virtual

Method to place the vertex position.

Parameters
placement_placement to place the vertex position

Reimplemented in nlgeometry::OrbitalVertex.

NLGEOMETRY_API Eigen::Vector3f& nlgeometry::Vertex::position ( void  )

Method to get the vertex position.

Returns
vertex position
virtual NLGEOMETRY_API void nlgeometry::Vertex::rotate ( const Eigen::Matrix3f &  rotation_)
virtual

Method to rotate the vertex position and normal.

Parameters
rotation_matrix with the rotation to be applied

Reimplemented in nlgeometry::OrbitalVertex.

virtual NLGEOMETRY_API void nlgeometry::Vertex::rotate ( const Eigen::Quaternion< float > &  rotation_)
virtual

Method to rotate the vertex position and normal.

Parameters
rotation_quaternion with the rotation to be applied

Reimplemented in nlgeometry::OrbitalVertex.

NLGEOMETRY_API void nlgeometry::Vertex::store ( Attribs &  attribs_,
const AttribsFormat  format_ 
)

Method that store the vertex attribs (position, normal, color, uv coordinates) and assigns the vertex id.

Parameters
attribs_reference to the vertex attribs to return
fomat_vector with the attribs format
NLGEOMETRY_API Eigen::Vector2f& nlgeometry::Vertex::uv ( void  )

Method to get the vertex uv coordinates.

Returns
vertex uv coordinates

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