Go to the documentation of this file.
28 #include <VirtualRobot/VirtualRobot.h>
30 #include <RobotAPI/interface/core/FramedPoseBase.h>
45 class LinkedCoordinate;
49 class SharedRobotInterface;
84 virtual public FramedDirectionBase,
90 FramedDirection(
const Eigen::Vector3f& vec,
const std::string& frame,
const std::string& agent);
97 void changeFrame(
const VirtualRobot::RobotPtr& robot,
const std::string& newFrame);
98 void changeFrame(
const VirtualRobot::Robot& robot,
const std::string& newFrame);
101 void changeToGlobal(
const VirtualRobot::RobotPtr& referenceRobot);
107 Eigen::Vector3f
toGlobalEigen(
const VirtualRobot::RobotPtr& referenceRobot)
const;
108 Eigen::Vector3f
toGlobalEigen(
const VirtualRobot::Robot& referenceRobot)
const;
113 Eigen::Vector3f
toRootEigen(
const VirtualRobot::RobotPtr& referenceRobot)
const;
114 Eigen::Vector3f
toRootEigen(
const VirtualRobot::Robot& referenceRobot)
const;
118 VariantDataClassPtr
clone(
const Ice::Current&
c = Ice::emptyCurrent)
const override;
119 std::string
output(
const Ice::Current&
c = Ice::emptyCurrent)
const override;
121 bool validate(
const Ice::Current&
c = Ice::emptyCurrent)
override;
126 void serialize(
const armarx::ObjectSerializerBasePtr& serializer, const ::Ice::Current& = Ice::emptyCurrent)
const override;
127 void deserialize(
const armarx::ObjectSerializerBasePtr& serializer, const ::Ice::Current& = Ice::emptyCurrent)
override;
130 static Eigen::Matrix4f __GetRotationBetweenFrames(
const std::string& oldFrame,
const std::string& newFrame,
const VirtualRobot::Robot& robotState);
143 virtual public FramedPositionBase,
148 FramedPosition(
const Eigen::Vector3f&,
const std::string& frame,
const std::string& agent);
158 void changeFrame(
const VirtualRobot::RobotPtr& referenceRobot,
const std::string& newFrame);
159 void changeFrame(
const VirtualRobot::Robot& referenceRobot,
const std::string& newFrame);
161 void changeToGlobal(
const VirtualRobot::RobotPtr& referenceRobot);
167 Eigen::Vector3f
toGlobalEigen(
const VirtualRobot::RobotPtr& referenceRobot)
const;
168 Eigen::Vector3f
toGlobalEigen(
const VirtualRobot::Robot& referenceRobot)
const;
173 Eigen::Vector3f
toRootEigen(
const VirtualRobot::RobotPtr& referenceRobot)
const;
174 Eigen::Vector3f
toRootEigen(
const VirtualRobot::Robot& referenceRobot)
const;
178 VariantDataClassPtr
clone(
const Ice::Current&
c = Ice::emptyCurrent)
const override;
179 std::string
output(
const Ice::Current&
c = Ice::emptyCurrent)
const override;
181 bool validate(
const Ice::Current&
c = Ice::emptyCurrent)
override;
186 void serialize(
const armarx::ObjectSerializerBasePtr& serializer, const ::Ice::Current& = Ice::emptyCurrent)
const override;
187 void deserialize(
const armarx::ObjectSerializerBasePtr& serializer, const ::Ice::Current& = Ice::emptyCurrent)
override;
200 virtual public FramedOrientationBase,
216 VariantDataClassPtr
clone(
const Ice::Current&
c = Ice::emptyCurrent)
const override;
217 std::string
output(
const Ice::Current&
c = Ice::emptyCurrent)
const override;
219 bool validate(
const Ice::Current&
c = Ice::emptyCurrent)
override;
222 void changeFrame(
const VirtualRobot::RobotPtr& referenceRobot,
const std::string& newFrame);
223 void changeFrame(
const VirtualRobot::Robot& referenceRobot,
const std::string& newFrame);
225 void changeToGlobal(
const VirtualRobot::RobotPtr& referenceRobot);
243 void serialize(
const armarx::ObjectSerializerBasePtr& serializer, const ::Ice::Current& = Ice::emptyCurrent)
const override;
244 void deserialize(
const armarx::ObjectSerializerBasePtr& serializer, const ::Ice::Current& = Ice::emptyCurrent)
override;
259 virtual public FramedPoseBase,
267 FramedPose(
const armarx::Vector3BasePtr pos,
const armarx::QuaternionBasePtr ori,
const std::string& frame,
const std::string& agent);
276 VariantDataClassPtr
clone(
const Ice::Current&
c = Ice::emptyCurrent)
const override;
278 std::string
output(
const Ice::Current&
c = Ice::emptyCurrent)
const override;
282 bool validate(
const Ice::Current&
c = Ice::emptyCurrent)
override;
285 void changeFrame(
const VirtualRobot::RobotPtr& referenceRobot,
const std::string& newFrame);
286 void changeFrame(
const VirtualRobot::Robot& referenceRobot,
const std::string& newFrame);
288 void changeToGlobal(
const VirtualRobot::RobotPtr& referenceRobot);
303 FramedPosePtr toFrame(
const VirtualRobot::RobotPtr& referenceRobot,
const std::string& newFrame)
const;
304 FramedPosePtr toFrame(
const VirtualRobot::Robot& referenceRobot,
const std::string& newFrame)
const;
318 void serialize(
const armarx::ObjectSerializerBasePtr& serializer, const ::Ice::Current& = Ice::emptyCurrent)
const override;
319 void deserialize(
const armarx::ObjectSerializerBasePtr& serializer, const ::Ice::Current& = Ice::emptyCurrent)
override;
327 extern template class ::IceInternal::Handle< ::armarx::FramedPose>;
328 extern template class ::IceInternal::Handle< ::armarx::FramedPosition>;
329 extern template class ::IceInternal::Handle< ::armarx::FramedDirection>;
330 extern template class ::IceInternal::Handle< ::armarx::FramedOrientation>;
std::string output(const Ice::Current &c=Ice::emptyCurrent) const override
void serialize(const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) const override
const VariantTypeId Float
void serialize(const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) const override
std::string getFrame() const
FramedPosition & operator=(const armarx::FramedPosition &other)
VariantTypeId getType(const Ice::Current &c=Ice::emptyCurrent) const override
std::string getFrame() const
static VirtualRobot::LinkedCoordinate createLinkedCoordinate(const VirtualRobot::RobotPtr &virtualRobot, const FramedPositionPtr &position, const FramedOrientationPtr &orientation)
FramedPosePtr toFrame(const SharedRobotInterfacePrx &referenceRobot, const std::string &newFrame) const
VariantDataClassPtr clone(const Ice::Current &c=Ice::emptyCurrent) const override
Eigen::Matrix4f toFrameEigen(const SharedRobotInterfacePrx &referenceRobot, const std::string &newFrame) const
const std::string GlobalFrame
FramedOrientation & operator=(const FramedOrientation &)=default
Ice::ObjectPtr ice_clone() const override
Eigen::Vector3f toRootEigen(const SharedRobotInterfacePrx &referenceRobot) const
VariantTypeId getType(const Ice::Current &c=Ice::emptyCurrent) const override
friend bool operator==(const FramedPose &pose1, const FramedPose &pose2)
Eigen::Vector3f toRootEigen(const SharedRobotInterfacePrx &referenceRobot) const
friend std::ostream & operator<<(std::ostream &stream, const FramedDirection &rhs)
FramedOrientationPtr toRootFrame(const SharedRobotInterfacePrx &referenceRobot) const
FramedPosePtr toGlobal(const SharedRobotInterfacePrx &referenceRobot) const
VariantTypeId getType(const Ice::Current &c=Ice::emptyCurrent) const override
Eigen::Vector3f toGlobalEigen(const SharedRobotInterfacePrx &referenceRobot) const
Ice::ObjectPtr ice_clone() const override
std::string output(const Ice::Current &c=Ice::emptyCurrent) const override
void deserialize(const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) override
FramedDirectionPtr toRootFrame(const SharedRobotInterfacePrx &referenceRobot) const
std::string output(const Ice::Current &c=Ice::emptyCurrent) const override
FramedOrientationPtr toGlobal(const SharedRobotInterfacePrx &referenceRobot) const
VariantDataClassPtr clone(const Ice::Current &c=Ice::emptyCurrent) const override
bool validate(const Ice::Current &c=Ice::emptyCurrent) override
Eigen::Vector3f toGlobalEigen(const SharedRobotInterfacePrx &referenceRobot) const
void serialize(const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) const override
static FramedDirectionPtr ChangeFrame(const VirtualRobot::RobotPtr &robot, const FramedDirection &framedVec, const std::string &newFrame)
Ice::ObjectPtr ice_clone() const override
const std::string MapFrame
Eigen::Matrix3f toGlobalEigen(const SharedRobotInterfacePrx &referenceRobot) const
::IceInternal::ProxyHandle< ::IceProxy::armarx::SharedRobotInterface > SharedRobotInterfacePrx
std::string output(const Ice::Current &c=Ice::emptyCurrent) const override
FramedDirectionPtr toGlobal(const SharedRobotInterfacePrx &referenceRobot) const
FramedPositionPtr getPosition() const
FramedPose & operator=(const armarx::FramedPose &)=default
Eigen::Matrix4f toGlobalEigen(const SharedRobotInterfacePrx &referenceRobot) const
void changeToGlobal(const SharedRobotInterfacePrx &referenceRobot)
bool validate(const Ice::Current &c=Ice::emptyCurrent) override
The FramedPosition class.
void serialize(const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) const override
bool validate(const Ice::Current &c=Ice::emptyCurrent) override
bool validate(const Ice::Current &c=Ice::emptyCurrent) override
std::string getFrame() const
const std::string OdometryFrame
void changeToGlobal(const SharedRobotInterfacePrx &referenceRobot)
The FramedOrientation class.
void changeFrame(const SharedRobotInterfacePrx &referenceRobot, const std::string &newFrame)
Vertex source(const detail::edge_base< Directed, Vertex > &e, const PCG &)
VariantTypeId getType(const Ice::Current &c=Ice::emptyCurrent) const override
VariantDataClassPtr clone(const Ice::Current &c=Ice::emptyCurrent) const override
friend std::ostream & operator<<(std::ostream &stream, const FramedPosition &rhs)
Eigen::Matrix4f toRootEigen(const SharedRobotInterfacePrx &referenceRobot) const
FramedPositionPtr toRootFrame(const SharedRobotInterfacePrx &referenceRobot) const
double v(double t, double v0, double a0, double j)
MatrixXX< 3, 3, float > Matrix3f
MatrixXX< 4, 4, float > Matrix4f
void changeToGlobal(const SharedRobotInterfacePrx &referenceRobot)
FramedDirection is a 3 dimensional direction vector with a reference frame. The reference frame can b...
FramedOrientationPtr getOrientation() const
FramedDirection & operator=(const FramedDirection &)=default
friend std::ostream & operator<<(std::ostream &stream, const FramedPose &rhs)
FramedPosePtr toRootFrame(const SharedRobotInterfacePrx &referenceRobot) const
friend std::ostream & operator<<(std::ostream &stream, const FramedOrientation &rhs)
std::shared_ptr< Object > ObjectPtr
std::string getFrame() const
void changeFrame(const VirtualRobot::RobotPtr &robot, const std::string &newFrame)
void changeToGlobal(const SharedRobotInterfacePrx &referenceRobot)
friend bool operator!=(const FramedPose &pose1, const FramedPose &pose2)
Ice::ObjectPtr ice_clone() const override
VariantDataClassPtr clone(const Ice::Current &c=Ice::emptyCurrent) const override
FramedPositionPtr toGlobal(const SharedRobotInterfacePrx &referenceRobot) const
void deserialize(const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) override
Eigen::Matrix3f toRootEigen(const SharedRobotInterfacePrx &referenceRobot) const
void deserialize(const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) override
This file offers overloads of toIce() and fromIce() functions for STL container types.
static VariantTypeId addTypeName(const std::string &typeName)
Register a new type for the use in a Variant.
void changeFrame(const SharedRobotInterfacePrx &referenceRobot, const std::string &newFrame)
void changeFrame(const SharedRobotInterfacePrx &referenceRobot, const std::string &newFrame)
void deserialize(const armarx::ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) override