VTK avec Visual Studio 2017 (C ++)

x

Vie privée et les cookies

Ce site utilise des cookies. En continuant, vous acceptez votre utilisation. Se procurer plus d’information; Par exemple, sur la façon de contrôler les cookies.

compris

Annonces

VTK (La boîte à outils de visualisation ) Est une excellente bibliothèque multiplateforme d’open source axée sur le déploiement de données scientifiques 2D et 3D. Le noyau VTK est développé en C ++, mais il contient des interfaces pour utiliser TCL / TK, Java, Python, (Activiz.net pour C #). VTK contient des algorithmes pour visualiser des valeurs scalaires, des textures, des textures, ainsi que d’un ensemble de widgets, de traitement parallèle ou de prise en charge d’autres outils tels que QT ou TK. Il implémente également des algorithmes pour le ramollissement des mailles géométriques, la réduction du polygone, la triangulation de Delaunay, la coupe de polygone, entre autres. VTK est développé par Kitware qui est une entreprise leader dans la recherche et le développement dans des domaines tels que la vision par ordinateur, la visualisation médicale.

Dans cet article, nous verrons comment exécuter notre premier programme dans VTK à l’aide de Visual Studio 2017 sous un environnement Windows dans la langue C ++. Pour cela, nous devons d’abord installer et configurer VTK. Et puis exécutez un code simple exemple qui est hébergé sur ce dépôt GitHub.

Configurer et compiler VTK

La première étape consiste à télécharger VTK à partir de votre page web https://www.vtk.org/download/

Nous allons utiliser la version 8 ( plus particulièrement la version 8.1.0), le téléchargement du fichier. Zip Sources (source). Ensuite, je recommande de placer le dossier décompressé sur n’importe quel emplacement « global » tel que C: /vtk/vtk-8.1.0, à l’avenir, nous pouvons avoir plus de versions VTK installées dans quelque chose comme C: /vtk/vtk-9.0

l’idée d’avoir la source VTK, est d’ être capable de le compiler sur votre ordinateur et générer le .lib et .dll de votre compilateur, qui dans ce cas est Visual studio 2017 dans Windows 10. pour cela, un appel appelé CMake qui vous permet de générer du code automatiquement en fonction de la configuration de l’ordinateur (multi – plateformes). Je ne vais pas être étendue dans les vastes avantages de CMake, abréviation de Make Cross Platform, mais il est vraiment très utile lorsque vous ont beaucoup de bibliothèques. pour télécharger cMake Windows dans https://cmake.org/download/ Utilisation du programme d’ installation ou le fichier .zip, tout le monde sera bien.

une fois cMake est installé, nous passez à courir et placer l’emplacement du code source VTK précédemment téléchargé, et l’endroit où il sera compilé:

Pour cet exemple, nous allons créer le dossier x64 / lequel est l’endroit où la version compilée de VTK sera logée. Vous pouvez vraiment placer n’importe quel nom, construire, asdf, compilé ou quiconque :-). Ensuite, nous devons cliquer sur Configurer:

CMAKECompiler

Une boîte de dialogue apparaît pour sélectionner le compilateur à utiliser, Visual Studio, Mingw , etc. En fait, si vous avez plusieurs versions de Visual Studio, tous apparaissent. Je choisirai Visual Studio 15 2017 Win64, ce qui signifie que la version du compilateur pour VS17 (bien qu’elle ait l’air rare, la version du VS2017 est 15, l’outilsset est v141 et le compilateur C ++ peut-être 19.x, mais c’est-à-dire un autre sujet de parler). Nous laissons la possibilité d’utiliser des compilateurs natifs par défaut et de cliquer sur Terminer. Ce processus explore les fichiers nécessaires pour compiler correctement VTK et peut prendre quelques minutes.

