Visualisation - TD3 : Reader en VTK



Home Research Publications Teaching Personal

Introduction

Vous allez apprendre à lire des fichiers, et transformer les données pour VTK. Vous allez devoir programmer en C++ pour celà.

Lecture de points

La première partie consiste en la lecture d'un fichier de points: Crocodile.d. Pour celà, utilisez le squelette de code fourni. Programmez la lecture du fichier .d. Prenez exemple sur l'ajout des trois points dans le code fourni.

Ajout de Forme Géométrique

Nous allons voir maintenant comment nous pouvons ajouter différentes formes géométriques dans vtk, tels que les lines, les triangles... . Nous allons utiliser pour celà vtkLine (vtKTriangle, ...).

Ajoutez après polydata->ShallowCopy(vertexFilter->GetOutput()) la ligne suivante:
polydata->SetLines(lines);

Observez le résultat.
Pour comprendre le fonctionnement des lignes, remarquez les lignes line->GetPointIds()->SetId(...)
Inspirez vous de ce code pour tracer des lignes entre deux points consécutifs, ainsi que de fermer la figure.

Ajout de Couleur

De même que pour les formes, il est également possible de modifier les couleurs des vertex.
Ajoutez après polydata->SetLines(lines); la ligne suivante:
polydata->GetPointData()->SetScalars(colors);

Observez le résultat.
Pour comprendre le fonctionnement de la couleur, remarquez les lignes:
colors->InsertNextTuple3(r, g, b)
Inspirez vous de ces lignes pour ajoutez un peu de fantaisie à votre figure.

Reader file.obj

Si vous avez terminé le travail demandé, reprenez le code pour lire le fichier .obj suivant:Cube.obj.
Un fichier .obj est écrit de la façon suivante:
v x y z             les vertex (points)
v x y z
...

f v1 v2 v3         les faces avec le numéro des trois vertex
f v1 v2 v3

Faites en sorte que chaque face du cube soit de couleurs différentes.