$darkmode
#include <object.hpp>
Public Types | |
| enum class | Type { Unknown , Static , Dynamic } |
| enum class | Class { Unknown , Pedestrian , Bike , Motorbike , Car , Truck , Trailer } |
Public Attributes | |
| int | id {-1} |
| ID of object, should be unique. | |
| double | exist_prob {1.0} |
| Object existence probability. | |
| Type | type {Type::Unknown} |
| Type of object. | |
| Class | classification {Class::Unknown} |
| Classification of object. | |
| Eigen::Isometry3d | pose {Eigen::Isometry3d()} |
| Pose in [m] and [rad]. | |
| Eigen::Vector3d | dimensions {Eigen::Vector3d::Zero()} |
| Dimensions in [m]. | |
| Eigen::Vector3d | cog_offset {Eigen::Vector3d::Zero()} |
| Center of geometry offset in [m]. | |
| Eigen::Vector3d | velocity {Eigen::Vector3d::Zero()} |
| Absolute velocity in [m/s]. | |
| Eigen::Vector3d | acceleration {Eigen::Vector3d::Zero()} |
| Absolute acceleration in [m/(s*s)]. | |
| Eigen::Vector3d | angular_velocity {Eigen::Vector3d::Zero()} |
| Angular velocity in [rad/s]. | |
Friends | |
| void | to_json (fable::Json &j, const Object &o) |
Object represents an object in 3D space.
An object is a 3D bounding box with velocity, angular velocity, position, orientation, and acceleration.
Note: It is a POD and therefore nothing should inherit from it.
Approximate size of Object is: 168 bytes
TODO(ben): In one documentation from Eigen that I read, Eigen objects should not be copied, but passed by reference. If there is substance to this claim, then that would mean that an Object should also only be created on the heap. I have a hard time believing this, but maybe it's worth investigating.