instalacao, compilacao e utilizacao do vtktavares/ensino/visci/downloads...interfaces para as...
TRANSCRIPT
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 1
url: http://www.fe.up.pt/~tavares/ensino/VISCI/visci.html
Visualização Científica – Instalação, Compilação e Utilização do VTK
João Manuel R. S. TavaresJorge Gomes Barbosa
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 2
Sumário1. Bibliografia2. Arquitectura do VTK3. Ficheiros a obter
1. Instalação binária (Microsoft Windows)2. Interfaces para as linguagens interpretadas3. Compilação da biblioteca
4. Instalação binária5. Compilação da biblioteca6. Utilização da biblioteca
1. Estrutura dos directórios2. Utilizando a linguagem Tcl3. Utilizando a linguagem C++
4. Utilizando num projecto MFC5. Classes predefinidas: Sources, Filtros e Mappers
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 2
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 3
Bibliografia• The Visualization Toolkit (3rd Edition)
Will Schroeder, Ken Martin, Bill LorensenISBN 1-930934-07-6Kitware, Inc. publishers
• VTK User’s Guide (VTK 4.2)Will Schroeder, Ken MartinISBN 1-930934-08-4Kitware, Inc publishers
• Mastering CMake (CMake 1.8)Ken Martin, Bill HoffmanISBN 1-930934-09-2Kitware, Inc publishers
Disponíveis para compra on-line em: http://www.vtk.org/buy-books.php
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 4
Arquitectura do VTK• O VTK é composto por um núcleo (core) compilado (escrito
em linguagem C++) com as devidas interfaces para várias linguagens interpretadas.
C++
core
Interpreter
Interpreted Wrapper (Tcl, Java, Python)
Núcleo C++
Instalação Binária: para utilizaras classes no desenvolvimentode uma aplicação
Instalação do código fonte: para estender o VTK
•Fonte Tcl/Tk•Java JDK•Fonte Python
Código fonte de todasas classes (pode levarhoras a compilar)
Bibliotecas e includes(ficheiros dll, bin e .h)ou(ficheiros .a e .h)
•Tcl/Tk shell•Interpretador Java•Interpretador Python
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 3
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 5
Arquitectura do VTK
Camada do Hardware (Windows/Linux/Unix/Mac OS X)
Aspectoscomputacionais
Bibliotecagráfica 3D Interface gráfica
para o utilizador (GUI)
Programa próprios em C++
Open GL
VTK
Tcl / Tk(ou Python/Tk
ou Java)
Programa próprios em Tcl/Tk (ou Python, Java)
Estrutura Multi-plataforma
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 6
• Como obter:– A partir dos CD’s que acompanham os livros
da Kitware sobre o VTK;– Fazendo o download:
• http://public.kitware.com/VTK/index.php• ftp://public.kitware.com/pub/vtk• http://public.kitware.com/VTK/files/
– Existem diferentes versões disponíveis:» VTK 4.X (versão oficial);» VTK Nightly Release (versão diária – não oficial)» VTK CVS (últimas modificações – não oficial,
verificar o estado da versão – estável ou não)
Ficheiros a obter
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 4
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 7
• Ficheiros (sistemas Windows):– Instalação da biblioteca executável (Binary)
• Descarregar a versão executável do núcleo da biblioteca VTK: vtkXXCore.exe;
• Executar vtkXXCore.exe para instalar a biblioteca.– Instalação dos includes e das bibliotecas necessárias para o
desenvolvimento utilizando a linguagem C++
• Descarregar o ficheiro: vtkXXCpp.exe;• Executar vtkXXCpp.exe para instalar.
– As duas instalações anteriores podem ser conseguidas de uma só vez através da obtenção do ficheiro vtkXX-LatestRelease.exe, ou do ficheiro vtkXXX.exe, e sua execução.
– Instalação das interfaces para linguagens interpretadas• Descarregar as versões executáveis para suporte das linguagens
interpretadas: vtkXXTcl.exe, vtkXXJava.exe, vtkXXPython.exe;• Executar o executável da interface desejada: vtkXXTcl.exe, ...
– Instalação do código fonte• Descarregar as fontes do VTK: vtkXXSrc.zip (ou VTK-X.X-
LatestRelease.zip);• Descomprimir as fontes;• Descarregar o CMake: CMSetupXXX.exe;• Executar o CMake para configurar o projecto VTK;• Compilar o projecto (compilador necessário, por exemplo o
Microsoft VC++ 6.0).
Ficheiros a obter
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 8
Instalação da biblioteca executável • Com este tipo de instalação pode-se executar, após a
respectiva compilação, os programas exemplo em C++
incluídos com o VTK, desenvolver programas em C++
e liga-los à biblioteca VTK.
• O tipo de instalação mais fácil e recomendado para utilizadores principiantes.
• Obter os ficheiros vtkXXCore.exe e vtkXXCpp.exe(para C++) e executa-los (ou obter o ficheiro vtkXX-LatestRelease.exe, ou vtkXXX.exe, e executa-lo).
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 5
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 9
Instalação da biblioteca executável • Execução do ficheiro vtk423.exe:
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 10
Instalação da biblioteca executável • Estrutura dos directórios da biblioteca após
instalação do ficheiro vtk423.exe:
Estão incluídos: os binários, as bibliotecas, exemplos (em C++, Java, Phyton e Tcl), os includes (C++), e as interfaces para as linguagens interpretadas.
Directório vtk42
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 6
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 11
Instalação da biblioteca executável • Estrutura dos directórios da biblioteca após
instalação do ficheiro vtk423.exe:Directório vtk42\bin
Inclui as dll’s (bibliotecas dinâmicas) para a ligação aos programas desenvolvidos e os executáveis das interfaces para as linguagens interpretadas .
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 12
Instalação da biblioteca executável • Estrutura dos directórios da biblioteca após
instalação do ficheiro vtk423.exe:Directório vtk42\Examples
Inclui vários exemplos em Java, Phyton, Tcl e C++.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 7
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 13
Instalação da biblioteca executável • Estrutura dos directórios da biblioteca após
instalação do ficheiro vtk423.exe:Directório vtk42\include
Inclui os header’s para o desenvolvimento usando a linguagem C++.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 14
Instalação da biblioteca executável • Estrutura dos directórios da biblioteca após
instalação do ficheiro vtk423.exe:Directório vtk42\lib
Inclui as lib’s (bibliotecas estáticas) para ligar a biblioteca VTK aos programas desenvolvidos e para as interfaces das linguagens interpretadas.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 8
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 15
Instalação da biblioteca executável • Estrutura dos directórios da biblioteca após
instalação do ficheiro vtk423.exe:Directório vtk42\Wrapping
Ficheiros de interface para as linguagens interpretadas.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 16
Instalação da biblioteca de desenvolvimento em Tcl/Tk• Obter e executar o ficheiro tcl832.exe para a
instalação (necessária para desenvolver programas em Tcl/Tk):
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 9
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 17
Instalação da biblioteca de desenvolvimento em Python• Obter e executar o ficheiro
Python-2.1.1.exe para a instalação (necessária para desenvolver programas em Python):
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 18
Instalação da biblioteca de desenvolvimento em Java• Obter e executar o ficheiro
j2sdk-1_3_1_07-windows-i586.exe para a instalação (necessária para desenvolver programas em Java):
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 10
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 19
Instalação de dados exemplo• Obter e descomprimir o ficheiro
VTKData-4.2.zip:Directório vtk42\VTKData-release-4-2
Inclui vários ficheiros de dados de exemplo (de diferentes tipos – incluindo imagens).
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 20
Instalação dos sistemas de ajuda• Obter e descomprimir o ficheiro
VTKDocHtml-4.2.tar.gz:
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 11
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 21
Instalação dos sistemas de ajuda• Obter o ficheiro VTKDoc-4.2.chm:
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 22
Compilação da biblioteca• Pré-requisitos:
– Compilador instalado (por exemplo o Microsoft Visual Studio C++ 6.0);
– Descompactador instalado (por exemplo o winzip);
– Instalação prévia do VTK completamente removida: fazer uma busca completa por vtk*.dll e apagar todas as dll’s encontradas.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 12
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 23
Compilação da biblioteca• Obter e descomprimir o ficheiro VTK-4.2-
LatestRelease.zip
Directórios resultantes da descompressão: (sources dabiblioteca + exemplos)
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 24
Compilação da biblioteca• Verificar o ficheiro README.html (existente
no directório raiz dassources): introdução,copyright, organização,documentação,instalação, resolução de problemas, informações.
Instruções para compilar a biblioteca VTK em sistemas Unix, Cygwin e MS Windows.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 13
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 25
Compilação da biblioteca• Obter e instalar o CMake (download em
http://www.cmake.org/HTML/Download.html).• O CMake é uma ferramenta multi-plataforma aberta
(Windows, Unix, ...) para configurar e gerir o processo de compilação de sistemas (aplicações).
• Ficheiros simples e independentes da plataforma (CMakeLists.txt) são utilizados para descrever o processo de compilação e resolver as dependências.
• Quando o CMake é executado, gere ficheiros nativos de compilação para o sistema de desenvolvimento (compilador) em causa.– Por exemplo, para o Microsoft Visual C++ são criados os
devidos workspaces.• O CMake tem uma interface gráfica para configurar a
compilação pretendida.• Deve ser utilizado para configurar a compilação da
biblioteca e também dos exemplos incluídos no vtk.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 26
Compilação da biblioteca• Exemplo de um ficheiro CMakeLists.txt:
• Instalação do CMake:Executar o ficheiroCMSetupXXX.exe.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 14
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 27
Compilação da biblioteca• Utilizar o CMake para configurar o projecto
da biblioteca VTK para o Microsoft Visual C++:1. Executar o CMake (Grupo CMake, Programa
CMakeSetup);2. Definir o directório com os ficheiros fonte (as
sources), o directório para os binários e seleccionar o compilador a utilizar;
3. Clicar no botão Configure;4. Seleccionar as opções de compilação;5. Clicar novamente no botão Configure;6. Repetir 4 e 5 até o processo estar totalmente
configurado;7. Clicar no botão OK para terminar.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 28
Compilação da biblioteca• Utilizar o CMake para configurar o projecto da
biblioteca VTK para o MS VC++:
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 15
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 29
Compilação da biblioteca• Exemplo de configuração pelo CMake do
projecto da biblioteca VTK para o MS VC++:– Where is the source code: C:\VTK\– Where to build the binaries: C:\vtkbin\– VTK WRAP TCL EXE=C:/vtkbin/bin/$(IntDir)/vtkWrapTcl.exe– VTK WRAP HINTS=C:/VTK/Wrapping/hints– VTK USE 64BIT IDS=OFF– VTK MANGLE MESA=OFF– VTK DISPLAY WIN32 WARNINGS=OFF– VTK DEBUG LEAKS=OFF– TK XLIB PATH=C:/Tcl/include– TK WISH=C:/Tcl/bin/wish83.exe– TK LIBRARY=C:/Tcl/lib/tk83.lib– TK INTERNAL PATH=C:/VTK/Rendering/tkInternals/tk83– TK INCLUDE PATH=C:/Tcl/include– TCL TCLSH=C:/Tcl/bin/tclsh83.exe– TCL LIBRARY=C:/Tcl/lib/tcl83.lib– TCL INCLUDE PATH=C:/Tcl/include– ...
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 30
Compilação da biblioteca• Exemplo de configuração pelo CMake do
projecto da biblioteca VTK para o MS VC++:– ...– LIBRARY OUTPUT PATH=C:/vtkbin/bin– EXECUTABLE OUTPUT PATH=C:/vtkbin/bin– CMAKE USE WIN32 THREADS=ON– CMAKE MAKE PROGRAM=msdev– CMAKE EXTRA LINK FLAGS=/STACK:10000000– CMAKE CXX FLAGS RELWITHDEBINFO=/MD /Zi /O2– CMAKE CXX FLAGS RELEASE=/MD /O2– CMAKE CXX FLAGS MINSIZEREL=/MD /O1– CMAKE CXX FLAGS DEBUG=/MDd /Zi /Od /GZ– CMAKE CXX COMPILER=cl– CMAKETEST COMMAND=NOTFOUND– BUILD DOCUMENTATION=OFF– BUILD EXAMPLES=ON– BUILD SHARED LIBS=ON (para criar as dll’s)– BUILD TESTING=ON– ...
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 16
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 31
Compilação da biblioteca• Exemplo de configuração pelo CMake do
projecto da biblioteca VTK para o MS VC++:– ...– CMAKE CXX FLAGS=/W3 /Zm1000 /GX /GR– DART ROOT=NOTFOUND– OPENGL LIBRARY=opengl32– VTK DATA ROOT=C:/VTKData– VTK USE ANSI STDLIB=OFF– VTK USE HYBRID=ON– VTK USE MATROX IMAGING=OFF– VTK USE PARALLEL=OFF– VTK USE PATENTED=ON– VTK USE RENDERING=ON– VTK USE VIDEO FOR WINDOWS=OFF– VTK USE VOLUMEPRO=OFF– VTK WRAP JAVA=OFF– VTK WRAP PYTHON=OFF– VTK WRAP TCL=ON
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 32
Compilação da biblioteca• Utilizar o CMake para configurar o projecto da
biblioteca VTK em Unix:Interface gráfica do CMake em Unix
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 17
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 33
Compilação da biblioteca• Compilar a biblioteca VTK utilizando o
Microsoft Visual C++:1.Executar o Microsoft Visual C++;2.Abrir o workspace
VTK.dsw existentena pasta seleccionadano CMake para osbinários;
3.Compilar a bibliotecanos modos Releasee Debug (opção Build,do menu Build).
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 34
Compilação da biblioteca• Acrescentar os directórios dos binários na
path do sistema operativo (necessário para executar os programas desenvolvidos).Por exemplo:– C:/vtkbin/bin/release– C:/vtkbin/bin/debug
• Acrescentar TCLLIBPATH=c:/vtk/wrapping/tclcomo uma variável do ambiente do sistema operativo (necessário para a interface Tcl).
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 18
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 35
Compilação da biblioteca• Configurar o ambiente do sistema operativo MS
Windows XP:
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 36
Compilação da biblioteca• Configurar o ambiente do sistema operativo MS
Windows XP (cont.):
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 19
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 37
Editar e executar um programa em Tcl• Via Microsoft Explorer:
– Procurar o ficheiro fonte do programa pretendido; por exemplo C:\ProgramFiles\vtk42\Examples\GUI\Tcl\MaceTk.tcl
– ...
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 38
Editar e executar um programa em Tcl• Via Microsoft Explorer:
– ...– Seleccionar o ficheiro
pretendido e clicar nobotão direito do rato;
– Seleccionar Edit paraeditar o ficheiro;
– Seleccionar Open Withe depois vtk para oexecutar.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 20
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 39
Editar e executar um programa em Tcl• Via Microsoft Explorer:
– Seleccionando Edit paraeditar o ficheiro.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 40
Editar e executar um programa em Tcl• Via Microsoft Explorer:
– Seleccionando Open With e depois vtk para oexecutar.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 21
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 41
Editar e executar um programa em Tcl• Via Microsoft Explorer:
– Caso o vtk não esteja presente na lista de OpenWith (1ª vez):
• Seleccionar Choose Program ...;• ...
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 42
Editar e executar um programa em Tcl• Via Microsoft Explorer:
– Caso o vtk não esteja presente na lista de OpenWith (1ª vez):
• ...• Clicar em Browse...;• ...
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 22
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 43
Editar e executar um programa em Tcl• Via Microsoft Explorer:
– Caso o vtk não esteja presente na lista de OpenWith (1ª vez):
• ...• Procurar o ficheiro vtk.exe (em C:\Program
Files\vtk42\bin);• Seleccionar o
ficheiro vtk.exe;• Clicar em Open.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 44
Editar e executar um programa em Tcl• Via Consola Tcl:
– Executar o programa wish83.exe (Grupo Tclopção Wish);
– Na consola Tcl fazer o comando cd para mudar para o directório do ficheiro pretendido;
– Escrever vtk e o nome do ficheiro a executar.
Executar
Listar directório
Mudar de directório
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 23
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 45
Configurar o Microsoft Visual C++
• Adicionar os directórios de includes do VTK (apenas necessário realizar uma vez):– No menu Tools do Microsoft Visual C++
seleccionar a opção Options;– Na caixa de diálogo Options seleccionar a aba
Directories;– ...
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 46
Configurar o Microsoft Visual C++
• Adicionar os directórios de includes do VTK (apenas necessário realizar uma vez):– ...– Adicionar os directórios das sources:
• ...\Common• ...\Filtering• ...\VTK\Graphics• ...\Hybrid• ...\Imaging• ...\IO• ...\Parallel• ...\Patented• ...\Rendering• ...\vtkbin
– Clicar no botão OK para terminar.
adicionar removerordem
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 24
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 47
Configurar o Microsoft Visual C++
• Adicionar os directórios de includes do VTK (apenas necessário realizar uma vez):– ...– No caso da instalação binária, basta
acrescentar o directórioC:\Program Files\vtk42\include\vtk.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 48
Configurar o Microsoft Visual C++
• Adicionar os directórios das bibliotecas do VTK (apenas necessário realizar uma vez):– No menu Tools do Microsoft Visual C++
seleccionar a opção Options;– Na caixa de diálogo Options seleccionar a aba
Directories;– Adicionar os directórios
das bibliotecas;– Clicar no botão OK
para terminar.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 25
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 49
Configurar o Microsoft Visual C++
• Adicionar os directórios das bibliotecas do VTK (apenas necessário realizar uma vez):– ...– No caso da instalação binária, basta
acrescentar o directórioC:\Program Files\vtk42\lib\vtk.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 50
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• Iniciar o Microsoft Visual C++;• Iniciar um novo projecto do tipo Win32
Console Application (opção New... do menu File);
• Definir o nomedo projecto;
• Definir o directóriopara o projecto;
• Clicar no botãoOK para terminar;
• ...
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 26
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 51
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• ...• Optar por um projecto vazio;• Clicar no botão
Finish;• Verificar as propriedades
do projecto;• Clicar no botão OK;• ...
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 52
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• ...• Adicionar o ficheiro source pretendido (clicar
no botão direito do ratosobre a pasta source e seleccionarAdd Files to Folder..., escolher oficheiro pretendido, clicar nobotão OK);
• ...
(C:\ProgramFiles\vtk42\Examples\Rendering\Cxx)
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 27
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 53
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• ...• Editar o ficheiro source: duplo clique sobre o
nome do ficheiro no explorer do projecto;• ...
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 54
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• ...• Adicionar as bibliotecas do VTK ao projecto:
– no menu Project seleccionar a opção Settings...;
– Adicionar (para a versão em causa –Debug/Release) as bibliotecas (só as necessárias):
• vtkCommon.lib vtkexpat.lib vtkFiltering.libvtkfreetype.lib vtkGraphics.lib vtkftgl.lib vtkHybrid.libvtkImaging.lib vtkIO.lib vtkjpeg.lib vtkpng.libvtkRendering.lib vtktiff.lib vtkzlib.lib vtkPatented.lib(só disponível na versão de compilação da biblioteca)
• Clicar no botão OK;• ...As dll’s e as bin’s da biblioteca VTK compiladas em modo debugestão disponíveis para download emhttp://www.fe.up.pt/~tavares/ensino/VISCI/visci.html
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 28
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 55
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• ...• Adicionar as bibliotecas do VTK ao projecto:
Bibliotecas necessárias:
vtkCommon.libvtkFiltering.libvtkGraphics.libvtkRendering.lib
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 56
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• ...• Compilar o ficheiro source pretendido: menu
Build opção Compile xxxx.xx;• Criar o projecto: menu Build opção Build
xxxx.xx;• Executar o projecto: menu Build opção
Execute xxxx.xx.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 29
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 57
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• Utilizando o CMake para configurar o projecto exemplo para o Microsoft Visual C++: – Executar o programa CMakeSetup;– Configurar adequadamente o CMake:
• Seleccionar o directório das sources, por exemplo C:\Program Files\vtk42\Examples\DataManipulation\Cxx;
• Escolher o directório dos binários pretendido;• Clicar no botão Configure;• Clicar novamente no botão Configure;• Clicar no botão OK para terminar;
– ...
Quando se utiliza o CMake para configurar o projecto pretendido, não é necessária realizar nenhuma configuração adicional no Microsoft Visual C++ (includes, libs ...). Todas as configurações necessárias são realizadas pelo CMake. Nota: É necessário existir o devido ficheiro CMakeLists.txt no directório das sources.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 58
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• Utilizando o CMake para configurar o projecto para o Microsoft Visual C++:
D:\Aulas\Visualizacao\Acetatos\VTK\Exemplos\Cxx CMake
C:\Program Files\vtk42\Examples\DataManipulation\Cxx
MS VC++
Clicar no botão Configure.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 30
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 59
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• Utilizando o CMake para configurar o projecto para o Microsoft Visual C++:
Clicar no botão Configure.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 60
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• Utilizando o CMake para configurar o projecto para o Microsoft Visual C++:
Clicar no botão OK.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 31
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 61
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• Iniciar o Microsoft Visual VC++;• Abrir o projecto em causa: no menu File
escolher a opção Open Workspace...;• Escolher o ficheiro
do projecto napasta dos bináriosespecificada noCMake;
• Clicar nobotão Open;
• ...
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 62
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• ...• Compilar o projecto:
opção Build do menuBuild;
• ...(Os subprojectosnão desejados podem ser retirados)
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 32
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 63
Compilar um ficheiro Cxx exemplo doVTK no Microsoft Visual C++
• ...• Executar o projecto:
opção Execute do menuBuild (pode ser necessário seleccionar o executável desejado – existente na pasta debug ou release do projecto).
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 64
Compilar um projecto MFC exemplo doVTK no Microsoft Visual C++
• Utilizar o CMake para criar o projecto pretendido para o MS VC++:– Executar o programa CMakeSetup;– Configurar adequadamente o CMake:
• Seleccionar o directório das sources C:\ProgramFiles\vtk42\Examples\GUI\Win32\SampleMFC;
• Escolher o directório dos binários pretendido;• Clicar no botão Configure;• Clicar novamente no botão Configure;• Clicar no botão OK para terminar;
– ...
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 33
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 65
Compilar um projecto MFC exemplo doVTK no Microsoft Visual C++
• Utilizar o CMake para criar o projecto pretendido para o MS VC++:– ...
D:\Aulas\Visualizacao\Acetatos\VTK\Exemplos\MFC_1
C:\Program Files\vtk42\Examples\GUI\Win32\SampleMFC
MS VC++
Clicar no botão Configure.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 66
Compilar um projecto MFC exemplo doVTK no Microsoft Visual C++
• Utilizar o CMake para criar o projecto pretendido para o MS VC++:– ...
Clicar no botão Configure.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 34
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 67
Compilar um projecto MFC exemplo doVTK no Microsoft Visual C++
• Utilizar o CMake para criar o projecto pretendido para o MS VC++:– ...
Clicar no botão OK.
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 68
Compilar um projecto MFC exemplo doVTK no Microsoft Visual C++
• Iniciar o Microsoft Visual VC++;• Abrir o projecto em causa: no menu File
escolher a opção Open Workspace...;• Escolher o ficheiro
do projecto napasta dos bináriosespecificada noCMake;
• Clicar nobotão Open;
• ...
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 35
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 69
Compilar um projecto MFC exemplo doVTK no Microsoft Visual C++
• ...• Compilar o projecto:
opção Build do menuBuild;
• ...(Este subprojectopode ser retirado)
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 70
Compilar um projecto MFC exemplo doVTK no Microsoft Visual C++
• ...• Executar o projecto:
opção Execute do menuBuild.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 36
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 71
Ficheiros do exemplo MFC Win32SampleMFC
• Sample.h e Sample.cpp ficheiros da classe CSampleApp: classe de controlo da aplicação (standard);
• MainFrm.h e MainFrm.cpp ficheiros da classe CMainFrame: classe de controlo da mainframe (standard);
• ChildFrm.h e ChildFrm.cpp ficheiros da classe CChildFrame: classe de controlo das janelas descendentes da mainframe (standard);
• ...
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 72
Ficheiros do exemplo MFC Win32SampleMFC
• vtkMFCDocument.h e vtkMFCDocument.cppficheiros da classe vtkMFCDocument: classe de base para os documentos VTK (vtk);
• SampleDoc.h e SampleDoc.cpp ficheiros da classe CSampleDoc: classe de controlo dos documentos (standard/vtk);
• vtkMFCRenderView.h e vtkMFCRenderView.cppficheiros da classe vtkMFCRenderView: classe de controlo da renderização (vtk);
• ...
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 37
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 73
Ficheiros do exemplo MFC Win32SampleMFC
• vtkMFCView.h e vtkMFCView.cpp ficheiros da classe vtkMFCView: classe de base para as vistas VTK (vtk);
• SampleView.h e SampleView.cpp ficheiros da classe SampleView: classe de controlo das vistas dos documentos (standard/vtk).
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 74
Ficheiros do exemplo MFC Win32SampleMFC
• Sugestões:– Abrir com a aplicação MFC Win32SampleMFC
alguns dos ficheiros de dados incluídos com o VTK (em C:\Program Files\vtk42\VTKData-release-4-2\Data);
– ...
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 38
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 75
Ficheiros do exemplo MFC Win32SampleMFC
• Sugestões:– ...– Fazer com que a aplicação deixe de
representar em cada janela o texto Hello World;– ...
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 76
Ficheiros do exemplo MFC Win32SampleMFC
• Sugestões:– ...– Fazer com que a aplicação deixe de apresentar
no seu inicio um documento vazio.
Uma aplicação para visualizar objectos poligonais definidos em ficheiros Vtk.
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 39
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 77
Classes predefinidas: Sources
Readers• vtkOBJReader• vtkBYUReader• vtkCyberReader• vtkDataSetReader• vtkMCubesReader• vtkPLOT3DReader• vtkPolyDataReader• vtkRectilinearGridReader
• vtkSLCReader• vtkSTLReader• vtkStructuredGridReader• vtkStructuredPointsReader• vtkUnstructuredGridReader• vtkVolume16Reader• vtkFieldDataReader• vtkBMPReader• vtkPNMReader• vtkTIFFReader• …
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 78
Classes predefinidas: Sources
Procedural Sources• vtkEarthSource• vtkConeSource• vtkCylinderSource• vtkDiskSource• vtkLineSource• vtkOutlineSource• vtkPlaneSource• vtkPointSource• vtkTextSource• vtkVectorText
• vtkSphereSource• vtkTexturedSphereSource• vtkAxes• vtkCursor3D• vtkProgrammableSource• vtkPointLoad• …
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 40
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 79
Classes predefinidas: Filtros
Filters• vtkAppendFilter• vtkAppendPolyData• vtkBooleanTexture• vtkBrownianPoints• vtkCastToConcrete• vtkCellCenters• vtkCellDataToPointData• vtkCullVisiblePoints• vtkCleanPolyData• vtkClipPolyData
• vtkClipVolume• vtkConnectivityFilter• vtkContourFilter• vtkCutter• vtkDashedStreamLine• vtkDecimate• vtkDecimatePro• vtkDelaunay2D• vtkDelaunay3D• vtkDicers
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 80
Classes predefinidas: Filtros (2)
Filters (2)• vtkEdgePoints• vtkElevationFilter• vtkExtractEdges• vtkExtractGeometry• vtkExtractGrid• vtkExtractTensorComponents• vtkExtractUnstructuredGrid• vtkExtractVOI• vtkExtractVectorComponents• vtkFeatureEdges
• vtkGaussianSplatter• vtkGeometryFilter• vtkGlyph3D• vtkHedgeHog• vtkHyperStreamline• vtkIdFilter• vtkLinearExtrusionFilter• vtkMaskPolyData• vtkOutlineFilter• vtkPointDataToCellData
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 41
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 81
Classes predefinidas: Filtros (3)
• vtkMaskPoints• vtkMaskPolyData• vtkMergeFilter• vtkMergePoints• vtkPolyDataNormals• vtkProbeFilter• vtkProgrammableAttributeDataFilter• vtkSelectVisiblePoints• vtkSpatialRepresentationFilter• vtkStreamLine
Filters (3)• vtkProgrammableFilter• vtkProjectedTexture• vtkRecursiveDividingCubes• vtkReverseSense• vtkRibbonFilter• vtkRotationalExtrusionFilter• vtkShepardMethod• vtkShrinkFilter• vtkShrinkPolyData• vtkSmoothPolyDataFilter
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 82
Classes predefinidas: Filtros (4)
Filters (4)• vtkStreamPoints• vtkStripper• vtkStructuredGridGeometryFilter• vtkStructuredGridOutlineFilter• vtkStructuredPointsGeometryFilter• vtkTensorGlyph• vtkTextureMapToBox• vtkTextureMapToCylinder• vtkTextureMapToPlane• vtkTextureMapToSphere
• vtkTexturedSphereSource• vtkThreshold• vtkThresholdPoints• vtkThresholdTextureCoords• vtkTransformFilter• vtkTransformPolyDataFilter• vtkTransformTextureCoords• vtkTriangleFilter• vtkTriangularTCoords• vtkTriangularTexture
Visualização Científica – Instalação, Compilação e Utilização do VTK
J. Tavares / J. Barbosa
MMCCE - 2004/2005 42
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 83
Classes predefinidas: Filtros (5)
Filters (5)• vtkTubeFilter• vtkVectorDot• vtkVectorNorm• vtkVectorTopology• vtkVoxelModeller• vtkWarpScalar• vtkWarpTo• vtkWarpVector• …
J. Tavares / J. Barbosa Visualização Científica – Instalação, Compilação e Utilização do VTK 84
Classes predefinidas: Mappers
Writers• vtkIVWriter• vtkBYUWriter• vtkSTLWriter• vtkMCubesWriter• vtkPolyDataWriter• vtkRectilinearGridWriter• vtkStructuredGridWriter• vtkStructuredPointsWriter• vtkUnstructuredGridWriter• vtkFieldDataWriter• vtkBMPWriter
• vtkPNMWriter• vtkTIFFWriter• …
Graphics Mappers• vtkPolyDataMapper• vtkDataSetMapper• vtkVolumeMapper• vtkImageMapper• …