void keyboardEventOccurred(const visualization::KeyboardEvent& event, void* nothing) { if (event.getKeySym() == "space" && event.keyDown()) saveCloud = true; }
void TrackerManager::InputManager (const visualization::KeyboardEvent& event) { if (event.keyUp()) { char key = event.getKeyCode(); if(key == 'b') showBackground = !showBackground; } }
static void keyboard_callback (const visualization::KeyboardEvent &e, void *cookie) { PoseTracker* app = reinterpret_cast<PoseTracker*> (cookie); int key = e.getKeyCode (); if (e.keyUp ()) switch (key) { case 27: exit(0); break; case 's': break; default: break; } }
static void keyboard_callback (const visualization::KeyboardEvent &e, void *cookie) { KinFuStereoApp* app = reinterpret_cast<KinFuStereoApp*> (cookie); int key = e.getKeyCode (); if (e.keyUp ()) switch (key) { case 27: app->exit_ = true; break; case (int)'t': case (int)'T': app->scan_ = true; break; case (int)'a': case (int)'A': app->scan_mesh_ = true; break; case (int)'h': case (int)'H': app->printHelp (); break; case (int)'m': case (int)'M': app->scene_cloud_view_.toggleExtractionMode (); break; case (int)'n': case (int)'N': app->scene_cloud_view_.toggleNormals (); break; case (int)'c': case (int)'C': app->scene_cloud_view_.clearClouds (true); break; case (int)'i': case (int)'I': app->toggleIndependentCamera (); break; case (int)'b': case (int)'B': app->scene_cloud_view_.toggleCube(app->kinfu_.volume().getSize()); break; case (int)'7': case (int)'8': app->writeMesh (key - (int)'0'); break; case (int)'1': case (int)'2': case (int)'3': app->writeCloud (key - (int)'0'); break; case '*': app->image_view_.toggleImagePaint (); break; case (int)'x': case (int)'X': app->scan_volume_ = !app->scan_volume_; cout << endl << "Volume scan: " << (app->scan_volume_ ? "enabled" : "disabled") << endl << endl; break; case (int)'v': case (int)'V': cout << "Saving TSDF volume to tsdf_volume.dat ... " << flush; app->tsdf_volume_.save ("tsdf_volume.dat", true); cout << "done [" << app->tsdf_volume_.size () << " voxels]" << endl; cout << "Saving TSDF volume cloud to tsdf_cloud.pcd ... " << flush; //pcl::io::savePCDFile<pcl::PointXYZI> ("tsdf_cloud.pcd", *app->tsdf_cloud_ptr_, true); cout << "done [" << app->tsdf_cloud_ptr_->size () << " points]" << endl; break; default: break; } }