Height map collision. More...
#include <BulletHeightmapShape.hh>
Inherits HeightmapShape.
Public Types | |
enum | EntityType { BASE = 0x00000000, ENTITY = 0x00000001, MODEL = 0x00000002, LINK = 0x00000004, COLLISION = 0x00000008, LIGHT = 0x00000010, VISUAL = 0x00000020, JOINT = 0x00000040, BALL_JOINT = 0x00000080, HINGE2_JOINT = 0x00000100, HINGE_JOINT = 0x00000200, SLIDER_JOINT = 0x00000400, SCREW_JOINT = 0x00000800, UNIVERSAL_JOINT = 0x00001000, GEARBOX_JOINT = 0x00002000, FIXED_JOINT = 0x00004000, ACTOR = 0x00008000, SHAPE = 0x00010000, BOX_SHAPE = 0x00020000, CYLINDER_SHAPE = 0x00040000, HEIGHTMAP_SHAPE = 0x00080000, MAP_SHAPE = 0x00100000, MULTIRAY_SHAPE = 0x00200000, RAY_SHAPE = 0x00400000, PLANE_SHAPE = 0x00800000, SPHERE_SHAPE = 0x01000000, MESH_SHAPE = 0x02000000, POLYLINE_SHAPE = 0x04000000, SENSOR_COLLISION = 0x10000000 } |
Unique identifiers for all entity types. More... | |
typedef float | HeightType |
height field type, float or double More... | |
Public Member Functions | |
BulletHeightmapShape (CollisionPtr _parent) | |
Constructor. More... | |
virtual | ~BulletHeightmapShape () |
Destructor. More... | |
void | AddChild (BasePtr _child) |
Add a child to this entity. More... | |
void | AddType (EntityType _type) |
Add a type specifier. More... | |
virtual double | ComputeVolume () const |
Documentation inherited. More... | |
void | FillHeightfield (std::vector< double > &heights) |
Version of FillHeightfield() for double vectors. More... | |
void | FillHeightfield (std::vector< float > &heights) |
Fills the heightmap data (float) into the vector by calling HeightmapData::FillHeightMap with heights. More... | |
void | FillHeights (msgs::Geometry &_msg) const |
Fill a geometry message with this shape's height data. More... | |
void | FillMsg (msgs::Geometry &_msg) |
Fill a geometry message with this shape's data. More... | |
virtual void | Fini () |
Finialize the object. More... | |
BasePtr | GetByName (const std::string &_name) |
Get by name. More... | |
BasePtr | GetChild (const std::string &_name) |
Get a child by name. More... | |
BasePtr | GetChild (unsigned int _i) const |
Get a child by index. More... | |
unsigned int | GetChildCount () const |
Get the number of children. More... | |
HeightType | GetHeight (int _x, int _y) const |
Get a height at a position. More... | |
uint32_t | GetId () const |
Return the ID of this entity. More... | |
common::Image | GetImage () const |
Return an image representation of the heightmap. More... | |
HeightType | GetMaxHeight () const |
Get the maximum height. More... | |
HeightType | GetMinHeight () const |
Get the minimum height. More... | |
std::string | GetName () const |
Return the name of the entity. More... | |
BasePtr | GetParent () const |
Get the parent. More... | |
int | GetParentId () const |
Return the ID of the parent. More... | |
bool | GetSaveable () const |
Get whether the object should be "saved", when the user selects to save the world to xml. More... | |
std::string | GetScopedName (bool _prependWorldName=false) const |
Return the name of this entity with the model scope model1::...::modelN::entityName. More... | |
virtual const sdf::ElementPtr | GetSDF () |
Get the SDF values for the object. More... | |
int | GetSubSampling () const |
Get the amount of subsampling. More... | |
unsigned int | GetType () const |
Get the full type definition. More... | |
std::string | GetURI () const |
Get the URI of the heightmap image. More... | |
const WorldPtr & | GetWorld () const |
Get the World this object is in. More... | |
bool | HasType (const EntityType &_t) const |
Returns true if this object's type definition has the given type. More... | |
virtual void | Init () |
Load the heightmap. More... | |
bool | IsSelected () const |
True if the entity is selected by the user. More... | |
virtual void | Load (sdf::ElementPtr _sdf) |
Load the heightmap. More... | |
bool | operator== (const Base &_ent) const |
Returns true if the entities are the same. More... | |
ignition::math::Vector3d | Pos () const |
Get the origin in world coordinate frame. More... | |
void | Print (const std::string &_prefix) |
Print this object to screen via gzmsg. More... | |
virtual void | ProcessMsg (const msgs::Geometry &_msg) |
Update the heightmap from a message. More... | |
void | RemoveChild (const std::string &_name) |
Remove a child by name. More... | |
void | RemoveChild (physics::BasePtr _child) |
Remove a child by pointer. More... | |
virtual void | RemoveChild (unsigned int _id) |
Remove a child from this entity. More... | |
void | RemoveChildren () |
Remove all children. More... | |
virtual void | Reset () |
Reset the object. More... | |
virtual void | Reset (Base::EntityType _resetType) |
Calls recursive Reset on one of the Base::EntityType's. More... | |
virtual ignition::math::Vector3d | Scale () const |
Get the scale of the shape. More... | |
ignition::math::Pose3d | SDFPoseRelativeToParent () const |
Get the SDF pose of the object according to the sdf 1.6 convention. More... | |
virtual std::optional< sdf::SemanticPose > | SDFSemanticPose () const |
Get the SDF SemanticPose object associated with the pose of this object. More... | |
void | SetHeight (int _x, int _y, float _value) |
Sets a height value at a position. More... | |
virtual void | SetName (const std::string &_name) |
Set the name of the entity. More... | |
void | SetParent (BasePtr _parent) |
Set the parent. More... | |
void | SetSaveable (bool _v) |
Set whether the object should be "saved", when the user selects to save the world to xml. More... | |
virtual void | SetScale (const ignition::math::Vector3d &_scale) |
Set the scale of the heightmap shape. More... | |
virtual bool | SetSelected (bool _show) |
Set whether this entity has been selected by the user through the gui. More... | |
void | SetWorld (const WorldPtr &_newWorld) |
Set the world this object belongs to. More... | |
ignition::math::Vector3d | Size () const |
Get the size in meters. More... | |
std::string | TypeStr () const |
Get the string name for the entity type. More... | |
virtual void | Update () |
Update the object. More... | |
virtual void | UpdateParameters (sdf::ElementPtr _sdf) |
Update the parameters using new sdf values. More... | |
common::URI | URI () const |
Return the common::URI of this entity. More... | |
ignition::math::Vector2i | VertexCount () const |
Return the number of vertices, which equals the size of the image used to load the heightmap. More... | |
Protected Member Functions | |
void | ComputeScopedName () |
Compute the scoped name of this object based on its parents. More... | |
virtual void | RegisterIntrospectionItems () |
Register items in the introspection service. More... | |
virtual void | UnregisterIntrospectionItems () |
Unregister items in the introspection service. More... | |
Protected Attributes | |
Base_V | children |
Children of this entity. More... | |
CollisionPtr | collisionParent |
This shape's collision parent. More... | |
bool | flipY |
True to flip the heights along the y direction. More... | |
common::HeightmapData * | heightmapData |
HeightmapData used to generate the heights. More... | |
std::vector< HeightType > | heights |
Lookup table of heights. More... | |
common::ImageHeightmap | img |
Image used to generate the heights. More... | |
std::vector< common::URI > | introspectionItems |
All the introspection items regsitered for this. More... | |
BasePtr | parent |
Parent of this entity. More... | |
ignition::math::Vector3d | scale = ignition::math::Vector3d::One |
This shape's scale;. More... | |
sdf::ElementPtr | sdf |
The SDF values for this object. More... | |
int | subSampling |
The amount of subsampling. Default is 2. More... | |
unsigned int | vertSize |
Size of the height lookup table. More... | |
WorldPtr | world |
Pointer to the world. More... | |
Height map collision.
|
inherited |
height field type, float or double
|
inherited |
Unique identifiers for all entity types.
Enumerator | |
---|---|
BASE | Base type. |
ENTITY | Entity type. |
MODEL | Model type. |
LINK | Link type. |
COLLISION | Collision type. |
LIGHT | Light type. |
VISUAL | Visual type. |
JOINT | Joint type. |
BALL_JOINT | BallJoint type. |
HINGE2_JOINT | Hing2Joint type. |
HINGE_JOINT | HingeJoint type. |
SLIDER_JOINT | SliderJoint type. |
SCREW_JOINT | ScrewJoint type. |
UNIVERSAL_JOINT | UniversalJoint type. |
GEARBOX_JOINT | GearboxJoint type. |
FIXED_JOINT | FixedJoint type. |
ACTOR | Actor type. |
SHAPE | Shape type. |
BOX_SHAPE | BoxShape type. |
CYLINDER_SHAPE | CylinderShape type. |
HEIGHTMAP_SHAPE | HeightmapShape type. |
MAP_SHAPE | MapShape type. |
MULTIRAY_SHAPE | MultiRayShape type. |
RAY_SHAPE | RayShape type. |
PLANE_SHAPE | PlaneShape type. |
SPHERE_SHAPE | SphereShape type. |
MESH_SHAPE | MeshShape type. |
POLYLINE_SHAPE | PolylineShape type. |
SENSOR_COLLISION | Indicates a collision shape used for sensing. |
|
explicit |
Constructor.
|
virtual |
Destructor.
|
inherited |
Add a child to this entity.
[in] | _child | Child entity. |
|
inherited |
Add a type specifier.
[in] | _type | New type to append to this objects type definition. |
|
protectedinherited |
Compute the scoped name of this object based on its parents.
|
virtualinherited |
Documentation inherited.
Reimplemented from Shape.
|
inherited |
Version of FillHeightfield() for double vectors.
|
inherited |
Fills the heightmap data (float) into the vector by calling HeightmapData::FillHeightMap with heights.
[in] | heights | height field to fill with data. |
|
inherited |
Fill a geometry message with this shape's height data.
[in] | _msg | Message to fill. |
|
virtualinherited |
Fill a geometry message with this shape's data.
Raw height data are not packed in this message to minimize packet size.
[in] | _msg | Message to fill. |
Implements Shape.
|
virtualinherited |
Finialize the object.
Reimplemented in ODEJoint, Model, Link, Joint, Collision, BulletJoint, SimbodyLink, Road, ODELink, ODECollision, Entity, DARTModel, DARTLink, DARTCollision, BulletLink, and Actor.
|
inherited |
Get by name.
[in] | _name | Get a child (or self) object by name |
|
inherited |
Get a child by name.
[in] | _name | Name of the child. |
|
inherited |
Get a child by index.
[in] | _i | Index of the child to retreive. |
|
inherited |
Get the number of children.
|
inherited |
Get a height at a position.
[in] | _x | X position. |
[in] | _y | Y position. |
|
inherited |
Return the ID of this entity.
This id is unique.
|
inherited |
Return an image representation of the heightmap.
|
inherited |
Get the maximum height.
|
inherited |
Get the minimum height.
|
inherited |
Return the name of the entity.
|
inherited |
Get the parent.
|
inherited |
Return the ID of the parent.
|
inherited |
Get whether the object should be "saved", when the user selects to save the world to xml.
|
inherited |
Return the name of this entity with the model scope model1::...::modelN::entityName.
[in] | _prependWorldName | True to prended the returned string with the world name. The result will be world::model1::...::modelN::entityName. |
|
virtualinherited |
|
inherited |
Get the amount of subsampling.
|
inherited |
Get the full type definition.
|
inherited |
Get the URI of the heightmap image.
|
inherited |
|
inherited |
Returns true if this object's type definition has the given type.
[in] | _t | Type to check. |
|
virtual |
Load the heightmap.
Reimplemented from HeightmapShape.
|
inherited |
True if the entity is selected by the user.
|
virtualinherited |
|
inherited |
Returns true if the entities are the same.
Checks only the name.
[in] | _ent | Base object to compare with. |
|
inherited |
Get the origin in world coordinate frame.
|
inherited |
Print this object to screen via gzmsg.
[in] | _prefix | Usually a set of spaces. |
|
virtualinherited |
|
protectedvirtualinherited |
|
inherited |
Remove a child by name.
[in] | _name | Name of the child. |
|
inherited |
Remove a child by pointer.
[in] | _child | Pointer to the child. |
|
virtualinherited |
Remove a child from this entity.
[in] | _id | ID of the child to remove. |
|
inherited |
Remove all children.
|
virtualinherited |
|
virtualinherited |
Calls recursive Reset on one of the Base::EntityType's.
[in] | _resetType | The type of reset operation |
|
virtualinherited |
|
inherited |
Get the SDF pose of the object according to the sdf 1.6 convention.
This convention is that the pose of an element is relative to its parent XML element, except for joints, whose pose is relative to the child link.
|
virtualinherited |
|
inherited |
Sets a height value at a position.
[in] | _x | X position. |
[in] | _y | Y position. |
|
virtualinherited |
|
inherited |
Set the parent.
[in] | _parent | Parent object. |
|
inherited |
Set whether the object should be "saved", when the user selects to save the world to xml.
[in] | _v | Set to True if the object should be saved. |
|
virtualinherited |
Set the scale of the heightmap shape.
[in] | _scale | Scale to set the heightmap shape to. |
Implements Shape.
Reimplemented in DARTHeightmapShape.
|
virtualinherited |
Set whether this entity has been selected by the user through the gui.
[in] | _show | True to set this entity as selected. |
Reimplemented in Link.
|
inherited |
Set the world this object belongs to.
This will also set the world for all children.
[in] | _newWorld | The new World this object is part of. |
|
inherited |
Get the size in meters.
|
inherited |
Get the string name for the entity type.
|
protectedvirtualinherited |
Unregister items in the introspection service.
|
inlinevirtualinherited |
Update the object.
Reimplemented in RayShape, Model, Joint, SimbodyRayShape, ODERayShape, ODEPolylineShape, ODEMeshShape, MultiRayShape, MeshShape, MapShape, Link, DARTRayShape, DARTModel, DARTMeshShape, BulletRayShape, and Actor.
|
virtualinherited |
|
inherited |
Return the common::URI of this entity.
The URI includes the world where the entity is contained and all the hierarchy of sub-entities that can compose this entity. E.g.: A link entity contains the name of the link and the model where the link is contained.
|
inherited |
Return the number of vertices, which equals the size of the image used to load the heightmap.
|
protectedinherited |
Children of this entity.
|
protectedinherited |
This shape's collision parent.
Referenced by BulletPlaneShape::CreatePlane(), ODEPlaneShape::CreatePlane(), ODEPlaneShape::SetAltitude(), BulletSphereShape::SetRadius(), ODESphereShape::SetRadius(), SimbodySphereShape::SetRadius(), BulletBoxShape::SetSize(), ODEBoxShape::SetSize(), SimbodyBoxShape::SetSize(), BulletCylinderShape::SetSize(), ODECylinderShape::SetSize(), and SimbodyCylinderShape::SetSize().
|
protectedinherited |
True to flip the heights along the y direction.
|
protectedinherited |
HeightmapData used to generate the heights.
|
protectedinherited |
Lookup table of heights.
|
protectedinherited |
Image used to generate the heights.
|
protectedinherited |
All the introspection items regsitered for this.
|
protectedinherited |
Parent of this entity.
|
protectedinherited |
This shape's scale;.
|
protectedinherited |
The SDF values for this object.
|
protectedinherited |
The amount of subsampling. Default is 2.
|
protectedinherited |
Size of the height lookup table.
|
protectedinherited |
Pointer to the world.