vtkLine 和 vtkLineSource生成直线可视化(生成的直线有什么不一样吗)

已知两个点:StartPoint,EndPoint,用vtk可视化其确定的直线:

1、vtkLineSource

vtkSmartPointer<vtkLineSource> lineSource= vtkSmartPointer<vtkLineSource>::New();
lineSource->SetPoint1(Pointbegin);
lineSource->SetPoint2(Pointend);//两点确定一条直线
lineSource->Update();

2、vtkLine

      vtkSmartPointer<vtkPoints> Points = vtkSmartPointer<vtkPoints>::New();
      Points->InsertNextPoint(StartPoint[0],StartPoint[1],StartPoint[2]);
      Points->InsertNextPoint(EndPoint[0],EndPoint[1],EndPoint[2]);//返回该点的索引值
      vtkSmartPointer<vtkLine> Line = vtkSmartPointer<vtkLine>::New();
      Line->GetPointIds()->SetId(0,0);
      Line->GetPointIds()->SetId(1,1);
      vtkSmartPointer<vtkCellArray> Cell = vtkSmartPointer<vtkCellArray>::New();
      Cell->InsertNextCell(Line);
      vtkSmartPointer<vtkPolyData> Polydata=vtkSmartPointer<vtkPolyData>::New();
      Polydata->SetPoints(Points);//几何结构
      Polydata->SetLines(Cell);//拓扑结构
      vtkSmartPointer<vtkPolyDataMapper>Mapper=
      vtkSmartPointer<vtkPolyDataMapper>::New();
      Mapper->SetInputData(Polydata);
      vtkSmartPointer<vtkActor> Actor = vtkSmartPointer<vtkActor>::New();
      Actor->SetMapper(Mapper);



vtk的数据集如vtkpolydata、vtkImageData等均由几何结构与拓扑结构组成,对应 Polydata->SetPoints(Points)与 Polydata->SetLines(Cell)。vtkCellArray类是确定拓扑结构的,本文所示的是生成直线,用SetLine实现。 
VTK里与数据集对应的类是vtkDataSet,vtkDataSet-》vtkImageData vtkDataSet-》vtkPointSet-》vtkPolydata。vtkDataSet 由组织结构与属性数据组成,组织结构由几何结构与拓扑结构组成。属性数据可以没有,vtkPointData(点数据)类和vtkCellData(单元数据)类表达数据集属性。

原文:https://blog.csdn.net/Zzhouzhou237/article/details/72953530 
 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值