VTK修炼之道81:VTK开发基础_vtkObject类深入分析

本文详细介绍了VTK开发中的基础——vtkObject类,特别是观察者/命令模式的工作流程,包括如何添加和移除观察者、VTK的消息触发机制以及观察者监听消息的实例应用。
摘要由CSDN通过智能技术生成

1.前言

相比于vtkObjectBase,我们接触更多的是vtkObject类。
vtkObjectBase类主要实现了引用计数,因此vtkObject及其相关子类都继承了该特性。
与此同时,vtkObject中实现了一个在VTK中是用非常广泛的观察者/命令模式,该机制可以方便地处理消息响应,例如处理鼠标消息、键盘消息、进度条消息等,VTK的Widget中大量地使用了该机制进行消息处理。

2.观察者/命令模式的工作流程

vtkObject中定义了一个vtkSubjectHelper对象来管理观察者。vtkSubjectHelper内部定义了一个观察者vtkObserver对象链表。vtkObserver表示一个观察者,其内部定义了一个vtkCommand指针、一个消息ID以及一个表示优先级的变量。直观的理解为:当观察者监听到一个消息时(如鼠标按下消息),就响应vtkCommand定义的回调函数。

2.1 添加

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值