hi there friendly qt centre,
another newbie question... 
I'm trying to get vtk working with qt. I should also admit that I'm a nooby, so go easy. I'm trying to learn c++ for myself and have chosen the following configuration to get started;
OS: XP
toolkit: QT 4.5.1
IDE: QT Creator 1.2
VTK: 5.4.0
I downloaded and decompressed VTK "C:\vtk-5.4.0" on my system. I followed the instructions over on QT Forums to build VTK with cmake. I didn't forget to set VTK_USE_GUISUPPORT and VTK_USE_QVTK. I gave cmake the location of the source "C:/vtk-5.4.0" and specified a place to build the libraries "C:/vtk".
Thinking everything had gone smoothly, I proceeded with the simplest program I could get away with. The main class in my project is called VTK_Example.
main.cpp
#include <QtGui/QApplication>
#include "vtk_example.h"
int main(int argc, char *argv[])
{
VTK_Example w;
w.show();
return a.exec();
}
#include <QtGui/QApplication>
#include "vtk_example.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
VTK_Example w;
w.show();
return a.exec();
}
To copy to clipboard, switch view to plain text mode
VTK_example.cpp
#include "vtk_example.h"
#include <QVTKWidget.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include "ui_vtk_example.h"
VTK_Example
::VTK_Example(QWidget *parent
){
ui->setupUi(this);
QVTKWidget* vtkWidget;
vtkRenderer* ren;
vtkWidget
= new QVTKWidget
(this,
QFlag(0));
ui->verticalLayout->addWidget(vtkWidget);
ui->verticalLayout->update();
ren = vtkRenderer::New();
vtkWidget->GetRenderWindow()->AddRenderer(ren);
ren->SetBackground(1.0,0,0);
ren->Render();
}
VTK_Example::~VTK_Example()
{
delete ui;
}
#include "vtk_example.h"
#include <QVTKWidget.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include "ui_vtk_example.h"
VTK_Example::VTK_Example(QWidget *parent)
: QMainWindow(parent), ui(new Ui::VTK_Example)
{
ui->setupUi(this);
QVTKWidget* vtkWidget;
vtkRenderer* ren;
vtkWidget = new QVTKWidget(this,QFlag(0));
ui->verticalLayout->addWidget(vtkWidget);
ui->verticalLayout->update();
ren = vtkRenderer::New();
vtkWidget->GetRenderWindow()->AddRenderer(ren);
ren->SetBackground(1.0,0,0);
ren->Render();
}
VTK_Example::~VTK_Example()
{
delete ui;
}
To copy to clipboard, switch view to plain text mode
I included the following lines in my VTK_App.pro
LIBS += -LC:/vtk -lvtkCommon -lvtksys -lQVTK -lvtkQtChart -lvtkViews -lvtkWidgets -lvtkInfovis -lvtkRendering -lvtkGraphics -lvtkImaging -lvtkIO -lvtkFiltering -lvtklibxml2 -lvtkDICOMParser -lvtkpng -lvtkpng -lvtktiff -lvtkzlib -lvtkjpeg -lvtkalglib -lvtkexpat -lvtkverdict -lvtkmetaio -lvtkNetCDF -lvtksqlite -lvtkexoIIc -lvtkftgl -lvtkfreetype -lvtkHybrid
INCLUDEPATH += C:/vtk
LIBS += -LC:/vtk -lvtkCommon -lvtksys -lQVTK -lvtkQtChart -lvtkViews -lvtkWidgets -lvtkInfovis -lvtkRendering -lvtkGraphics -lvtkImaging -lvtkIO -lvtkFiltering -lvtklibxml2 -lvtkDICOMParser -lvtkpng -lvtkpng -lvtktiff -lvtkzlib -lvtkjpeg -lvtkalglib -lvtkexpat -lvtkverdict -lvtkmetaio -lvtkNetCDF -lvtksqlite -lvtkexoIIc -lvtkftgl -lvtkfreetype -lvtkHybrid
INCLUDEPATH += C:/vtk
To copy to clipboard, switch view to plain text mode
When I try to build this simple program, I get the following errors;
C:/<snip>/code/VTK_App/vtk_example.cpp:2: QVTKWidget.h: No such file or directory
C:/<snip>/code/VTK_App/vtk_example.cpp:2: vtkRenderer.h: No such file or directory
C:/<snip>/code/VTK_App/vtk_example.cpp:2: vtkRenderWindow.h: No such file or directory
...
C:/<snip>/code/VTK_App/vtk_example.cpp:2: QVTKWidget.h: No such file or directory
C:/<snip>/code/VTK_App/vtk_example.cpp:2: vtkRenderer.h: No such file or directory
C:/<snip>/code/VTK_App/vtk_example.cpp:2: vtkRenderWindow.h: No such file or directory
...
To copy to clipboard, switch view to plain text mode
One of my theories is that cmake hasn't built VTK correctly. My C:\vtk\bin folder is completely empty.
Can anyone shed some light on where I've gone astray?
Any help would be greatly appreciated.
All the best,
floyd
Bookmarks