5 #ifndef HPP_FCL_SERIALIZATION_GEOMETRIC_SHAPES_H 6 #define HPP_FCL_SERIALIZATION_GEOMETRIC_SHAPES_H 12 namespace serialization {
14 template <
class Archive>
16 const unsigned int ) {
18 boost::serialization::base_object<hpp::fcl::CollisionGeometry>(
22 template <
class Archive>
24 const unsigned int ) {
26 "base", boost::serialization::base_object<hpp::fcl::ShapeBase>(triangle));
27 ar& make_nvp(
"a", triangle.
a);
28 ar& make_nvp(
"b", triangle.
b);
29 ar& make_nvp(
"c", triangle.
c);
32 template <
class Archive>
34 const unsigned int ) {
36 boost::serialization::base_object<hpp::fcl::ShapeBase>(box));
37 ar& make_nvp(
"halfSide", box.
halfSide);
40 template <
class Archive>
42 const unsigned int ) {
44 boost::serialization::base_object<hpp::fcl::ShapeBase>(sphere));
45 ar& make_nvp(
"radius", sphere.
radius);
48 template <
class Archive>
50 const unsigned int ) {
51 ar& make_nvp(
"base", boost::serialization::base_object<hpp::fcl::ShapeBase>(
53 ar& make_nvp(
"radii", ellipsoid.
radii);
56 template <
class Archive>
58 const unsigned int ) {
60 boost::serialization::base_object<hpp::fcl::ShapeBase>(capsule));
61 ar& make_nvp(
"radius", capsule.
radius);
62 ar& make_nvp(
"halfLength", capsule.
halfLength);
65 template <
class Archive>
67 const unsigned int ) {
69 boost::serialization::base_object<hpp::fcl::ShapeBase>(cone));
70 ar& make_nvp(
"radius", cone.
radius);
74 template <
class Archive>
76 const unsigned int ) {
78 "base", boost::serialization::base_object<hpp::fcl::ShapeBase>(cylinder));
79 ar& make_nvp(
"radius", cylinder.
radius);
80 ar& make_nvp(
"halfLength", cylinder.
halfLength);
83 template <
class Archive>
85 const unsigned int ) {
86 ar& make_nvp(
"base", boost::serialization::base_object<hpp::fcl::ShapeBase>(
88 ar& make_nvp(
"n", half_space.
n);
89 ar& make_nvp(
"d", half_space.
d);
92 template <
class Archive>
94 const unsigned int ) {
96 boost::serialization::base_object<hpp::fcl::ShapeBase>(plane));
97 ar& make_nvp(
"n", plane.
n);
98 ar& make_nvp(
"d", plane.
d);
104 #endif // ifndef HPP_FCL_SERIALIZATION_GEOMETRIC_SHAPES_H Vec3f halfSide
box side half-length
Ellipsoid centered at point zero.
FCL_REAL halfLength
Half Length along z axis.
Cylinder along Z axis. The cylinder is defined at its centroid.
Half Space: this is equivalent to the Plane in ODE. The separation plane is defined as n * x = d; Poi...
void serialize(Archive &ar, hpp::fcl::AABB &aabb, const unsigned int)
Base class for all basic geometric shapes.
FCL_REAL radius
Radius of the cone.
Center at zero point, axis aligned box.
Triangle stores the points instead of only indices of points.
Cone The base of the cone is at and the top is at .
FCL_REAL radius
Radius of the sphere.
FCL_REAL radius
Radius of the cylinder.
Center at zero point sphere.
Capsule It is where is the distance between the point x and the capsule segment AB...
FCL_REAL halfLength
Half Length along z axis.
Vec3f radii
Radii of the Ellipsoid (such that on boundary: x^2/rx^2 + y^2/ry^2.
FCL_REAL radius
Radius of capsule.
FCL_REAL halfLength
Half Length along z axis.