Maintenant, il est possible de sélectionner les options de compilation pour VTK (utilisation de Python, QT, WebViews, générez la documentation. , les exemples, des enveloppes de construction pour Java / Python, entre autres). Cela peut changer plusieurs aspects du processus, mais pour l’instant, il n’y aura pas de changements significatifs dans le résultat lancé. Nous cliquons une fois de plus sur Configurer et vous devez apparaître sur la console CMAKE GUI, la configuration du message effectué et enfin cliquez sur Générer. Lorsqu’il apparaît sur la console générée par la génération, la cmake peut maintenant être fermée et ~ \ vtk \ vtk-8.1.0 \ vtk \ vtk-8.1.0 \ x64.

là, le fichier vtk.sln sera être c’est la solution qui est Visual studio Correspond à 2017, que nous ouvrons dans l’IDE où nous verrons de nombreux projets associés que nous devons compiler. Un point important est que la compilation peut être faite pour divers modes: Débogage, Minsizerel, version, Relwithdebinfo. Pour l’instant, faites-le pour le débogage qui est sélectionné par défaut, en appuyant sur F7 ou l’option de construction qui apparaît lorsque vous cliquez sur DROIT sur le projet All_Build. Ce processus prend un certain temps (plus de temps que cmake) et construira une série de .libs et .dlls qui servent de base à l’utilisation de VTK.

vsvtk.jpg A la fin, à l’ intérieur de C: \ VTK \ VTK-8.1.0 \ x64 Il y aura de nombreux dossiers (correspondant à chaque projet inclus dans la solution VTK.SLN), en plus du dossier BIN / (contenant VTK) et du dossier LIB / Dossier (contenant tous les .lib des projets). Comme la compilation a été faite en mode de débogage, le dossier qui aura à l’intérieur de ceux-ci sera débogué /, et si compilé par exemple, la libération sera ajouté / à l’intérieur de lib / et de bin /.

Il est important de mettre en évidence que ce processus n’est effectué qu’une fois tant qu’il n’y a pas de modification de la configuration VTK. Si vous souhaitez ajouter une option que Cmake a été configurée, le processus doit être répété. En outre, il est possible de ne pas construire_all, mais uniquement aux projets qui seront réellement utilisés. Chaque projet de la solution VTK représente un ensemble de fonctionnalités telles que VTKCOMMONCORE, VTKPNG, etc., puis si vous connaissez les projets que vous utiliserez de VTK, vous ne devez pas tout compiler, économiser un peu de temps. Cependant, pour ce post, nous attendrons simplement qu’il finisse de compiler: d.

Mon premier programme avec VTK

L’utilisation de CMAKE dans VTK était possible car il y avait un fichier appelé CmAkelistes .txt qui est un fichier de configuration de projet. Il s’agit du point d’entrée de la cmake où tous les paramètres associés à un projet sont indiqués et peuvent donc être en mesure de le faire une multiplateforme indépendamment de l’emplacement des bibliothèques nécessaires à son exécution.

pour notre premier programme dans VTK , nous ferons ce fichier CMAKELIST.TXT pour générer automatiquement les paramètres VTK la rendant compatible sur une autre plate-forme où VTK est installée. La page officielle VTK offre de nombreux exemples, https://lorensen.github.io/VTKExamples/site/Cxx/, et tout contient la description du fichier CMAKELIST.txt.

ne pas commencer à partir de zéro, nous allons utiliser un Code de base qui est dans https://github.com/esmitt/FirstVTK contenant le fichier CMAKELIST.TXT et le fichier de donandering.cpp. Notre CMAKELIST.TXT contient les éléments suivants:

cmake_minimum_required(VERSION 2.8)PROJECT(ConeRendering)find_package(VTK 8.0.0 REQUIRED)include(${VTK_USE_FILE})file(GLOB SOURCES src/ConeRendering.cpp)add_executable(ConeRendering MACOSX_BUNDLE src/ConeRendering.cpp)target_link_libraries(ConeRendering ${VTK_LIBRARIES})

