Я использую программу просмотра PCL для визуализации облака точек. Я должен показать 4 вида (используя видовые окна): 1 вид покажет реальное облако, 2 - вид сверху определенной части, 3 - вид слева и 4 - вид спереди. Я добавил одно и то же облако точек к различным портам вида, используя функцию «createViewPort», указав размеры x & y (Прикрепленное изображение ниже).
Я хочу, чтобы 2-й, 3-й и 4-й вид были исправлены и не должны поворот. Как мне этого добиться.
Код:
int full_viewport = 0;
int left_viewport = 1;
int middle_viewport = 2;
int right_viewport = 3;
m_pViewer.get()->removePointCloud(m_sCurrentPointCloudId, full_viewport);
m_pViewer.get()->removePointCloud(m_sCurrentPointCloudId.append("_left"), left_viewport);
m_pViewer.get()->removePointCloud(m_sCurrentPointCloudId.append("_middle"), middle_viewport);
m_pViewer.get()->removePointCloud(m_sCurrentPointCloudId.append("_right"), right_viewport);
//createViewPort (double xmin, double ymin, double xmax, double ymax, int &viewport);
m_pViewer->createViewPort(0, 0, 1, 0.7, full_viewport);
m_pViewer->createViewPort(0.0, 0.7, 0.33, 1, left_viewport);
m_pViewer->createViewPort(0.33, 0.7, 0.66, 1, middle_viewport);
m_pViewer->createViewPort(0.66, 0.7, 1, 1, right_viewport);
m_pViewer->addPointCloud(m_pCloud, m_pColorHandler, newCloudId, full_viewport);
m_pViewer->addPointCloud(m_pCloud, m_pColorHandler, newCloudId.append("_left"), left_viewport);
m_pViewer->addPointCloud(m_pCloud, m_pColorHandler, newCloudId.append("_middle"), middle_viewport);
m_pViewer->addPointCloud(m_pCloud, m_pColorHandler, newCloudId.append("_right"), right_viewport);