【VTK基础】1-系统概述

1 VTK 建立应用程序的基本过程如下:

  • 读取/生成数据
  • 过滤数据
  • 绘制图形
  • 交互操作

2 交互:vtkRenderWindowInteractor类

提供操纵杆模式和跟踪球模式(默认)两种交互类型

键盘事件:

  • 压下键盘j/t 键,在操纵杆和跟踪球交互类型间切换。
  • 压下键盘c/a 键, 在相机和Actors 模式间切换。
  • 压下鼠标左键,在相机模式下,围绕相机焦点旋转,在Actors 模式下,围绕Actors的原点旋转。
  • 压下鼠标中键,在相机模式下,扫视相机,在Actors 模式下,平移Actors,对于2 键鼠标,使用shift+鼠标左键。
  • 压下鼠标右键,在相机模式下,推拉相机,在Actors 模式下,缩放Actors。
  • 压下键盘3 键,进入立体模式。
  • 压下键盘e 键,退出程序。
  • 压下键盘p 键,进行拾取。
  • 压下键盘r 键,沿着当前的视方向重新设置相机。
  • 压下键盘u 键,调用用户设定的方法。
  • 压下键盘s/w 键,Actors 的显示方式在线框/表面模式间切换。

3 LightFollowCameraOn()方法让相机和光源同步

4 拾取:vtkAbstractPicker::Pick()

vtkWorldPointPicker
用于快速的对角色进行拾取,并获取拾取点的世界坐标值(x,y,z)。

vtkAbstractPropPicker
用于拾取场景中的对象,并且返回拾取对象的数据类型。

vtkPropPicker
是vtkAbstractPropPicker 类的派生类,用于硬件支持的拾取操作,在有些硬件图形系统上,该类不被支持,在这种情况下,使用软件版本的vtkPicker 类。

vtkPicker
是vtkAbstractPropPicker 类的派生类,用软件的方式实现边界拾取,由于该类执行边界拾取,所以不能实现单一拾取功能,该类还有两个派生类,用于获取更多的拾取信息,如单元ID、点ID 和拾取点坐标等,vtkPointPicker 用于获取点的信息(点ID、坐标),vtkCellPicker 用于拾取单元并且返回单元的信息(单元ID、单元参数坐标)。

vtkAssemblyPath
当场景对象由vtkAssembly 对象组装在一起时,vtkAssemblyPath 包含了vtkAssembly中每个对象的结点和变换矩阵,通过vtkAssemblyPath 类可以访问vtkAssembly 中的每个对象。

5 坐标系统:vtkCoordinate

  • DISPLAY x-y pixel values in window
  • NORMALIZED DISPLAY x-y (0,1) normalized values
  • VIEWPORT x-y pixel values in viewport
  • NORMALIZED VIEWPORT x-y (0,1) normalized value in viewport
  • VIEW x-y-z (-1,1) values in camera coordinates. (z is depth)
  • WORLD x-y-z global coordinate values
  • USERDEFINED x-y-z in User defined space
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值