μλ νμΈμ, μ λ μΌκ΅΄ μμμ ν΄λΉνλ λ°μ΄ν°κ° μλ μΌκ°ν λ©μ¬κ° μμ΅λλ€. μλ₯Ό λ€μ΄ #253μ μ루μ μ μ¬μ©νμ¬ νλ‘―ν μ μμ΅λλ€.
mesh = mlab.triangular_mesh(self.vertices[:,0], self.vertices[:,1], self.vertices[:,2], self.triangles,representation='wireframe',opacity=0)
mesh.mlab_source.dataset.cell_data.scalars = color
mesh.mlab_source.dataset.cell_data.scalars.name = 'Cell data'
mesh.mlab_source.update()
mesh2 = mlab.pipeline.set_active_attribute(mesh,cell_scalars='Cell data')
surf = mlab.pipeline.surface(mesh2)
κ·Έλ¬λ μμμ λ³κ²½ μ¬νμ μ λλ©μ΄μ μΌλ‘ λ§λλ λ°©λ²μ μ λͺ¨λ₯΄κ² μ΅λλ€. μλ₯Ό λ€μ΄,
@mlab.animate(delay=100)
def anim():
f = mlab.gcf()
for i in range(0,data.shape[0]):
mesh.mlab_source.dataset.cell_data.scalars = data[i,:]
mesh.mlab_source.dataset.cell_data.scalars.name = 'Cell data'
mesh.mlab_source.update()
mesh2 = mlab.pipeline.set_active_attribute(mesh,cell_scalars='Cell data')
mlab.pipeline.surface(mesh2)
yield
anim()
mlab.show()
μνλ λλ‘ λμ§λ§ μ λλ©μ΄μ μ΄ μ§νλ¨μ λ°λΌ μλκ° κΈκ²©ν λλ €μ Έ κ²°κ΅ μ¬μ©ν μ μκ² λ©λλ€. λ΄κ° μλνλ λλΆλΆμ λ³κ²½(μ: νμ΄νλΌμΈ λͺ λ Ή μ κ±°)μΌλ‘ μΈν΄ μ΄λ―Έμ§κ° μ ν μ λ°μ΄νΈλμ§ μμ΅λλ€. μΌκ΅΄ μμμ μ λ°μ΄νΈνλ λ€λ₯Έ μ΅μ μ΄ μμ΅λκΉ?
tvtk.PolyData
μλμΌλ‘ μμ±νμ¬ μ½λλ₯Ό λ§μ΄ μ 리νμ΅λλ€. κ·Έλ¬λ λ€λ₯Έ ν° λ³νλ λ¬Έμμ PolyData.modified()
λ©μλκ° κ·Έλ¦Όμ μ
λ°μ΄νΈνλ λ° μ¬μ©ν΄μΌ νλ€κ³ μ μνλ€λ κ²μ
λλ€. κ·Έλ¬λ μ΄κ²μ λλ₯Ό μν΄ μλνμ§ μμ΅λλ€. λμ VTKDataSource
κ° PolyData
λννλ―λ‘ VTKDataSource.update()
λ©μλλ₯Ό μ¬μ©ν΄μΌ ν©λλ€. νλ©΄ λΆλͺ¨
κ·Έλμ μ΅μ’ μμ μ½λλ
from mayavi import mlab
from tvtk.api import tvtk
polydata = tvtk.PolyData(points=self.vertices, polys=self.triangles)
polydata.cell_data.scalars = np.ravel(data[:,0].copy())
polydata.cell_data.scalars.name = 'celldata'
mesh = mlab.pipeline.surface(polydata)
@mlab.animate(delay=10)
def anim():
for i in range(0,data.shape[0]):
polydata.cell_data.scalars = np.ravel(data[:,i].copy())
polydata.cell_data.scalars.name = "celldata"
# polydata.modified() # does not work
mesh.parent.parent.update() # works
yield
anim()
mlab.show()
@RomeshA
μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ ν루λ μ΄νμ 보λ΄κ³ κ°μ μλ₯Ό λ°λ₯΄κ³ μμμ΅λλ€. λΉμ μκ² ν° κ°μ¬!
κ°μ₯ μ μ©ν λκΈ
@RomeshA
μ΄ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ ν루λ μ΄νμ 보λ΄κ³ κ°μ μλ₯Ό λ°λ₯΄κ³ μμμ΅λλ€. λΉμ μκ² ν° κ°μ¬!