实现效果



步骤拆分
- 首先我们要在左侧建立toolbarACTION
- 给action添加槽函数
- 槽函数改变不同的视角
代码实现
QAction *upbtn = new QAction(this);
upbtn->setIcon(QIcon(":/p1.png"));
QAction *leftbtn = new QAction(this);
leftbtn->setIcon(QIcon(":/left.png"));
QAction *rightbtn = new QAction(this);
rightbtn->setIcon(QIcon(":/right.png"));
QAction *fontbtn = new QAction(this);
fontbtn->setIcon(QIcon(":/font.png"));
QAction *backbtn = new QAction(this);
backbtn->setIcon(QIcon(":/back.png"));
QAction *xbtn = new QAction(this);
xbtn->setIcon(QIcon(":/Xaxis.png"));
QAction *ybtn = new QAction(this);
ybtn->setIcon(QIcon(":/Yaxis.png"));
QAction *zbtn = new QAction(this);
zbtn->setIcon(QIcon(":/Zaxis.png"));
QToolBar *leftbar=new QToolBar("leftbar");
addToolBar(Qt::LeftToolBarArea,leftbar);
leftbar->setFloatable(false);
leftbar->setMovable(false);
leftbar->setOrientation(Qt::Vertical);
leftbar->setAllowedAreas(Qt::LeftToolBarArea);
leftbar->addAction(upbtn);
leftbar->addAction(leftbtn);
leftbar->addAction(rightbtn);
leftbar->addAction(fontbtn);
leftbar->addAction(backbtn);
leftbar->addSeparator();
leftbar->addAction(xbtn);
leftbar->addAction(ybtn);
leftbar->addAction(zbtn);
void MainWindow::camera_up(){
viewer->setCameraPosition(-1,1,0,0,0,0,0,0,0);
viewer->resetCamera();
ui->qvtkWidget->update();
}
void MainWindow::camera_left(){
viewer->setCameraPosition(0,0,-1,1,0,0,0,0,0);
viewer->resetCamera();
ui->qvtkWidget->update();
}
void MainWindow::camera_right(){
viewer->setCameraPosition(0,0,0,0,-1,1,0,0,0);
viewer->resetCamera();
ui->qvtkWidget->update();
}
void MainWindow::camera_font(){
viewer->setCameraPosition(-1,0,0,0,0,1,0,0,0);
viewer->resetCamera();
ui->qvtkWidget->update();
}
void MainWindow::camera_back(){
viewer->setCameraPosition(0,0,0, 0, 0, -1, 0, 1, 0);
viewer->resetCamera();
ui->qvtkWidget->update();
}