geolib2
|
Namespaces | |
io | |
Classes | |
class | Box |
struct | CompareVec3i |
class | CompositeShape |
A geometric description of a shape as a union of other shapes. More... | |
class | DefaultRenderResult |
class | DepthCamera |
class | HeightMap |
A geometric description of a Heightmap using a quad tree. More... | |
class | HeightMapNode |
class | LaserRangeFinder |
class | LineSegment |
class | Mat2T |
class | Mat3T |
class | Matrix3x3 |
class | Mesh |
class | Octree |
class | OctreeNode |
class | QuaternionT |
struct | RasterizeResult |
class | Ray |
class | RenderOptions |
class | RenderResult |
class | serialization |
class | Shape |
A geometric description of a shape. More... | |
class | Transform |
class | Transform2T |
class | Transform3T |
class | Triangle |
struct | TriangleI |
class | Vec2T |
class | Vec3T |
class | Vector3 |
class | visualization |
Typedefs | |
typedef std::shared_ptr< const Box > | BoxConstPtr |
typedef std::shared_ptr< Box > | BoxPtr |
typedef std::shared_ptr< const CompositeShape > | CompositeShapeConstPtr |
typedef std::shared_ptr< CompositeShape > | CompositeShapePtr |
typedef geo::LineSegment | LS |
typedef Mat2T< real > | Mat2 |
typedef Mat2T< double > | Mat2d |
typedef Mat2T< float > | Mat2f |
typedef Mat2T< int > | Mat2i |
typedef Mat2T< unsigned int > | Mat2u |
typedef Mat3T< real > | Mat3 |
typedef Mat3T< double > | Mat3d |
typedef Mat3T< float > | Mat3f |
typedef Mat3T< int > | Mat3i |
typedef Mat3T< unsigned int > | Mat3u |
typedef Mat3 | Matrix3 |
typedef std::shared_ptr< const Octree > | OctreeConstPtr |
typedef std::shared_ptr< Octree > | OctreePtr |
typedef std::vector< std::vector< void * > > | PointerMap |
PointerMap maps pixels in a depth image to an identifier. More... | |
typedef Transform3 | Pose3D |
typedef QuaternionT< real > | Quaternion |
typedef double | real |
typedef std::shared_ptr< const Shape > | ShapeConstPtr |
typedef std::shared_ptr< Shape > | ShapePtr |
typedef double | Time |
typedef Transform3 | Transform |
typedef Transform2T< real > | Transform2 |
typedef Transform2T< double > | Transform2d |
typedef Transform2T< float > | Transform2f |
typedef Transform2T< int > | Transform2i |
typedef Transform2T< unsigned int > | Transform2u |
typedef Transform3T< real > | Transform3 |
typedef Transform3T< double > | Transform3d |
typedef Transform3T< float > | Transform3f |
typedef Transform3T< int > | Transform3i |
typedef Transform3T< unsigned int > | Transform3u |
typedef std::vector< std::vector< int > > | TriangleMap |
TriangleMap maps pixels in a depth image to an index in the list of triangles in the mesh. Note: check with the corresponding pointermap to find which mesh is referred to! More... | |
typedef Vec2T< real > | Vec2 |
typedef Vec2T< double > | Vec2d |
typedef Vec2T< float > | Vec2f |
typedef Vec2T< int > | Vec2i |
typedef Vec2T< unsigned int > | Vec2u |
typedef Vec3T< real > | Vec3 |
typedef Vec3T< double > | Vec3d |
typedef Vec3T< float > | Vec3f |
typedef Vec3T< int > | Vec3i |
typedef Vec3T< unsigned int > | Vec3u |
typedef Vec3 | Vector3 |
Functions | |
bool | check_linesegment (const Vector3 &p, const double radius2, const Vector3 &a, const Vector3 &ab) |
Check whether a point p is within distance radius of the line segment. The starting point is described by a and the vector from the starting point to the end point ab. More... | |
bool | compute_2D_intersection (const geo::Triangle &t, const geo::LS &line) |
Check if a line that is in the same plane as the triangle does actually intersect with the triangle https://members.loria.fr/SLazard/ARC-Visi3D/Pant-project/files/Line_Segment_Triangle.html. More... | |
void | convert (const geo::DepthCamera &cam_model, sensor_msgs::CameraInfo &msg) |
Convert DepthCamera to CameraInfo message. More... | |
void | convert (const geo::Matrix3 &m, tf2::Matrix3x3 &tf) |
void | convert (const geo::Matrix3 &m, tf::Matrix3x3 &tf) |
void | convert (const geo::Matrix3 &r, geometry_msgs::Quaternion &msg) |
converting geo::Matrix3 to geometry_msgs::Quaternion More... | |
void | convert (const geo::Mesh &m, shape_msgs::Mesh &msg) |
converts a geo::Mesh to shape_msgs::Mesh Both use a very similar structure based on points and triangles. More... | |
void | convert (const geo::Quaternion &q, geometry_msgs::Quaternion &msg) |
converting geo::Quaternion to geometry_msgs::Quaternion More... | |
void | convert (const geo::Quaternion &q, tf2::Quaternion &tf) |
void | convert (const geo::Quaternion &q, tf::Quaternion &tf) |
void | convert (const geo::Transform &t, geometry_msgs::Pose &msg) |
converting geo::Transform to geometry_msgs::Pose More... | |
void | convert (const geo::Transform &t, geometry_msgs::Transform &msg) |
converting geo::Transform to geometry_msgs::Transform More... | |
void | convert (const geo::Transform &t, tf2::Transform &tf) |
void | convert (const geo::Transform &t, tf::Transform &tf) |
void | convert (const geo::TriangleI &t, shape_msgs::MeshTriangle &msg) |
converting geo::TraingleI (Indices of a triangle in a vector of points) to shape_msgs::MeshTriangle More... | |
void | convert (const geo::Vector3 &v, geometry_msgs::Point &msg) |
converting geo::Vector3 to geometry_msgs::Point message More... | |
void | convert (const geo::Vector3 &v, geometry_msgs::Point32 &msg) |
converting geo::Vector3 to geometry_msgs::Point32 message More... | |
void | convert (const geo::Vector3 &v, geometry_msgs::Vector3 &msg) |
converting geo::Vector3 to geometry_msgs::Vector3 message More... | |
void | convert (const geo::Vector3 &v, tf2::Vector3 &tf) |
void | convert (const geo::Vector3 &v, tf::Vector3 &tf) |
void | convert (const geometry_msgs::Point &msg, geo::Vector3 &v) |
converting geometry_msgs::Point to geo::Vector3 More... | |
void | convert (const geometry_msgs::Point32 &msg, geo::Vector3 &v) |
converting geometry_msgs::Point32 to geo::Vector3 More... | |
void | convert (const geometry_msgs::Pose &msg, geo::Transform &t) |
converting geometry_msgs::Pose to geo::Transform More... | |
void | convert (const geometry_msgs::Quaternion &msg, geo::Matrix3 &r) |
converting geometry_msgs::Quaternion to geo::Matrix3 More... | |
void | convert (const geometry_msgs::Quaternion &msg, geo::Quaternion &q) |
converting geometry_msgs::Quaternion to geo::Quaternion More... | |
void | convert (const geometry_msgs::Transform &msg, geo::Transform &t) |
converting geometry_msgs::Transform to geo::Transform More... | |
void | convert (const geometry_msgs::Vector3 &msg, geo::Vector3 &v) |
converting geometry_msgs::Vector3 to geo::Vector3 More... | |
void | convert (const tf2::Matrix3x3 &tf, geo::Matrix3 &m) |
void | convert (const tf2::Quaternion &tf, geo::Quaternion &q) |
void | convert (const tf2::Transform &tf, geo::Transform &t) |
void | convert (const tf2::Vector3 &tf, geo::Vector3 &v) |
void | convert (const tf::Matrix3x3 &tf, geo::Matrix3 &m) |
void | convert (const tf::Quaternion &tf, geo::Quaternion &q) |
void | convert (const tf::Transform &tf, geo::Transform &t) |
void | convert (const tf::Vector3 &tf, geo::Vector3 &v) |
void | createConvexPolygon (geo::Shape &shape, const std::vector< geo::Vec2 > &points, double height) |
void | createCylinder (geo::Shape &shape, double radius, double height, unsigned int num_corners=20) |
bool | line_linesegment_intersection (const geo::LS &l, const geo::LS &ls, const geo::Vector3 &outside) |
Check if linesegment does intersect with line https://members.loria.fr/SLazard/ARC-Visi3D/Pant-project/files/Line_Segment_Triangle.html. More... | |
std::ostream & | operator<< (std::ostream &out, const Triangle &t) |
double | side_product (const geo::LS &p, const geo::LS &q) |
Determining the direction in which q passes around p. The direction is taken from looking from the base to tip of the vector p. Zero means intersection Positive means q passses clockwise around p. Negative means q passes counter clockwise around p. https://members.loria.fr/SLazard/ARC-Visi3D/Pant-project/files/Line_Segment_Triangle.html. More... | |
double | triangleArea (const Vector3 &p1, const Vector3 &p2, const Vector3 &p3) |
Variables | |
static PointerMap | EMPTY_POINTER_MAP |
static TriangleMap | EMPTY_TRIANGLE_MAP |
typedef std::shared_ptr<const Box> geo::BoxConstPtr |
Definition at line 22 of file datatypes.h.
typedef std::shared_ptr<Box> geo::BoxPtr |
Definition at line 20 of file datatypes.h.
typedef std::shared_ptr<const CompositeShape> geo::CompositeShapeConstPtr |
Definition at line 18 of file datatypes.h.
Definition at line 16 of file datatypes.h.
typedef geo::LineSegment geo::LS |
Definition at line 812 of file math_types.h.
typedef Mat2T<double> geo::Mat2d |
Definition at line 814 of file math_types.h.
typedef Mat2T<float> geo::Mat2f |
Definition at line 813 of file math_types.h.
typedef Mat2T<int> geo::Mat2i |
Definition at line 815 of file math_types.h.
typedef Mat2T<unsigned int> geo::Mat2u |
Definition at line 816 of file math_types.h.
Definition at line 818 of file math_types.h.
typedef Mat3T<double> geo::Mat3d |
Definition at line 820 of file math_types.h.
typedef Mat3T<float> geo::Mat3f |
Definition at line 819 of file math_types.h.
typedef Mat3T<int> geo::Mat3i |
Definition at line 821 of file math_types.h.
typedef Mat3T<unsigned int> geo::Mat3u |
Definition at line 822 of file math_types.h.
typedef Mat3 geo::Matrix3 |
Definition at line 33 of file datatypes.h.
typedef std::shared_ptr<const Octree> geo::OctreeConstPtr |
Definition at line 26 of file datatypes.h.
typedef std::shared_ptr<Octree> geo::OctreePtr |
Definition at line 24 of file datatypes.h.
typedef std::vector<std::vector<void*> > geo::PointerMap |
PointerMap maps pixels in a depth image to an identifier.
Definition at line 19 of file DepthCamera.h.
typedef Transform3 geo::Pose3D |
Definition at line 31 of file datatypes.h.
typedef QuaternionT<real> geo::Quaternion |
Definition at line 34 of file datatypes.h.
typedef double geo::real |
Definition at line 9 of file math_types.h.
typedef std::shared_ptr<const Shape> geo::ShapeConstPtr |
Definition at line 14 of file datatypes.h.
typedef std::shared_ptr<Shape> geo::ShapePtr |
Definition at line 12 of file datatypes.h.
typedef double geo::Time |
Definition at line 10 of file datatypes.h.
typedef Transform3 geo::Transform |
Definition at line 28 of file datatypes.h.
typedef Transform2T<real> geo::Transform2 |
Definition at line 824 of file math_types.h.
typedef Transform2T<double> geo::Transform2d |
Definition at line 826 of file math_types.h.
typedef Transform2T<float> geo::Transform2f |
Definition at line 825 of file math_types.h.
typedef Transform2T<int> geo::Transform2i |
Definition at line 827 of file math_types.h.
typedef Transform2T<unsigned int> geo::Transform2u |
Definition at line 828 of file math_types.h.
typedef Transform3T<real> geo::Transform3 |
Definition at line 830 of file math_types.h.
typedef Transform3T<double> geo::Transform3d |
Definition at line 832 of file math_types.h.
typedef Transform3T<float> geo::Transform3f |
Definition at line 831 of file math_types.h.
typedef Transform3T<int> geo::Transform3i |
Definition at line 833 of file math_types.h.
typedef Transform3T<unsigned int> geo::Transform3u |
Definition at line 834 of file math_types.h.
typedef std::vector<std::vector<int> > geo::TriangleMap |
TriangleMap maps pixels in a depth image to an index in the list of triangles in the mesh. Note: check with the corresponding pointermap to find which mesh is referred to!
Definition at line 25 of file DepthCamera.h.
Definition at line 800 of file math_types.h.
typedef Vec2T<double> geo::Vec2d |
Definition at line 802 of file math_types.h.
typedef Vec2T<float> geo::Vec2f |
Definition at line 801 of file math_types.h.
typedef Vec2T<int> geo::Vec2i |
Definition at line 803 of file math_types.h.
typedef Vec2T<unsigned int> geo::Vec2u |
Definition at line 804 of file math_types.h.
Definition at line 806 of file math_types.h.
typedef Vec3T<double> geo::Vec3d |
Definition at line 808 of file math_types.h.
typedef Vec3T<float> geo::Vec3f |
Definition at line 807 of file math_types.h.
typedef Vec3T<int> geo::Vec3i |
Definition at line 809 of file math_types.h.
typedef Vec3T<unsigned int> geo::Vec3u |
Definition at line 810 of file math_types.h.
typedef Vec3 geo::Vector3 |
Definition at line 32 of file datatypes.h.
bool geo::check_linesegment | ( | const Vector3 & | p, |
const double | radius2, | ||
const Vector3 & | a, | ||
const Vector3 & | ab | ||
) |
Check whether a point p is within distance radius of the line segment. The starting point is described by a and the vector from the starting point to the end point ab.
p | Point to check |
radius2 | Radius squared to check with |
a | Starting point of linesegment |
ab | Linesegment from A to B |
bool geo::compute_2D_intersection | ( | const geo::Triangle & | t, |
const geo::LS & | line | ||
) |
Check if a line that is in the same plane as the triangle does actually intersect with the triangle https://members.loria.fr/SLazard/ARC-Visi3D/Pant-project/files/Line_Segment_Triangle.html.
t | Triangle |
line | line |
void geo::convert | ( | const geo::DepthCamera & | cam_model, |
sensor_msgs::CameraInfo & | msg | ||
) |
Convert DepthCamera to CameraInfo message.
cam_model | Depthcamera |
msg | CameraInfo message to fill |
Definition at line 24 of file msg_conversions.cpp.
|
inline |
Definition at line 23 of file tf2_conversions.h.
|
inline |
Definition at line 20 of file tf_conversions.h.
|
inline |
converting geo::Matrix3 to geometry_msgs::Quaternion
r | geo::Matrix3 as input |
msg | filled geometry_msgs::Quaternion message as output |
Definition at line 59 of file msg_conversions.h.
void geo::convert | ( | const geo::Mesh & | m, |
shape_msgs::Mesh & | msg | ||
) |
converts a geo::Mesh to shape_msgs::Mesh Both use a very similar structure based on points and triangles.
m | geo::Mesh as input |
msg | filled shape_msgs::Mesh message as output |
Definition at line 5 of file msg_conversions.cpp.
|
inline |
converting geo::Quaternion to geometry_msgs::Quaternion
q | geo::Quaternion as input |
msg | filled geometery_msgs::Quaternion message as output |
Definition at line 50 of file msg_conversions.h.
|
inline |
Definition at line 19 of file tf2_conversions.h.
|
inline |
Definition at line 16 of file tf_conversions.h.
|
inline |
converting geo::Transform to geometry_msgs::Pose
t | geo::Transform as input |
msg | filled geometry_msgs::Pose as output |
Definition at line 70 of file msg_conversions.h.
|
inline |
converting geo::Transform to geometry_msgs::Transform
t | geo::Transform as input |
msg | filled geometry_msgs::Transform as output |
Definition at line 80 of file msg_conversions.h.
|
inline |
Definition at line 27 of file tf2_conversions.h.
|
inline |
Definition at line 24 of file tf_conversions.h.
|
inline |
converting geo::TraingleI (Indices of a triangle in a vector of points) to shape_msgs::MeshTriangle
t | geo::TriangleI as input |
msg | filled shape_msgs::MeshTriangle message as output |
Definition at line 90 of file msg_conversions.h.
|
inline |
converting geo::Vector3 to geometry_msgs::Point message
v | geo::Vector3 as input |
msg | filled geometery_msgs::Point message as output |
Definition at line 23 of file msg_conversions.h.
|
inline |
converting geo::Vector3 to geometry_msgs::Point32 message
v | geo::Vector3 as input |
msg | filled geometery_msgs::Point32 message as output |
Definition at line 32 of file msg_conversions.h.
|
inline |
converting geo::Vector3 to geometry_msgs::Vector3 message
v | geo::Vector3 as input |
msg | filled geometery_msgs::Vector3 message as output |
Definition at line 41 of file msg_conversions.h.
|
inline |
Definition at line 15 of file tf2_conversions.h.
|
inline |
Definition at line 12 of file tf_conversions.h.
|
inline |
converting geometry_msgs::Point to geo::Vector3
msg | geometry_msgs::Point as input |
v | geo::Vector3 as output |
Definition at line 118 of file msg_conversions.h.
|
inline |
converting geometry_msgs::Point32 to geo::Vector3
msg | geometry_msgs::Point as input |
v | geo::Vector3 as output |
Definition at line 127 of file msg_conversions.h.
|
inline |
converting geometry_msgs::Pose to geo::Transform
msg | geometry_msgs::Pose as input |
t | geo::Transform as output |
Definition at line 165 of file msg_conversions.h.
|
inline |
converting geometry_msgs::Quaternion to geo::Matrix3
msg | geometry_msgs::Quaternion as input |
r | geo::Matrix3 as output |
Definition at line 154 of file msg_conversions.h.
|
inline |
converting geometry_msgs::Quaternion to geo::Quaternion
msg | geometry_msgs::Quaternion as input |
q | geo::Quaternion as output |
Definition at line 145 of file msg_conversions.h.
|
inline |
converting geometry_msgs::Transform to geo::Transform
msg | geometry_msgs::Transform as input |
t | geo::Transform as output |
Definition at line 175 of file msg_conversions.h.
|
inline |
converting geometry_msgs::Vector3 to geo::Vector3
msg | geometry_msgs::Vector3 as input |
v | geo::Vector3 as output |
Definition at line 136 of file msg_conversions.h.
|
inline |
Definition at line 42 of file tf2_conversions.h.
|
inline |
Definition at line 38 of file tf2_conversions.h.
|
inline |
Definition at line 48 of file tf2_conversions.h.
|
inline |
Definition at line 34 of file tf2_conversions.h.
|
inline |
Definition at line 39 of file tf_conversions.h.
|
inline |
Definition at line 35 of file tf_conversions.h.
|
inline |
Definition at line 45 of file tf_conversions.h.
|
inline |
Definition at line 31 of file tf_conversions.h.
void geo::createConvexPolygon | ( | geo::Shape & | shape, |
const std::vector< geo::Vec2 > & | points, | ||
double | height | ||
) |
Definition at line 53 of file shapes.cpp.
void geo::createCylinder | ( | geo::Shape & | shape, |
double | radius, | ||
double | height, | ||
unsigned int | num_corners = 20 |
||
) |
Definition at line 13 of file shapes.cpp.
bool geo::line_linesegment_intersection | ( | const geo::LS & | l, |
const geo::LS & | ls, | ||
const geo::Vector3 & | outside | ||
) |
Check if linesegment does intersect with line https://members.loria.fr/SLazard/ARC-Visi3D/Pant-project/files/Line_Segment_Triangle.html.
l | line |
ls | linesegment |
outside | A point outside the plane which contains both the line and the linesegment |
std::ostream& geo::operator<< | ( | std::ostream & | out, |
const Triangle & | t | ||
) |
Definition at line 20 of file Triangle.cpp.
Determining the direction in which q passes around p. The direction is taken from looking from the base to tip of the vector p. Zero means intersection Positive means q passses clockwise around p. Negative means q passes counter clockwise around p. https://members.loria.fr/SLazard/ARC-Visi3D/Pant-project/files/Line_Segment_Triangle.html.
p | First line |
q | Second line |
Definition at line 5 of file Triangle.cpp.
|
static |
Definition at line 32 of file DepthCamera.h.
|
static |
Definition at line 33 of file DepthCamera.h.