python VTK(十七) ----图形处理 数据生成与显示

本文探讨了vtkPolyData在Python VTK中的重要性,它包含几何、拓扑和属性数据,用于构建模型。几何数据是点集,拓扑数据描述点之间的连接,而属性数据涉及标量、向量和张量。文章还提到了一些常见的vtkPolyData数据源类,并讲解了如何创建和处理vtkPolyData的属性数据。
摘要由CSDN通过智能技术生成

vtkPolyData主要由几何结构数据、拓扑结构数据和属性数据组成。

  • 几何结构数据主要是组成模型的点集
  • 拓扑结构数据时由这些点根据一定的连接关系组成的单元数据,表明了几何点集之间的拓扑关系
  • 属性数据与几何结构数据和拓扑结构数据相关联,属性数据可以是标量、向量或者张量。
import vtk
# vtkPolyData数据生成与显示
conSource = vtk.vtkConeSource()  # 定义了一个椎体的图形数据
conSource.Update()

cone = conSource.GetOutput()
nPoints = cone.GetNumberOfPoints()  # 获取图形数据的点数
nCells = cone.GetNumberOfCells()  # 获取图形数据的单元数目
print('Points number:', nPoints)
print('Cells number:', nCells)
# 图形渲染与图像渲染基本一致
mapper = vtk.vtkPolyDataMapper()
mapper.SetInputData(cone)

actor = vtk.vtkActor()
actor.SetMapper(mapper)

renderer = vtk.vtkRenderer()
renderer.AddActor(actor)
renderer.SetBackground(1.0, 1.0, 1.0)

renderWindow = vtk.vtkRenderWindow()
renderWindow.AddRenderer(renderer)
renderWindow.SetSize(640, 480)
renderWindow.Render()
renderWindow.SetWindowName('PolyDataSource')

renderWindowInteractor = vtk.vtkRenderWindowInteractor()
renderWindowInteractor.SetRenderWindow(renderWindow)
renderWindowInteractor.Initialize()
renderWindowInteractor.Start()

在这里插入图片描述
VTK常见的vtkPolyData数据源类
在这里插入图片描述
vtkPolyData数据的创建

import vtk
points = vtk.vtkPoints()  # 用于存储点集合
points.InsertNextPoint(0.0, 0.0, 0.0)  # 可以顺序地为其添加点并返回点的索引,从0开始
points.InsertNextPoint(1.0, 0.0, 0.0)
points.InsertNextPoint(1.0, 1.0, 0.0)
points.InsertNextPoint(0.0, 1.0, 0.0)
points.InsertNextPoint(2.0, 0.0, 0.0)

polygon = vtk.vtkPolygon()  # 定义一个多边形单元
polygon.GetPointIds().SetNumberOfIds(4) # 需要指定组成该单元的点数,若给定3,则表示三角形
polygon.GetPointIds().SetId(0, 0)  # 为指定的点设置索引,注意该索引必须是vtkPoints
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值