TVTK - 标量数据可视化

Python科学计算三维可视化
黄天羽嵩天

TVTK可视化实例

标量数据可视化

  • tvtk.ContourFilter():等值面过滤器

    • generate_values(): 设定n条等值线的值,一般用于重新绘制等值线
    • set_value(): 设定一条等值线的值,一般用于覆盖某条等值线或者新增加一条等值线
  • from tvtk.api import tvtk
    from tvtkfunc import ivtk_scene, event_loop
    
    plot3d = tvtk.MultiBlockPLOT3DReader(
          xyz_file_name="combxyz.bin", q_file_name="combq.bin",
          scalar_function_number=100, vector_function_number=200
      )  #读入Plot3D数据
    plot3d.update()  #让plot3D计算其输出数据
    grid = plot3d.output.get_block(0)  #获取读入的数据集对象
    
    con = tvtk.ContourFilter()  #创建等值面对象  
    con.set_input_data(grid)
    con.generate_values(10, grid.point_data.scalars.range)  #指定轮廓数和数据范围
    
    #con.set_value(0, 0.3)
    
    
    
    #设定映射器的变量范围属性
    
    m = tvtk.PolyDataMapper(scalar_range = grid.point_data.scalars.range,
                          input_connection=con.output_port)
    a = tvtk.Actor(mapper = m)
    a.property.opacity = 0.5  #设定透明度为0.5
    
    #窗口绘制
    
    win = ivtk_scene(a)
    win.scene.isometric_view()
    event_loop()

    这里写图片描述

  • con.generate_values(4, grid.point_data.scalars.range)
    这里写图片描述

  • con.set_value(0,0.5):指定等值面和对应的等值面的值
    这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值