У меня есть основной привет мир программа libvtk рабочей следующим образом:ВТК: Базовая визуализация heightfield
#include "vtkGraphLayoutView.h"
#include "vtkRandomGraphSource.h"
#include "vtkRenderWindow.h"
#include "vtkRenderWindowInteractor.h"
int main(int, char*[])
{
vtkRandomGraphSource* source = vtkRandomGraphSource::New();
vtkGraphLayoutView* view = vtkGraphLayoutView::New();
view->SetRepresentationFromInputConnection(source->GetOutputPort());
view->ResetCamera();
view->Render();
view->GetInteractor()->Start();
source->Delete();
view->Delete();
return 0;
}
компилировать с:
$ g++ -I/usr/include/vtk-5.6 hello_vtk.cpp -lvtkInfovis -lvtkViews -lvtkFiltering
выполнить с:
$ ./a.out
У меня есть два набора данных, которые я хочу визуализировать, как по высоте:
Первый имеет вид:
double x1[N*M];
, представляющий собой N х M heightfield, где высота (I, J) является х [N * J + I]
Второй имеет вид:
map<pair<double, double>, double> x2;
где есть образец непрерывной поверхности из (I, J) высотой Н, представленного:
x2[make_pair(i,j)] = h
Очевидно, что экземпляр x2 может быть интерполирован, если необходимо, в x1.
Мой вопрос в том, какие классы следует использовать и каков эскиз реализации, необходимый для визуализации x1 и/или x2 в VTK?
(Есть ли сверху вниз документация ВТК? Это, кажется, очень большая библиотека и единственная ссылка, которую я мог найти это doxygene, который требует линейное время поиска, чтобы найти то, что вы ищете)