python - 在python中修改vtk数组而不复制它
问题描述
我希望能够在 python 中修改 vtk 数组,而无需复制它们,修改它们,然后将它们添加回 vtk polydata。在 C++ 中,我假设使用引用是可行的。python中是否有类似的解决方案?
MWE如下
from os import read
import vtk as vtk
import numpy as np
from helpers.numpy_support import *
def main():
sphere = vtk.vtkPolyDataReader()
sphere.SetFileName('sphere.vtk')
sphere.Update()
polyData=sphere.GetOutput()
array = vtk_to_numpy(polyData.GetPointData().GetAbstractArray('Result'))
for a in array:
a*=5.0
writer = vtk.vtkPolyDataWriter()
writer.SetFileName('modifiedSphere.vtk')
writer.SetInputData(polyData)
writer.Write()
main()
解决方案
在迭代中使用索引可以解决问题!
for i in range(len(array)):
array[i]*=5
推荐阅读
- javascript - 由于 DST,ISO 日期发送不正确
- sql - Like函数在sql中没有正确解析
- go - How to Setup "Go" environment on Windows
- python - 没有名为 Pillow 的模块
- regex - 仅匹配选择组内的内容
- swift - 正则表达式获取组名?
- python - 我可以生成 Open API 3 Python Flask 服务器吗?
- javascript - 即使为 Google Maps Geolocation API 启用了所有 API,也获得“REQUEST_DENIED”
- javascript - 如何将 localStorage 中的数据添加到输入框中?
- apache - 如何更改 htaccess 上的根文件