VTK
Apparence
VTK
Capture d'écran de ParaView, fondé sur la bibliothèque VTK.
Développé par | Kitware Inc. |
---|---|
Première version | [1] |
Dernière version | 9.3.0 ()[2] |
Dépôt | gitlab.kitware.com/vtk/vtk |
Écrit en | C++, Perl, Python, Tcl et Java |
Système d'exploitation | Microsoft Windows, Linux et macOS |
Environnement | Multi-Plateforme |
Formats lus | VTK, ParaView VTK Image data (d), ParaView VTK Structured grid (d), ParaView VTK Rectilinear grid (d) et ParaView VTK Unstructured grid (d) |
Formats écrits | VTK, ParaView VTK Image data (d), ParaView VTK Structured grid (d), ParaView VTK Rectilinear grid (d) et ParaView VTK Unstructured grid (d) |
Type | Bibliothèque de Visualisation scientifique |
Licence | BSD |
Site web | www.vtk.org |
VTK (pour Visualization ToolKit en anglais) est une bibliothèque logicielle libre sous licence BSD de classes C++ pour la visualisation de données 2D/3D et le traitement d'image. Elle s'interface facilement avec les langages Tcl-Tk, Python, JavaScript et Java. La bibliothèque comprend plus de 1 100 classes C++. Elle a été développée à partir de 1993 au Centre de Recherche du groupe General Electric et utilisée en premier dans le domaine médical. Par la suite ses développeurs (Will Schroeder et Ken Martin) ont fondé la société Kitware Inc. aux États-Unis pour assurer le support commercial et continuer le développement de ce produit.
Caractéristiques
[modifier | modifier le code]- Format de sortie : VTK (format de fichier)
- Extensible
- Open Source
- Bibliothèque indépendante de la plateforme
- Repose sur le standard OpenGL
- Support de langages interprétés (Tcl-Tk, Python ou Java)
- Intégrable avec une bibliothèque d'interfaces graphiques (Tk, Qt, FLTK, WxWidgets, Java, X11, Windows, Mac OS)
- Fourni avec de nombreux exemples
- Plusieurs formats d'import/export 2D/3D et images.
- Version parallèle et multithreads
Architecture
[modifier | modifier le code]- Noyau composé de classes C++ compilées
- Couche interprétée en Tcl-Tk, Python, Java et languages .NET (via la bibliothèque ActiViz)
Domaines d'utilisation
[modifier | modifier le code]- Analyse d'image[3]
- Imagerie médicale
- Mécanique des fluides
- Finance
- Acoustique
- Mécanique
- Éléments finis
- Géophysique
- Stéréolythographie
- Biologie Moléculaire
- Reconstructions de volumes
Exemples
[modifier | modifier le code]- Création d'une sphère bleue avec le langage Tcl-Tk.
package require vtk
package require vtkinteraction
# Instanciation de l'objet sphère et attributs
vtkSphereSource sphere
sphere SetRadius 2.0
sphere SetThetaResolution 16
sphere SetPhiResolution 16
# Mapping de la bibliothèque graphique
vtkPolyDataMapper map;
map SetInput [sphere GetOutput]
# Instanciation d'un acteur et attributs
vtkActor aSphere
aSphere SetMapper map
[aSphere GetProperty] SetColor 0 0 1
# Création de la fenêtre de rendu
vtkRenderWindow renWin
vtkRenderer ren1
renWin AddRenderer ren1
# Instanciation de l'interacteur
vtkRenderWindowInteractor iren
iren SetRenderWindow renWin
# Ajout de l'objet sphère sur un fond blanc
ren1 AddActor aSphere
ren1 SetBackground 1 1 1
# Rendu de l'image
renWin Render
wm withdraw .
Bibliographie
[modifier | modifier le code]- (en) W.J. Schroeder, L.S. Avila, W. Hoffman, Visualizing with VTK: A tutorial, IEEE Transaction on Computer Graphics and Applications, 2000, 20(5), p. 20-27. [1]
- (en) Carsten Zerbst, Scientific visualization with VTK and Tcl, Linux Magazine issue 16, 2002, p. 60-63. [2]
- (en) Drew McCormack, Developing Visualization Applications with Cocoa and VTK, part1, part2, 2003 [3] [4]
Références
[modifier | modifier le code]- « https://web.archive.org/web/20200202170503/http://marchingcubes.org/index.php/VTK »
- « https://gitlab.kitware.com/vtk/vtk/-/tags/v9.3.0 », (consulté le )
- Aphelion utilise VTK pour l'affichage 3D
Livres
[modifier | modifier le code]- (en) Will Schroeder, Ken Martin, Bill Lorensen, The Visualization Toolkit, An Object-Oriented Approach To 3D Graphics, 4th edition, Kitware Inc. publishers, (ISBN 1-930934-19-X)
- (en) The Visualization Toolkit User's Guide, Kitware Inc. publishers, (ISBN 1-930934-18-1)
Liens internes
[modifier | modifier le code]- Recalage d'images
- Insight Segmentation and Registration Toolkit (ITK)
- Visible Human Project
- ParaView