edge_se2.cpp
Go to the documentation of this file.
00001 // g2o - General Graph Optimization
00002 // Copyright (C) 2011 R. Kuemmerle, G. Grisetti, W. Burgard
00003 // 
00004 // g2o is free software: you can redistribute it and/or modify
00005 // it under the terms of the GNU Lesser General Public License as published
00006 // by the Free Software Foundation, either version 3 of the License, or
00007 // (at your option) any later version.
00008 // 
00009 // g2o is distributed in the hope that it will be useful,
00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012 // GNU Lesser General Public License for more details.
00013 // 
00014 // You should have received a copy of the GNU Lesser General Public License
00015 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
00016 
00017 #include "edge_se2.h"
00018 #ifdef __APPLE__
00019 #include <OpenGL/gl.h>
00020 #else
00021 #include <GL/gl.h>
00022 #endif
00023 
00024 namespace g2o {
00025   namespace tutorial {
00026 
00027     EdgeSE2::EdgeSE2() :
00028       BaseBinaryEdge<3, SE2, VertexSE2, VertexSE2>()
00029     {
00030     }
00031 
00032     bool EdgeSE2::read(std::istream& is)
00033     {
00034       Vector3d p;
00035       is >> p[0] >> p[1] >> p[2];
00036       measurement().fromVector(p);
00037       inverseMeasurement() = measurement().inverse();
00038       for (int i = 0; i < 3; ++i)
00039         for (int j = i; j < 3; ++j) {
00040           is >> information()(i, j);
00041           if (i != j)
00042             information()(j, i) = information()(i, j);
00043         }
00044       return true;
00045     }
00046 
00047     bool EdgeSE2::write(std::ostream& os) const
00048     {
00049       Vector3d p = measurement().toVector();
00050       os << p.x() << " " << p.y() << " " << p.z();
00051       for (int i = 0; i < 3; ++i)
00052         for (int j = i; j < 3; ++j)
00053           os << " " << information()(i, j);
00054       return os.good();
00055     }
00056 
00057   } // end namespace
00058 } // end namespace


re_vision
Author(s): Dorian Galvez-Lopez
autogenerated on Sun Jan 5 2014 11:31:02