You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

PyFluent中PyVista视图(相机)方位调整方法咨询

PyFluent中PyVista视图(相机)方位调整方法咨询

太懂你这种找不到资料的憋屈了!在PyFluent里用PyVista做3D结果可视化时,默认的等轴测视角确实经常不够用,调整相机方位其实用PyVista原生的相机控制方法就行,给你整理几个实用的思路:

  • 用预设快速切换视角
    PyVista内置了很多常用的预设视角,直接调用可视化对象的view_*系列方法就能切换,不用手动调参数:

    # 切换到X轴正方向视角(正视图)
    velocity_vector.view_x()
    # 切换到Y轴正方向视角(侧视图)
    velocity_vector.view_y()
    # 切换到Z轴正方向视角(俯视图)
    velocity_vector.view_z()
    # 切换回默认的等轴测视角
    velocity_vector.view_isometric()
    

    调用这些方法后再执行显示操作,就能看到对应的视角效果了。

  • 手动自定义相机参数(灵活度最高)
    如果预设视角满足不了需求,你可以直接操控相机的位置、焦点和上方向,完全自定义视角:

    # 获取当前可视化对象的活跃相机
    camera = velocity_vector.renderer.active_camera
    # 设置相机的位置(比如从(15, 10, 8)这个点看向模型)
    camera.position = (15, 10, 8)
    # 设置相机的焦点(镜头对准的点,一般可设为模型几何中心)
    camera.focal_point = (0, 0, 0)
    # 设置相机的"上"方向(默认是Z轴正方向,这里改成Y轴)
    camera.up = (0, 1, 0)
    # 刷新渲染,让视角生效
    velocity_vector.render()
    

    你可以反复调整position的数值,直到找到你想要的视角。

  • 交互调整后保存视角参数
    如果你是在交互界面(比如用鼠标拖拽调整到满意的视角),还能把当前相机参数保存下来,下次直接复用:

    # 先手动用鼠标调整到满意的视角
    # 然后打印当前相机的关键参数
    camera = velocity_vector.renderer.active_camera
    print("相机位置:", camera.position)
    print("焦点位置:", camera.focal_point)
    print("上方向:", camera.up)
    

    把打印出来的数值记下来,下次运行代码时直接设置这些参数,就能一键复现你想要的视角了。

另外要提一句,PyFluent里的这类可视化对象(比如你提到的velocity_vector)本质就是PyVista的Plotter或Actor实例,所以所有PyVista原生的相机控制方法都能用,不用局限于PyFluent的文档。

备注:内容来源于stack exchange,提问作者user2882635

火山引擎 最新活动