| 254 | } |
| 255 | |
| 256 | void ViewerAR::LoadCameraPose(const cv::Mat &Tcw) |
| 257 | { |
| 258 | if(!Tcw.empty()) |
| 259 | { |
| 260 | pangolin::OpenGlMatrix M; |
| 261 | |
| 262 | M.m[0] = Tcw.at<float>(0,0); |
| 263 | M.m[1] = Tcw.at<float>(1,0); |
| 264 | M.m[2] = Tcw.at<float>(2,0); |
| 265 | M.m[3] = 0.0; |
| 266 | |
| 267 | M.m[4] = Tcw.at<float>(0,1); |
| 268 | M.m[5] = Tcw.at<float>(1,1); |
| 269 | M.m[6] = Tcw.at<float>(2,1); |
| 270 | M.m[7] = 0.0; |
| 271 | |
| 272 | M.m[8] = Tcw.at<float>(0,2); |
| 273 | M.m[9] = Tcw.at<float>(1,2); |
| 274 | M.m[10] = Tcw.at<float>(2,2); |
| 275 | M.m[11] = 0.0; |
| 276 | |
| 277 | M.m[12] = Tcw.at<float>(0,3); |
| 278 | M.m[13] = Tcw.at<float>(1,3); |
| 279 | M.m[14] = Tcw.at<float>(2,3); |
| 280 | M.m[15] = 1.0; |
| 281 | |
| 282 | M.Load(); |
| 283 | } |
| 284 | } |
| 285 | |
| 286 | void ViewerAR::PrintStatus(const int &status, const bool &bLocMode, cv::Mat &im) |
| 287 | { |