Package rst.geometry¶
Not documented
Messages¶
Message BoundingBox3DFloat¶
-
class
rst.geometry.
BoundingBox3DFloat
¶ Bounding-box in 3D in general position and orientation.
The general bounding-box with dimensions
width
xdepth
xheight
is constructed by translating and rotating (viatransformation
) an axis-aligned bounding-box around its center of mass.For an axis-aligned version, see
AxisAlignedBoundingBox3DFloat
.Code author: Christian Emmerich <cemmeric@cor-lab.de>
Code author: Jan Moringen <jmoringe@techfak.uni-bielefeld.de>
-
transformation
¶ Type: rst.geometry.Pose
Transformation, consisting of translation and orientation, of the center of mass of the bounding-box.
-
width
¶ Type: FLOAT32
Unit: meter
The width (along the X axis) of the box.
-
depth
¶ Type: FLOAT32
Unit: meter
The depth (along the Y axis) of the box.
-
height
¶ Type: FLOAT32
Unit: meter
The height (along the Z axis) of the box.
-
message BoundingBox3DFloat {
/**
* Transformation, consisting of translation and orientation, of
* the center of mass of the bounding-box.
*/
required geometry.Pose transformation = 1;
/**
* The width (along the X axis) of the box.
*/
// @unit(meter)
required float width = 2;
/**
* The depth (along the Y axis) of the box.
*/
// @unit(meter)
required float depth = 3;
/**
* The height (along the Z axis) of the box.
*/
// @unit(meter)
required float height = 4;
}
Message Pose¶
-
class
rst.geometry.
Pose
¶ Represents the pose (translation and rotation) of something in a coordinate system.
Code author: Arne Nordmann <anordman@techfak.uni-bielefeld.de>
@create_collection
-
translation
¶ Type: rst.geometry.Translation
The translation of the object with respect to the origin of the coordinate system.
-
rotation
¶ Type: rst.geometry.Rotation
The rotation of the object at the position described by
translation
with respect to the coordinate system.
-
message Pose {
/**
* The translation of the object with respect to the origin of the
* coordinate system.
*/
required Translation translation = 1;
/**
* The rotation of the object at the position described by
* @ref .translation with respect to the coordinate system.
*/
required Rotation rotation = 2;
}
Message AxisAlignedBoundingBox3DFloat¶
-
class
rst.geometry.
AxisAlignedBoundingBox3DFloat
¶ An axis-aligned bounding-box in 3D.
The bounding-box is constructed by spanning at
left_front_bottom
a rectangular volume of lengthswidth
xdepth
xheight
along the positive directions of the X, Y and Z axis respectively.^ Z | | +----------------------+ ^ | / /| | / / | | / / |
height
| +----------------------+ | | | | | | | | + v | Y | | / ^ | ^ | | /depth
| / | |/ | / +----------------------+ v | /left_front_bottom
| / <width
> |/ +-----------------------------> XFor a bouding-box in general orientation (i.e. not axis-aligned) see
BoundingBox3DFloat
.Code author: Christian Emmerich <cemmeric@cor-lab.de>
Code author: Jan Moringen <jmoringe@techfak.uni-bielefeld.de>
@create_collection
-
left_front_bottom
¶ Type: rst.geometry.Translation
Coordinates of the bottom left front corner.
-
width
¶ Type: FLOAT32
Unit: meter
The width (along the X axis) of the box.
-
depth
¶ Type: FLOAT32
Unit: meter
The depth (along the Y axis) of the box.
-
height
¶ Type: FLOAT32
Unit: meter
The height (along the Z axis) of the box.
-
message AxisAlignedBoundingBox3DFloat {
/**
* Coordinates of the bottom left front corner.
*/
required geometry.Translation left_front_bottom = 1;
/**
* The width (along the X axis) of the box.
*/
// @unit(meter)
required float width = 2;
/**
* The depth (along the Y axis) of the box.
*/
// @unit(meter)
required float depth = 3;
/**
* The height (along the Z axis) of the box.
*/
// @unit(meter)
required float height = 4;
}
Message Rotation¶
-
class
rst.geometry.
Rotation
¶ Constraint:
.qw x .qw + .qx x .qx + .qy x .qy + .qz x .qz = 1
Cartesian 3-dimensional rotatory displacement or orientation.
The displacement or orientation (orientation being a rotation from an origin) is in world coordinates and expressed as unit quaternion (all-zero quaternion denotes an invalid orientation/rotation).
Code author: Arne Nordmann <anordman@cor-lab.uni-bielefeld.de>
@create_collection
-
qw
¶ Type: FLOAT64
Angle component of the quaternion.
-
qx
¶ Type: FLOAT64
Defines the orientation of the turning axis wrt. the X axis of the world (or the frame specified in
frame_id
).
-
qy
¶ Type: FLOAT64
Defines the orientation of the turning axis wrt. the Y axis of the world (or the frame specified in
frame_id
).
-
qz
¶ Type: FLOAT64
Defines the orientation of the turning axis wrt. the Y axis of the world (or the frame specified in
frame_id
).
-
frame_id
¶ Type: ASCII-STRING
Identifier for the coordinate frame of the rotation.
-
message Rotation {
/**
* Angle component of the quaternion.
*/
required double qw = 4;
/**
* Defines the orientation of the turning axis wrt. the X axis of
* the world (or the frame specified in @ref .frame_id).
*/
required double qx = 5;
/**
* Defines the orientation of the turning axis wrt. the Y axis of
* the world (or the frame specified in @ref .frame_id).
*/
required double qy = 6;
/**
* Defines the orientation of the turning axis wrt. the Y axis of
* the world (or the frame specified in @ref .frame_id).
*/
required double qz = 7;
/**
* Identifier for the coordinate frame of the rotation.
*/
optional string frame_id = 8;
}
Message Translation¶
-
class
rst.geometry.
Translation
¶ Cartesian 3-dimensional translatory displacement or position.
The displacement or position (position being translation from an origin) is expressed in world coordinates.
Code author: Arne Nordmann <anordman@cor-lab.uni-bielefeld.de>
@create_collection
-
x
¶ Type: FLOAT64
Unit: meter
Cartesian displacement along the x axis
-
y
¶ Type: FLOAT64
Unit: meter
Cartesian displacement along the y axis
-
z
¶ Type: FLOAT64
Unit: meter
Cartesian displacement along the z axis
-
frame_id
¶ Type: ASCII-STRING
Identifier for the coordinate frame of the rotation.
-
message Translation {
/**
* Cartesian displacement along the x axis
*/
// @unit(meter)
required double x = 1;
/**
* Cartesian displacement along the y axis
*/
// @unit(meter)
required double y = 2;
/**
* Cartesian displacement along the z axis
*/
// @unit(meter)
required double z = 3;
/**
* Identifier for the coordinate frame of the rotation.
*/
optional string frame_id = 8;
}
Message BoundingBox¶
-
class
rst.geometry.
BoundingBox
¶ Constraint:
.top_left.x < .image_width
Constraint:
.top_left.x + .width <= .image_width
Constraint:
.top_left.y < .image_height
Constraint:
.top_left.y + .height <= .image_height
A bounding box, which is associated to a raster image.
(0,0) Image +----------------------------------+ ^ | | |
top_left
| | +---------------+ ^ | | | | | | | |height
|image_height
| | | | | +---------------+ v | | <width
> | | | +----------------------------------+ v <image_width
>All values are in pixels and refer to the associated image.
Code author: Johannes Wienke <jwienke@techfak.uni-bielefeld.de>
@create_collection
-
top_left
¶ Type: rst.math.Vec2DInt
Unit: pixel
Coordinates of the top left corner.
-
width
¶ Type: UINT32
Unit: pixel
Width of the bounding box.
-
height
¶ Type: UINT32
Unit: pixel
Height of the bounding box.
-
image_width
¶ Type: UINT32
Unit: pixel
Width of the image the bounding box is based on.
-
image_height
¶ Type: UINT32
Unit: pixel
Height of the image the bounding box is based on.
-
message BoundingBox {
/**
* Coordinates of the top left corner.
*/
// @unit(pixel)
required math.Vec2DInt top_left = 1;
/**
* Width of the bounding box.
*/
// @unit(pixel)
required uint32 width = 2;
/**
* Height of the bounding box.
*/
// @unit(pixel)
required uint32 height = 3;
/**
* Width of the image the bounding box is based on.
*/
// @unit(pixel)
optional uint32 image_width = 4;
/**
* Height of the image the bounding box is based on.
*/
// @unit(pixel)
optional uint32 image_height = 5;
}