47 #ifndef _MIRA_MODEL_GEOMETRY_H_ 48 #define _MIRA_MODEL_GEOMETRY_H_ 55 namespace mira {
namespace model {
106 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
108 template<
typename Reflector>
111 r.property(
"Size",
size,
"The size of the box");
136 template<
typename Reflector>
139 r.property(
"Radius",
radius,
"The radius of the cone");
140 r.property(
"Length",
length,
"The length of the cone");
165 template<
typename Reflector>
168 r.property(
"Radius",
radius,
"The radius of the cylinder");
169 r.property(
"Length",
length,
"The length of the cylinder");
193 template<
typename Reflector>
196 r.property(
"Radius",
radius,
"The radius of the sphere");
219 template<
typename Reflector>
222 r.property(
"Filename",
filename,
"The filename of the mesh");
223 r.property(
"Scale",
scale,
"The scale factor of the mesh", 1.0f);
247 template<
typename Reflector>
250 r.member(
"Polygon",
polygon,
"The polygon geometry");
void reflect(Reflector &r)
Definition: Geometry.h:248
void reflect(Reflector &r)
Definition: Geometry.h:194
virtual Box3f getBoundingBox(const RigidTransform3f &origin) const
Implementation of Geometry::getBoundingBox.
virtual Box3f getBoundingBox(const RigidTransform3f &origin) const =0
Computes the axis aligned bounding box of the geometry primitive depending on the pose of the primiti...
Size3f size
The size of the box.
Definition: Geometry.h:119
boost::shared_ptr< Box > BoxPtr
Definition: Geometry.h:122
virtual Polygon2f getFootprint(const RigidTransform3f &origin) const
Implementation of Geometry::getFootprint.
Cone representation The origin of the cone is located at the center of its base circle.
Definition: Geometry.h:132
float length
The length of the cone.
Definition: Geometry.h:149
virtual Box3f getBoundingBox(const RigidTransform3f &origin) const
Implementation of Geometry::getBoundingBox.
virtual Box3f getBoundingBox(const RigidTransform3f &origin) const
Implementation of Geometry::getBoundingBox.
virtual ~Geometry()
Definition: Geometry.h:69
float radius
The radius of the cone.
Definition: Geometry.h:148
float radius
The radius of the cylinder.
Definition: Geometry.h:177
void reflect(Reflector &r)
Definition: Geometry.h:166
virtual Box3f getBoundingBox(const RigidTransform3f &origin) const
Implementation of Geometry::getBoundingBox.
virtual Box3f getBoundingBox(const RigidTransform3f &origin) const
The polygon is 2D, hence its bounding box would be 2D too, which is still empty in 3D...
virtual Polygon2f getFootprint(const RigidTransform3f &origin) const
Implementation of Geometry::getFootprint.
#define MIRA_ABSTRACT_OBJECT(classIdentifier)
virtual Box3f getBoundingBox(const RigidTransform3f &origin) const
Implementation of Geometry::getBoundingBox.
virtual Polygon2f getFootprint(const RigidTransform3f &origin) const
Implementation of Geometry::getFootprint.
Polygon representation The vertices of the polygon are given relative to its origin.
Definition: Geometry.h:243
Base class for all geometric representations of a rigid model part (link).
Definition: Geometry.h:64
virtual Polygon2f getFootprint(const RigidTransform3f &origin) const
Implementation of Geometry::getFootprint.
boost::shared_ptr< Cylinder > CylinderPtr
Definition: Geometry.h:181
Spherical representation The origin of the sphere is at its center.
Definition: Geometry.h:189
boost::shared_ptr< Polygon > PolygonPtr
Definition: Geometry.h:265
float scale
The scale factor of the mesh.
Definition: Geometry.h:232
boost::shared_ptr< Geometry > GeometryPtr
pointer to a geometric representation
Definition: Geometry.h:93
#define MIRA_OBJECT(classIdentifier)
float length
The length of the cylinder.
Definition: Geometry.h:178
boost::shared_ptr< Mesh > MeshPtr
Definition: Geometry.h:235
EIGEN_MAKE_ALIGNED_OPERATOR_NEW void reflect(Reflector &r)
Definition: Geometry.h:109
Cylinder representation The origin is in the center of the cylinder.
Definition: Geometry.h:161
void reflect(Reflector &r)
Definition: Geometry.h:137
boost::shared_ptr< Cone > ConePtr
Definition: Geometry.h:152
Polygon2f polygon
The polygon geometry.
Definition: Geometry.h:262
boost::shared_ptr< Sphere > SpherePtr
Definition: Geometry.h:207
boost::geometry::model::ring< Point2f > Polygon2f
void reflect(Reflector &r)
Definition: Geometry.h:220
Box representation The box is axis aligned and its origin is at the center of the box...
Definition: Geometry.h:101
Mesh representation The vertices of the mesh are given relative to its origin.
Definition: Geometry.h:215
std::string filename
The filename of the mesh.
Definition: Geometry.h:231
virtual Polygon2f getFootprint(const RigidTransform3f &origin) const
Implementation of Geometry::getFootprint.
virtual Polygon2f getFootprint(const RigidTransform3f &origin) const
Implementation of Geometry::getFootprint.
float radius
The radius of the sphere.
Definition: Geometry.h:204
virtual Polygon2f getFootprint(const RigidTransform3f &origin) const =0
Computes the footprint of the geometry primitive depending on the pose of the primitive that is speci...