当前位置: 首页 > news >正文

郑州网站设计制作哪家好摄影网站设计与实现

郑州网站设计制作哪家好,摄影网站设计与实现,如何建设网站网站,企业建站公司排名为什么不好做函数介绍 VTKPointPickerInteractorStyle是一个自定义的交互样式类,它是VTK库中vtkInteractorStyleTrackballCamera类的子类。VTK(Visualization Toolkit)是一个开源的,跨平台的库,用于处理、渲染和视觉化科学数据。它…

函数介绍

VTKPointPickerInteractorStyle是一个自定义的交互样式类,它是VTK库中vtkInteractorStyleTrackballCamera类的子类。VTK(Visualization Toolkit)是一个开源的,跨平台的库,用于处理、渲染和视觉化科学数据。它包括一系列的类和方法用于3D计算机图形、图像处理和可视化。

vtkInteractorStyleTrackballCamera是VTK中的一个交互样式类,它定义了用户与3D场景交互的方式,例如:旋转、缩放、平移等。VTKPointPickerInteractorStyle类继承了vtkInteractorStyleTrackballCamera类,并重写了一些方法,以自定义用户的交互行为。


class VTKPointPickerInteractorStyle : public vtkInteractorStyleTrackballCamera
{
public:static VTKPointPickerInteractorStyle* New();vtkTypeMacro(VTKPointPickerInteractorStyle, vtkInteractorStyleTrackballCamera);void setObjectIndex(int index) { m_index = index; }int getObjectIndex() const { return m_index; }VTKPointPickerInteractorStyle(){LastPickedActor = NULL;LastPickedProperty = vtkProperty::New();}virtual ~VTKPointPickerInteractorStyle(){LastPickedProperty->Delete();}virtual void OnLeftButtonUp() override{// Forward eventsvtkInteractorStyleTrackballCamera::OnLeftButtonUp();}virtual void OnLeftButtonDown() override{int* clickPos = this->GetInteractor()->GetEventPosition();this->Interactor->GetPicker()->Pick(clickPos[0], clickPos[1], 0,  // always zero.this->Interactor->GetRenderWindow()->GetRenderers()->GetFirstRenderer());double picked[3];this->Interactor->GetPicker()->GetPickPosition(picked);
//        std::cout << "Picked value: " << picked[0] << " " << picked[1] << " " << picked[2] << std::endl;// Forward eventsvtkInteractorStyleTrackballCamera::OnLeftButtonDown();}
//    virtual void OnMouseMove() override
//    {//    }private:vtkActor    *LastPickedActor;vtkProperty *LastPickedProperty;int m_index;};

被重写的方法还能保留之前的功能吗?重写一个方法会完全覆盖父类中的该方法的实现。但是,可以在子类的方法中显式调用父类的方法来保留父类的功能。

例如,在VTKPointPickerInteractorStyle类的OnLeftButtonDown方法中,在方法的最后,调用了vtkInteractorStyleTrackballCamera::OnLeftButtonDown()。这样,就可以在执行完VTKPointPickerInteractorStyle类的OnLeftButtonDown方法的自定义操作后,再执行vtkInteractorStyleTrackballCamera类的OnLeftButtonDown方法。这样做可以保证在执行完子类的自定义操作后,还能执行父类的操作。

设置回调

下面是用于设置回调,同时为了在鼠标点击窗口时确认当前窗口索引,将每个窗口的索引或objectName存储在类的某个成员变量中,并添加一个方法来检索它。

class VTKPointPickerInteractorStyle : public vtkInteractorStyleTrackballCamera
{...
public:void setObjectIndex(int index) { m_index = index; }int getObjectIndex() const { return m_index; }...
private:int m_index;
};

然后在创建VTKPointPickerInteractorStyle对象时设置索引i。

    for(int i=0;i<8;i++){vtkSmartPointer<VTKPointPickerInteractorStyle> style =vtkSmartPointer<VTKPointPickerInteractorStyle>::New();style->setObjectIndex(i);render[i]->GetInteractor()->SetInteractorStyle(style);}

将交互样式设置为 nullptr,也就是清除交互样式,回到默认的交互方法。

render[i]->GetInteractor()->SetInteractorStyle(nullptr);
http://www.yayakq.cn/news/879620/

相关文章:

  • 网站打开是404青岛网站设计模板
  • android网站开发个人网页制作方案
  • 深圳网站建设-中国互联福建省建住房建设部网站
  • 2018年公司做网站注意事项wordpress建站行吗
  • 网站信息平台建设方案在线crm在线oa免费观看
  • 铜山徐州网站开发O2O网站开发工程师
  • 湖南众诚建设网站怎么降低wordpress版本
  • 用ps做网站首页一级工程造价师
  • 广州万户网站公司濮阳建设企业网站公司
  • 网站优化排名方法有哪些怎么建设空包网站
  • 保定的网站建设前端开发线上培训
  • 网站建设有什么证dede淘宝客网站模板
  • 婚礼策划网站建设如何做自己的淘宝网站
  • 哪个网站是做包装材料珍珠棉包管国家建筑工程网查询证书
  • 被骗去国外做网站网站推广东莞网络推广网络推广
  • 佛山用户网站建站品牌设计公司深圳
  • 公司做网站需要哪些资料企业管理平台软件
  • 南阳商都网站做网站大数据获客
  • 一般网站开发公司新办公司流程及资料
  • 深圳app客户端做网站聚名网app下载
  • 湘潭网站建设公司有哪些软件开发工程师需要什么证书
  • 广州做网站厉害的公司长春标准网站建设
  • 南宁网站建设公司业绩wordpress打折插件
  • 网站开发app开发培训东莞专业建站公司费用
  • 北京网站建设 网站制作php 网站开发案例教程
  • 外贸小家电网站推广品牌营销增长好牌子推荐
  • 医院手机网站直播带货平台
  • 做网站要花多少钱牡丹江47号公告
  • 怎么向谷歌提交网站制作网站合同需注意
  • 专做化妆品网站如何打开wordpress