Pergunta

Alguém pode me apontar na direção certa de como desenhar várias linhas que parecem conectadas? eu encontrei vtkLine e os seus SetPoint1 e SetPoint2 funções. Então eu encontrei vtkPolyLine, mas não parece haver nenhuma função adicional, inserir ou definir para isso. O mesmo para vtkPolyVertex.

Existe uma função básica que me permite levar algum ponto no final de seus dados internos e simplesmente renderizá -los? Ou se não houver essa função/objeto, qual é o caminho a seguir aqui?

Em um tópico relacionado: não gosto muito do VTK. Existe um kit de ferramentas de visualização, talvez com funcionalidade limitada, é mais fácil de usar?

desde já, obrigado

Foi útil?

Solução

Para desenhar várias linhas, você deve primeiro criar uma classe VTKPoints que contém todos os pontos e, em seguida, adicione informações de conectividade para os pontos que você gostaria de conectados em linhas através de vtkpolydata ou vtkunstructuedGrid (que é sua classe vtkdataset; uma classe vtkdataset contém vtkpointss bem como as informações de conectividade para esses pontos). Depois que seu vtkdataset for construído, você pode seguir o caminho normal para renderizá-lo (mapero-> ator-> renderizador ...)

Por exemplo:

vtkPoints *pts = vtkPoints::New();
pts->InsertNextPoint(1,1,1);
...
pts->InsertNextPoint(5,5,5);

vtkPolyData *polydata = vtkPolyData::New();
polydata->Allocate();
vtkIdType connectivity[2];
connectivity[0] = 0;
connectivity[1] = 3;
polydata->InsertNextCell(VTK_LINE,2,connectivity); //Connects the first and fourth point we inserted into a line

vtkPolyDataMapper *mapper = vtkPolyDataMapper::New();
mapper->SetInput(polydata);

// And so on, need actor and renderer now

Existem muitos exemplos no site de documentação para todas as classes aqui são vtkpoints: http://www.vtk.org/doc/release/5.4/html/a01250.html

Se você clicar no link VTKPoints (testes), poderá ver os testes associados à classe. Ele fornece um monte de código de amostra diferente.

Além disso, a lista de discussão VTK provavelmente será muito mais útil do que o excesso de pilha.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top