Nous n’allons pas explorer dans la formation d’un fichier CMAKELIST.TXT, cependant, il est possible d’identifier certains paramètres Comme le nom du projet qui sera généré dans Visual Studio ou le nom de fichier .CPP contenant la principale.

une fois que le code (ou cloné avec git) est téléchargé, nous faisons le même processus que a été fait pour compiler VTK: nous utiliserons CMAKE. Ainsi, nous devons placer à la fois l’emplacement de notre dossier FirstVTK et le dossier de sortie, où construire les fichiers binaires, qui seront FirstVTK / X64 / (rappelez-vous que le nom X64 / peut être soit). Nous cliquons sur Configurer et nous obtiendrons quelque chose comme:

firstVTKJPG

Si vous êtes à ce stade, tout va bien! Nous devons indiquer à cmake l’emplacement du .lib et .dll de VTK, dans ce cas, pour la variable VTK_DIR, nous avons placé C: \ vtk \ vtk-8.1.0 \ x64. Et nous cliquons sur Configurer et ensuite en générer. Nous ouvrons le fichier FirstVTK / X64 / CONREDERING.SLN avec Visual Studio 2017, où nous trouverons 3 projets: al_build, donandering et zero_check.

  • all_build construit tous les projets de la solution (telle que a tout)
  • zero_check est utilisé pour exécuter une cmake à nouveau lorsqu’un changement est effectué sur le fichier CMAKELIST.TXT
  • est le projet contenant le code en C ++ de déploiement avec Vtk

Ensuite, nous développons sur le projet Build_All, et nous sommes situés dans le projet de conserrage (par exemple, à l’aide du projet de démarrage en cliquant sur le nom du projet). Si nous essayons de courir sans être situé dans la conserve, nous obtiendrons une erreur, c’est pourquoi il est important d’être situé dans ce projet dans la solution.

Vous pouvez maintenant exécuter le code! Si un message comme celui-ci apparaît:

ERRORVTK

Vous êtes sur la bonne voie 😊 Qu’est-ce qui se passe? Puisque nous sommes sous Windows, il est nécessaire d’ajouter les DLL au chemin du système afin que Windows sache où les trouver. Toutefois, vous avez plusieurs options telles que l’ajout comme variables système ou en copiant les DLL dans le dossier du dossier exécutable (débogage /) ou à l’aide d’une fonctionnalité Visual Studio.

Utilisation de Visual Studio, nous devons cliquer à droite Dans la conserve de projet – > propriétés, et nous sommes situés au débogage – > Environnement:

Addpath

Là, ajoutez l’itinéraire où se trouvent les DLL VTK, dans notre cas se trouve dans C: \ vtk \ vtk-8.1.0 \ x64 \ bin \ Déboguer. Cela entraîne la placement dans le cadre du chemin Windows, mais uniquement pour l’exécution de projet, il équivaut à la placer sur une console Windows, qui a été fermé, ladite configuration est perdue. Peut-être que ce n’est pas le moyen efficace, mais c’est un projet dépendant du projet.Il est important de noter que s’il existe une variable d’environnement pour VTK, par exemple vtk_dir, puis l’instruction Exchange à la voie =% Chemin%%;% vtk_dir%.

maintenant, exécutez à nouveau le code:

Conférable

Bien qu’il semble un processus long, cela permet une plus grande portabilité de votre code, soit à Linux, soit avec un autre compilateur. En outre, une fois que vous avez la configuration initiale, il ne reste plus qu’à écrire le code dans VTK. VTK est assez large dans ses algorithmes et ses structures de données disponibles, pour le rendu des données, il existe même une version Web.

Dans un autre article, nous explorerons un peu plus dans VTK, pour l’instant, nous sommes Déjà achevé une étape importante pour continuer à écrire le code.

Les étapes ont-elles bien expliqué? N’hésitez pas à demander.

Résumé: Si vous êtes dans la zone de vue scientifique, vous devez savoir VTK!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *