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
    评论
好的,我可以给你提供一个简单的思路,帮助你实现一个带有GUI界面和数据可的爬虫项目。 1. GUI界面:使用Python的Tkinter模块或PyQt等框架,创建一个图形用户界面,使用户可以输入爬虫需要爬取的网站链接和其他参数。例如,可以创建一个包含网站链接、爬取深度、爬取时间间隔等参数的表单,用户可以在表单中输入相应的参数。 2. 数据可:使用Python的Matplotlib、Seaborn等可库,对爬取到的数据进行可处理。例如,可以将数据绘制成折线图、散点图、柱状图等。 3. 爬虫:使用Python的requests、BeautifulSoup等爬虫库,编写爬虫程序,爬取网站上的数据,并将数据保存到本地文件中。在爬虫程序中,需要根据用户输入的参数,进行相应的处理,例如设置爬取的深度、爬取的时间间隔等。 4. 数据处理:使用Python的pandas等数据处理库,对爬取到的数据进行处理和清洗。例如,去除重复数据、处理缺失数据等。 5. 数据可:使用Python的Matplotlib、Seaborn等可库,对处理后的数据进行可处理,并在GUI界面上展示出来。例如,可以将数据绘制成折线图、散点图、柱状图等。 6. 数据存储:使用Python的pymysql等数据库库,将处理后的数据保存到数据库中。例如,可以将数据保存到MySQL或者SQLite等关系型数据库中。 综上所述,需要使用Python的Tkinter、Matplotlib、requests、BeautifulSoup、pandas、pymysql等库,进行GUI界面、数据可、爬虫、数据处理、数据存储等模块的开发。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值