Я после этой обучающей программы в официальной документации PCL для класса PCLVisualizer:PCL Visualizer Пример: Не удается получить события клавиатуры и мыши
http://pointclouds.org/documentation/tutorials/pcl_visualizer.php
и у меня возникают проблемы с приобретением клавиатуры: когда Я выбираю окно визуализации, в котором отображается PointCloud, и попробуйте нажать «г» или «д», ничего не происходит, и когда я пытаюсь нажать левую кнопку мыши, появится следующий текст:
Left mouse button released at position (413, 475)
и следующая ошибка возникает (во время выполнения):
Assertion failed: (px != 0), function operator->, file /usr/local/include/boost/smart_ptr/shared_ptr.hpp, line 687.
Abort trap: 6
Я видел, что такая ошибка происходит, когда вы не инициализировать boost::shared_ptr
в объявлении переменной. Но в коде, указанном в документации, переменная хорошо определена, поэтому я полагаю, что проблема связана с библиотекой shared_ptr.hpp
, или это не так?
Я искал через Интернет решение, но я не нашел ничего, что могло бы решить проблему.
Есть ли кто-нибудь, способный получать нажатия клавиш в окне рендеринга pointcloud, запустив его на OS X?
Если вопрос непонятен, сообщите мне. Большое спасибо за любую помощь или информацию!
Я попытался ** инициализировать переменную 'viewer' в основной функции ** и обработчик мыши работал:' boost :: shared_ptr viewer (new pcl :: visualization: : PCLVisualizer («3D Viewer»)); ', на мой взгляд, утверждение не получилось, потому что указатель, переданный обратному вызову' mouseEventOccured() ', был неправильно инициализирован. Но ** получение ** ** ** ** не работает **. –
Mauro