Estou usando python 3.5 e mayavi 4.5.0 + vtk 7.1 (mayavi‑4.5.0+vtk71‑cp35‑cp35m‑win_amd64.whl baixado de http://www.lfd.uci.edu/~gohlke/pythonlibs/#mayavi ), e me deparei com um problema.
Tentei executar o exemplo draw-many-lines fornecido pela documentação oficial, mas recebo muitos avisos no vtkOutputWindow. As linhas serão desenhadas eventualmente, mas é muito lento porque você tem que esperar até que todos os avisos sejam impressos.
Como consertar isto? Obrigado.
O código está aqui:
http://docs.enthought.com/mayavi/mayavi/auto/example_plotting_many_lines.html
E os avisos são assim:
....
Aviso: Em D:\Build\VTK\VTK-7.1.1\Common\DataModel\vtkPolyData.cxx, linha 1023
vtkPolyData (00000150D4F16FE0): Construindo VTK_TRIANGLE 482 com menos de três pontos, mas VTK_TRIANGLE precisa de pelo menos três pontos. Verifique a entrada.
Aviso: Em D:\Build\VTK\VTK-7.1.1\Common\DataModel\vtkPolyData.cxx, linha 1023
vtkPolyData (00000150D4F16FE0): Construindo VTK_TRIANGLE 483 com menos de três pontos, mas VTK_TRIANGLE precisa de pelo menos três pontos. Verifique a entrada.
Aviso: Em D:\Build\VTK\VTK-7.1.1\Common\DataModel\vtkPolyData.cxx, linha 1023
vtkPolyData (00000150D4F16FE0): Construindo VTK_TRIANGLE 484 com menos de três pontos, mas VTK_TRIANGLE precisa de pelo menos três pontos. Verifique a entrada.
Aviso: Em D:\Build\VTK\VTK-7.1.1\Common\DataModel\vtkPolyData.cxx, linha 1023
vtkPolyData (00000150D4F16FE0): Construindo VTK_TRIANGLE 485 com menos de três pontos, mas VTK_TRIANGLE precisa de pelo menos três pontos. Verifique a entrada.
Aviso: Em D:\Build\VTK\VTK-7.1.1\Common\DataModel\vtkPolyData.cxx, linha 1023
vtkPolyData (00000150D4F16FE0): Construindo VTK_TRIANGLE 486 com menos de três pontos, mas VTK_TRIANGLE precisa de pelo menos três pontos. Verifique a entrada.
....
Instalei o py3-mayavi no Mac com MacPort e tive o mesmo problema: "vtkPolyData (0x7fac677c5290): Construindo VTK_TRIANGLE 99 com menos de três pontos, mas VTK_TRIANGLE precisa de pelo menos três pontos. Verifique a entrada."
Obrigado pelo problema, posso reproduzi-lo e parece que algo mudou no VTK 7.1 que quebra isso e tentarei trabalhar em uma correção na próxima semana.
Não há aviso quando crio lines
como tube
: lines= mlab.pipeline.tube(src, tube_radius=0.005, tube_sides=6)
.
@ying17zi Funciona! Você salvou o dia, obrigado!!
Alguma atualização nesse? O tubo realmente não funciona para mim.
Eu olhei para isso. Aparentemente, o problema é o filtro stripper, que só é necessário se você quiser usar tubos. Para linhas, você não precisa disso. Portanto, você pode abandonar a parte ofensiva se traçar apenas linhas. portanto
# The stripper filter cleans up connected lines
#lines = mlab.pipeline.stripper(src)
# Finally, display the set of lines
mlab.pipeline.surface(src, colormap='Accent', line_width=1, opacity=.4)
e funciona sem avisos.
Saúde.
Comentários muito úteis
Não há aviso quando crio
lines
comotube
:lines= mlab.pipeline.tube(src, tube_radius=0.005, tube_sides=6)
.