8 #ifndef PROTOTYPE_LINK_ENTITY_H
9 #define PROTOTYPE_LINK_ENTITY_H
12 class CPrototypeLinkEntity;
15 #include <argos3/core/simulator/entity/embodied_entity.h>
16 #include <argos3/core/utility/math/convex_hull.h>
17 #include <argos3/core/utility/math/quaternion.h>
18 #include <argos3/core/utility/math/vector3.h>
20 #include <unordered_map>
30 using TVector = std::vector<CPrototypeLinkEntity*>;
64 "CPrototypeLinkEntity::GetConvexHullPoints(), id=\"" <<
66 "\": is not a convex hull.");
67 return m_vecConvexHullPoints;
72 "CPrototypeLinkEntity::GetConvexHullFaces(), id=\"" <<
74 "\": is not a convex hull.");
75 return m_vecConvexHullFaces;
97 std::vector<CVector3> m_vecConvexHullPoints;
98 std::vector<CConvexHull::SFace> m_vecConvexHullFaces;
#define ARGOS_ASSERT(condition, message)
When code is compiled in debug, this macro throws an ARGoS exception with the passed message if the s...
float Real
Collects all ARGoS code.
The namespace containing all the ARGoS related code.
ticpp::Element TConfigurationNode
The ARGoS configuration XML node.
Basic class for an entity that contains other entities.
std::vector< CEntity * > TVector
A vector of entities.
const std::string & GetId() const
Returns the id of this entity.
std::string GetContext() const
Returns the context of this entity.
An anchor related to the body of an entity.
virtual ~CPrototypeLinkEntity()
CPrototypeLinkEntity(CComposableEntity *pc_parent)
const CVector3 & GetExtents() const
std::vector< CPrototypeLinkEntity * >::const_iterator TVectorConstIterator
EGeometry GetGeometry() const
std::vector< CPrototypeLinkEntity * >::iterator TVectorIterator
const std::vector< CVector3 > & GetConvexHullPoints() const
const SAnchor & GetAnchor() const
virtual std::string GetTypeDescription() const
Returns a string label for this class.
const std::vector< CConvexHull::SFace > & GetConvexHullFaces() const
virtual void Init(TConfigurationNode &t_tree)
Initializes the state of the entity from the XML configuration tree.