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;
float Real
Collects all ARGoS code.
#define ARGOS_ASSERT(condition, message)
When code is compiled in debug, this macro throws an ARGoS exception with the passed message if the s...
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.
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 std::vector< CVector3 > & GetConvexHullPoints() const
const CVector3 & GetExtents() const
std::vector< CPrototypeLinkEntity * >::const_iterator TVectorConstIterator
const SAnchor & GetAnchor() const
EGeometry GetGeometry() const
std::vector< CPrototypeLinkEntity * >::iterator TVectorIterator
const std::vector< CConvexHull::SFace > & GetConvexHullFaces() const
virtual std::string GetTypeDescription() const
Returns a string label for this class.
virtual void Init(TConfigurationNode &t_tree)
Initializes the state of the entity from the XML configuration tree.
std::vector< CPrototypeLinkEntity * > TVector