MCPcopy Create free account
hub / github.com/PointCloudLibrary/pcl / keyboardCallback

Method keyboardCallback

tools/depth_sense_viewer.cpp:179–239  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

177 }
178
179 void
180 keyboardCallback (const pcl::visualization::KeyboardEvent& event, void*)
181 {
182 if (event.keyDown ())
183 {
184 if (event.getKeyCode () == 'w' || event.getKeyCode () == 'W')
185 {
186 window_ += event.getKeyCode () == 'w' ? 1 : -1;
187 if (window_ < 1)
188 window_ = 1;
189 pcl::console::print_info ("Temporal filtering window size: ");
190 pcl::console::print_value ("%i\n", window_);
191 grabber_.enableTemporalFiltering (temporal_filtering_, window_);
192 }
193 if (event.getKeyCode () == 't' || event.getKeyCode () == 'T')
194 {
195 threshold_ += event.getKeyCode () == 't' ? 10 : -10;
196 if (threshold_ < 0)
197 threshold_ = 0;
198 pcl::console::print_info ("Confidence threshold: ");
199 pcl::console::print_value ("%i\n", threshold_);
200 grabber_.setConfidenceThreshold (threshold_);
201 }
202 if (event.getKeyCode () == 'k')
203 {
204 pcl::console::print_info ("Temporal filtering: ");
205 switch (temporal_filtering_)
206 {
207 case pcl::DepthSenseGrabber::DepthSense_None:
208 {
209 temporal_filtering_ = pcl::DepthSenseGrabber::DepthSense_Median;
210 pcl::console::print_value ("median\n");
211 break;
212 }
213 case pcl::DepthSenseGrabber::DepthSense_Median:
214 {
215 temporal_filtering_ = pcl::DepthSenseGrabber::DepthSense_Average;
216 pcl::console::print_value ("average\n");
217 break;
218 }
219 case pcl::DepthSenseGrabber::DepthSense_Average:
220 {
221 temporal_filtering_ = pcl::DepthSenseGrabber::DepthSense_None;
222 pcl::console::print_value ("none\n");
223 break;
224 }
225 }
226 grabber_.enableTemporalFiltering (temporal_filtering_, window_);
227 }
228 if (event.getKeyCode () == 's')
229 {
230 boost::format fmt ("DS_%s_%u.pcd");
231 std::string fn = boost::str (fmt % grabber_.getDeviceSerialNumber ().c_str () % last_cloud_->header.stamp);
232 pcl::io::savePCDFileBinaryCompressed (fn, *last_cloud_);
233 pcl::console::print_info ("Saved point cloud: ");
234 pcl::console::print_value (fn.c_str ());
235 pcl::console::print_info ("\n");
236 }

Callers

nothing calls this directly

Calls 7

print_valueFunction · 0.85
keyDownMethod · 0.80
getKeyCodeMethod · 0.80
getDeviceSerialNumberMethod · 0.80

Tested by

no test coverage detected