Concrete Ceti-Robot. More...
#include <ceti_robot.h>

Public Member Functions | |
| std::vector< tf2::Transform > & | bounds () override |
| CetiRobot (std::string &name, tf2::Transform tf, tf2::Vector3 size) | |
| Ceti robot constructor. More... | |
| bool | checkSingleObjectCollision (tf2::Transform &obj, std::string &robot_element, std::bitset< 3 > &panel_mask) override |
| Collsion calculation for single objects. More... | |
| bool | inCollision (CetiRobot *R) |
| Collsion calculation. More... | |
| std::string & | name () override |
| void | notify () override |
| Observer pattern. More... | |
| std::bitset< 3 > | observerMask () |
| std::vector< std::unique_ptr< AbstractRobotElementDecorator > > & | observers () |
| Get observers. More... | |
| void | reset () |
| Resset all robot properties. More... | |
| std::vector< tf2::Transform > & | robotRootBounds () override |
| tf2::Transform & | rootTf () override |
| void | setObserverMask (int i) |
| void | setObservers (std::vector< std::unique_ptr< AbstractRobotElementDecorator >> &observer) |
| Set observers. More... | |
| tf2::Vector3 & | size () override |
| tf2::Transform & | tf () override |
Public Member Functions inherited from AbstractRobot | |
| AbstractRobot (std::string name, tf2::Transform tf, tf2::Vector3 size) | |
| float | areaCalculation (tf2::Transform &A, tf2::Transform &B, tf2::Transform &C) |
| Triangle area calculator. More... | |
| void | rotate (float deg) |
| void | setTf (tf2::Transform &t) |
| void | size (tf2::Vector3 &s) |
| void | translate (tf2::Vector3 t) |
Protected Attributes | |
| std::bitset< 3 > | observer_mask_ |
| Bitmap to set observers. More... | |
| std::vector< std::unique_ptr< AbstractRobotElementDecorator > > | observers_ |
| Wing shared pointers. More... | |
Protected Attributes inherited from AbstractRobot | |
| std::vector< tf2::Transform > | bounds_ |
| Bounds of table top surface. More... | |
| std::string | name_ |
| Name of robot. More... | |
| std::vector< tf2::Transform > | robot_root_bounds_ |
| Bounds of robot arm as sub-region of table top. More... | |
| tf2::Transform | root_tf_ |
| Robot root on table top. More... | |
| tf2::Vector3 | size_ |
| Size of table. More... | |
| tf2::Transform | tf_ |
| Pose of table. More... | |
Concrete Ceti-Robot.
Refers especially to Robot-Arms mounted on a table of variable size.
Definition at line 14 of file ceti_robot.h.
| CetiRobot::CetiRobot | ( | std::string & | name, |
| tf2::Transform | tf, | ||
| tf2::Vector3 | size | ||
| ) |
Ceti robot constructor.
Initializes Ceti-Robot, calculates bounds out of arm and table size.
| name | std::string as Robot name, following the Robotarm([0-9]+) pattern |
| tf | Table center pose |
| size | Table size |
Definition at line 4 of file ceti_robot.cpp.
|
inlineoverridevirtual |
Implements AbstractRobot.
Definition at line 36 of file ceti_robot.h.
|
overridevirtual |
Collsion calculation for single objects.
Calculates collision between objects and robot_elemets, which are defined by the robot and its panels. Provides collision surface
| [IN] | obj pose to check |
| [IN] | panel_mask discribing panels to check |
| [OUT] | robot_element std::string describing the collision surface |
Implements AbstractRobot.
Definition at line 10 of file ceti_robot.cpp.
| bool CetiRobot::inCollision | ( | CetiRobot * | R | ) |
Collsion calculation.
Iterates over Robot to calculate area und check collisions by other robot bounds
| R | Robot which bounds are to check for collisions |
Definition at line 73 of file ceti_robot.cpp.
|
inlineoverridevirtual |
Implements AbstractRobot.
Definition at line 32 of file ceti_robot.h.
|
overridevirtual |
Observer pattern.
When changing pose, any observer calculates its new position in world frame
Implements AbstractRobot.
Definition at line 68 of file ceti_robot.cpp.
|
inline |
Definition at line 82 of file ceti_robot.h.
|
inline |
| void CetiRobot::reset | ( | ) |
Resset all robot properties.
Definition at line 63 of file ceti_robot.cpp.
|
inlineoverridevirtual |
Implements AbstractRobot.
Definition at line 37 of file ceti_robot.h.
|
inlineoverridevirtual |
Implements AbstractRobot.
Definition at line 35 of file ceti_robot.h.
|
inline |
Definition at line 83 of file ceti_robot.h.
|
inline |
|
inlineoverridevirtual |
Implements AbstractRobot.
Definition at line 34 of file ceti_robot.h.
|
inlineoverridevirtual |
Implements AbstractRobot.
Definition at line 33 of file ceti_robot.h.
|
protected |
Bitmap to set observers.
Definition at line 17 of file ceti_robot.h.
|
protected |
Wing shared pointers.
Definition at line 16 of file ceti_robot.h.