理论教育 控制观察者的编码设置与绑定

控制观察者的编码设置与绑定

时间:2023-11-24 理论教育 版权反馈
【摘要】:引入观察者类的头文件为:#include "vpObserver.h"。观察者类视图如图6.9.1所示。本节通过编码设置获取对观察者的控制。图6.9.1观察者类继承图图6.9.2定义观察者通过一个转换vpTransform 把观察者绑定在车上,这样就可以跟随车子一起运动,观察场景。其中,第5行与第6行通过转换就把观察者绑定到了汽车上,实现了要求。下一节将通过键盘来控制汽车的运动。

控制观察者的编码设置与绑定

引入观察者类的头文件为:#include "vpObserver.h"。

观察者类视图如图6.9.1所示。本节通过编码设置获取对观察者的控制。首先,要定义观察者,其代码如图6.9.2所示。

图6.9.1 观察者类继承图

图6.9.2 定义观察者

通过一个转换vpTransform 把观察者绑定在车上,这样就可以跟随车子一起运动,观察场景。在void PublicMember::CTS_Define(void)函数中,可以看到这样的配置代码:

pObserver_myObserver->setStrategy(pMotionDrive_myMotion);(www.daowen.com)

pObserver_myObserver->addChannel(pChannel_myChannel);

pObserver_myObserver->addAttachment(pEnv_myEnv);

pObserver_myObserver->setScene(PublicMember::CTS_pScene_myScene);

pObserver_myObserver->setLookFrom(pTransform_hummerTransform);

pObject_Hummer->addChild(pTransform_hummerTransform);

pObject_Hummer->setStrategy(pMotionDrive_myMotion);

仔细分析这7行代码:第1行为观察者设置策略,设置为驾驶模式;第2行为观察者添加通道;第3行为观察者添加附属物,添加了环境;第4行为观察者设置场景;第5行为观察者设置观察方向,就是以 pTransform_hummerTransform 转换为观察起点;第六行添加pTransform_hummerTransform 转换为汽车的“孩子”;第7行为汽车设置策略,设置为驾驶模式,与观察者的策略一致。其中,第5行与第6行通过转换就把观察者绑定到了汽车上,实现了要求。下一节将通过键盘来控制汽车的运动。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