如何让paraview的camera命令同时生效
How can i make camera commands of paraview take effect simultaneously
晚上好,
我有一个脚本可以在 paraview 中旋转相机。看起来像这样。
camera.Elevation(45)
camera.Roll(90)
Render()
事实是,当相机从已经旋转的位置开始旋转第二个命令时,改变命令的顺序会改变最终方向。有没有办法让两个命令同时生效?
感谢您的任何建议
给定一个 vtkCamera 对象,有一个方法 ApplyTransform
允许您将 vtkTransform 对象应用到您的相机。
vtkTransform 对象具有比 vtkCamera 接口中公开的简单方法更多的转换方法。您甚至可以使用多个变换对象来构建一个变换系统。如果您已经有了相机的变换矩阵,您可以使用 SetMatrix
方法将它传递给 vtkTransform 对象。
您不能同时应用这两个命令。此外,这两个操作(Elevation 和 Roll)是不可交换的:
确实,你可以在这里看到:
https://www.paraview.org/Wiki/ParaView_and_Python
Roll(angle) 围绕 视图方向 和数据集原点定义的轴执行旋转。
由于使用或不使用Elevation会改变视图方向,因此最终结果也会改变。
晚上好, 我有一个脚本可以在 paraview 中旋转相机。看起来像这样。
camera.Elevation(45)
camera.Roll(90)
Render()
事实是,当相机从已经旋转的位置开始旋转第二个命令时,改变命令的顺序会改变最终方向。有没有办法让两个命令同时生效? 感谢您的任何建议
给定一个 vtkCamera 对象,有一个方法 ApplyTransform
允许您将 vtkTransform 对象应用到您的相机。
vtkTransform 对象具有比 vtkCamera 接口中公开的简单方法更多的转换方法。您甚至可以使用多个变换对象来构建一个变换系统。如果您已经有了相机的变换矩阵,您可以使用 SetMatrix
方法将它传递给 vtkTransform 对象。
您不能同时应用这两个命令。此外,这两个操作(Elevation 和 Roll)是不可交换的:
确实,你可以在这里看到: https://www.paraview.org/Wiki/ParaView_and_Python Roll(angle) 围绕 视图方向 和数据集原点定义的轴执行旋转。
由于使用或不使用Elevation会改变视图方向,因此最终结果也会改变。