iLab Neuromorphic Robotics Toolkit
0.1
|
#include <nrt/Graphics/Shapes.H>
A set of textures to be used later by Brush objects.
To avoid sending over and over texture maps, we handle textures as follows: First register new textures by name by sending a single Texture message. Then, create Brush objects that use that name and the texture index under that name to use a registered texture. You can have multiple textures associated with a name; for example, if a robot model needs 100 textures, you can send them all in one message here, then it is assumed that you will remember which texture number you want to slap onto each different part of your robot (e.g., number 0 for torso, 1 for left arm, etc).
Public Member Functions | |
Textures (std::string const &name_="Unknown", std::vector< nrt::Image< nrt::PixRGB< nrt::byte > > > const &textures_={}) | |
Constructor from a bunch of RGB textures. | |
virtual | ~Textures () |
Virtual destructor for safe inheritance. | |
virtual void | render (nrt::graphics::ShapeRenderer &sr) const |
Render this shape into a ShapeRenderer (e.g., OpenGL window) | |
template<class Archive > | |
void | serialize (Archive &ar) |
Serialization. | |
![]() | |
Shape (Eigen::Affine3f const &frame_=Eigen::Affine3f::Identity(), nrt::Duration const &lifetime_=nrt::forev(), nrt::graphics::Pen const &pen_=nrt::graphics::Pen(), nrt::graphics::Brush const &brush_=nrt::graphics::Brush()) | |
Constructor using a lifetime duration. | |
Shape (Eigen::Affine3f const &frame_, nrt::Time const &endtime_, nrt::graphics::Pen const &pen_=nrt::graphics::Pen(), nrt::graphics::Brush const &brush_=nrt::graphics::Brush()) | |
Constructor using an end-of-life time point. | |
virtual | ~Shape () |
Virtual destructor for safe inheritance. | |
bool | expired () const |
Returns true if this shape is past its lifetime. | |
template<class Archive > | |
void | serialize (Archive &ar) |
Serialization. | |
Protected Attributes | |
std::string | name |
unique name for a collection of textures | |
std::vector< nrt::Image < nrt::PixRGB< nrt::byte > > > | textures |
Our textures. | |
![]() | |
Eigen::Affine3f | frame |
Coordinate frame of this shape. | |
nrt::Time | endtime |
Time after which this shape should be discarded. | |
nrt::graphics::Pen | pen |
Pen to use to draw edges. | |
nrt::graphics::Brush | brush |
Brush to use to draw surfaces. | |
Additional Inherited Members | |
![]() | |
bool | prerender (nrt::graphics::ShapeRenderer &sr) const |
Set frame, pen, brush, etc, return false if dead. | |
void | postrender (nrt::graphics::ShapeRenderer &sr) const |
End rendering of a given shape. | |