VTK--交互方式vtkInteractorStyleTrackballCamera

前言:本博文主要介绍vtk中基于Camera的交互方式vtkInteractorStyleTrackballCamera 及其子类,小伙伴可以根据需求自定义交互方式。

目录

vtkInteractorStyleTrackballCamera 

vtkGeoInteractorStyle

vtkInteractorStyleImage

vtkInteractorStyleMultiTouchCamera

vtkInteractorStyleRubberBand3D

vtkInteractorStyleRubberBandPick


vtkInteractorStyleTrackballCamera 

位置:../Interaction/Style

描述:vtkInteractorStyleTrackballCamera允许用户交互操作(旋转,平移等)相机,场景的视点。在轨迹球交互中,鼠标运动的幅度与与特定鼠标绑定相关的摄像机运动成比例。例如,小的左键运动会引起相机围绕焦点旋转的小变化。对于3键鼠标,左键用于旋转右键用于缩放中间键用于平移ctrl +左键用于旋转shift +右键用于环境旋转。(鼠标按键更少,ctrl + shift +左键用于缩放,shift +左键用于平移。)

注意:在该类及其子类中,Actors并没有发生移动,而是Camera移动。

vtkGeoInteractorStyle

描述:vtkInteractorStyleTrackballCamera子类,包含地理视图的交互功能,包括轨道、缩放和倾斜。它还包括一个罗盘小部件,用于更改视图参数。在9.0.3中不存在该类。

vtkInteractorStyleImage

描述:vtkInteractorStyleTrackballCamera子类,专门设计用于使用vtkImageActor渲染的图像。几个事件从它的超类vtkinteractstyle重载,因此鼠标绑定是不同的。(绑定使相机的视图平面垂直于x-y平面。)综上所述,二维图像交互的鼠标事件如下:

-鼠标左键触发窗口级事件

- CTRL鼠标左键旋转相机周围的视野平面正常

-鼠标左键SHIFT平移相机

- CTRL SHIFT鼠标左键多利(位置缩放)相机

-鼠标中键平移相机

-鼠标右键拖动相机。

- SHIFT鼠标右键触发选择事件

如果SetInteractionModeToImageSlicing()被调用,那么一些鼠标事件被改变如下:

- CTRL鼠标左键切片图像

- SHIFT中鼠标切片图像

- CTRL鼠标右键旋转相机

如果SetInteractionModeToImage3D()被调用,那么一些鼠标事件被改变如下:

-鼠标左键SHIFT旋转摄像机进行倾斜切片

- SHIFT中鼠标切片图像

- CTRL右键鼠标也切片图像

在所有模式下,以下按键绑定生效:

- R重置窗口/级别

- X重置为矢状视图

- Y重置为冠状视图

- Z复位为轴向视图

vtkInteractorStyleMultiTouchCamera

描述:采用多点触摸,不太理解。

vtkInteractorStyleRubberBand3D

描述:vtkInteractorStyleRubberBand3D在3D视图中管理交互。该样式还允许使用左键绘制橡皮筋。当按下按钮时,所有的相机变化都会调用StartInteractionEvent,当鼠标(或滚轮)移动时调用InteractionEvent,当按钮释放时调用EndInteractionEvent。绑定如下:

鼠标左键-选择(调用SelectionChangedEvent)。

鼠标右键-旋转。

Shift +鼠标右键-缩放。

鼠标中间-移动

滚轮-缩放。

vtkInteractorStyleRubberBandPick

描述:与父类功能相似,但该类可以选择矩形框。当用户点击“r”时,使用左键会绘制矩形。当释放左键时,Pick点为矩形的中心点。若对应的Picker为vtkAreaPicker时,则会作用于整个选择的矩形框。当用户点击“p"时,上述操作会作用于一个1X1的矩形。

vtkParallelCoordinatesInteractorStyle

描述:交互式操作的相机专门用于平行坐标

vtkParallelCoordinatesInteractorStyle使相机的视角平面垂直于x-y平面。总的来说,鼠标事件如下:

+鼠标左键触发窗口级事件

+ CTRL鼠标左键旋转相机围绕其视图平面正常

+ SHIFT鼠标左键平移相机

+ CTRL SHIFT鼠标左键多利(位置缩放)相机

+鼠标中键平移相机

+鼠标右键拖动相机。

+ SHIFT鼠标右键触发选择事件

另附 常用的交互方式

猜你喜欢

转载自blog.csdn.net/qq_40041064/article/details/128498134
今日推荐