Collision Checker
serialize_triangle.cc
Go to the documentation of this file.
2 
3 #if ENABLE_SERIALIZER
4 
6 namespace collision {
7 namespace serialize {
8 ICollisionObjectExport *exportObject(const collision::Triangle &triangle) {
9  return new TriangleExport(triangle);
10 }
11 
12 TriangleExport::TriangleExport(const Triangle &triangle) {
13  m_fields.v1_x = triangle.v1()[0];
14  m_fields.v1_y = triangle.v1()[1];
15 
16  m_fields.v2_x = triangle.v2()[0];
17  m_fields.v2_y = triangle.v2()[1];
18 
19  m_fields.v3_x = triangle.v3()[0];
20  m_fields.v3_y = triangle.v3()[1];
21 }
22 
23 CollisionObject *TriangleExport::loadObject(void) {
24  return new Triangle(Eigen::Vector2d(m_fields.v1_x, m_fields.v1_y),
25  Eigen::Vector2d(m_fields.v2_x, m_fields.v2_y),
26  Eigen::Vector2d(m_fields.v3_x, m_fields.v3_y));
27 }
28 
29 bool TriangleExport::operator()(s11nlite::node_type &dest) const {
30  typedef s11nlite::node_traits TR;
31  TR::class_name(dest, "TriangleExport");
32  TR::set(dest, "v1_x", m_fields.v1_x);
33  TR::set(dest, "v1_y", m_fields.v1_y);
34 
35  TR::set(dest, "v2_x", m_fields.v2_x);
36  TR::set(dest, "v2_y", m_fields.v2_y);
37 
38  TR::set(dest, "v3_x", m_fields.v3_x);
39  TR::set(dest, "v3_y", m_fields.v3_y);
40 
41  return true;
42 }
43 bool TriangleExport::operator()(const s11nlite::node_type &src) {
44  typedef s11nlite::node_traits TR;
45  m_fields.v1_x = TR::get(src, "v1_x", double(0));
46  m_fields.v1_y = TR::get(src, "v1_y", double(0));
47 
48  m_fields.v2_x = TR::get(src, "v2_x", double(0));
49  m_fields.v2_y = TR::get(src, "v2_y", double(0));
50 
51  m_fields.v3_x = TR::get(src, "v3_x", double(0));
52  m_fields.v3_y = TR::get(src, "v3_y", double(0));
53 
54  return true;
55 }
56 } // namespace serialize
57 } // namespace collision
58 #endif
Triangle.
Definition: triangle.h:17
virtual bool operator()(s11nlite::node_type &dest) const
CollisionObject * loadObject(void)
int serialize(const test::BroadphaseFailureCCObj &bf_object, std::ostream &output_stream, const char *format=SERIALIZER_DEFAULT_FORMAT)