Référence de la classe Snake

#include <snake.h>

Liste de tous les membres

Types publics

typedef Enriched_polyhedron<
Enriched_kernel, Enriched_items
Polyhedron
typedef Enriched_polyhedron<
Enriched_kernel, Enriched_items
>::Vertex_handle 
Vertex_handle
typedef Enriched_polyhedron<
Enriched_kernel, Enriched_items
>::Point 
Point

Fonctions membres publiques

 Snake ()
 Default constructor.
 Snake (std::vector< Vertex_handle > S, Polyhedron localRegion)
 Constructeur a partir d'un vector de sommets et d'un polyhedron (notre localRegion).
 Snake (std::vector< std::vector< Vertex_handle > > S, Polyhedron localRegion)
 Constructeur a partir d'un vector de vectors de sommets et d'un polyhedron (notre localRegion).
 ~Snake ()
 Destructor.
void Affiche_snake () const
 pour afficher le snake (debug)
void draw_snake2D () const
 Pour dessiner le snake 2D (OpenGl).
void draw_snake3D () const
 Pour dessiner le snake 3D (OpenGl).
void Maj_A ()
 Maj de A en fonction des poids.
void Affiche_A ()
 Affichage de la matrice A (pour les tests).
void Set_A (int i, int j, double f)
 Modifieur de la matrice A.
double Get_A (int i, int j)
 Accesseur de la matrice A.
RegiongetRegion ()
 Accesseur de la region locale associee au snake (par reference).
void Energy_minimization (int n_iterations)
 Pour la mise a jour des points 2D du snake dans le processus de minimisation d'NRJ.
void Set_Pas_Gamma (double f)
 Modifieur du pas gamma.
double Get_Pas_Gamma ()
 Accesseur du pas gamma.
int Get_dim ()
 Accesseur de la dimension dim.
void Set_Snake_WeightsA (double *Vec, int taille)
 Modifieur du poids A.
void Set_Snake_WeightsB (double *Vec, int taille)
 Modifieur du poids B.
double * Get_Snake_WeightsA ()
 Accesseur du poids A (par reference).
double * Get_Snake_WeightsB ()
 Accesseur du poids B (par reference).

Attributs privés

std::vector< Vertex_handleSnake_VH
 pointers on the vertices of the snake
double * WeightsA
 weight used in the spline energy
double * WeightsB
 weight used in the spline energy
Region R
 la region associee au snake
bool R_is_initialized
int dim
 la taille dim = le nb de points 2D du snake
double(* A )[200]
 the pentadiagonal banded matrix used during the iteration
double Pas_Gamma
 il faut l'ajouter a chaque terme diagonal de A


Description détaillée

La classe Snake va nous permettre de manipuler un Snake, mais aussi sa region locale associe

Définition à la ligne 19 du fichier snake.h.


Documentation des typedef membres

typedef Enriched_polyhedron<Enriched_kernel,Enriched_items>::Point Snake::Point

Définition à la ligne 24 du fichier snake.h.

typedef Enriched_polyhedron<Enriched_kernel,Enriched_items> Snake::Polyhedron

Définition à la ligne 22 du fichier snake.h.

typedef Enriched_polyhedron<Enriched_kernel,Enriched_items>::Vertex_handle Snake::Vertex_handle

Définition à la ligne 23 du fichier snake.h.


Documentation des contructeurs et destructeur

Snake::Snake (  ) 

Default constructor.

Définition à la ligne 15 du fichier snake.cpp.

Références A, dim, Pas_Gamma, R_is_initialized, Snake_VH, WeightsA, et WeightsB.

Snake::Snake ( std::vector< Vertex_handle S,
Polyhedron  localRegion 
)

Constructeur a partir d'un vector de sommets et d'un polyhedron (notre localRegion).

Paramètres:
S : une suite de sommets (notre snake initial).
localRegion : un Polyhedron (notre localRegion). Parametre optionel, defaut=vide. Attention, la localRegion doit etre telle que chacun de ses sommets est adjacente a au moins un point de S.
Attention, la parametrisation 2D s'effectue dans ce constructeur (et non plus apres)

Définition à la ligne 35 du fichier snake.cpp.

Références A, Region::Compute_Parameterization(), dim, Maj_A(), R, R_is_initialized, Snake_VH, Region::vh2Dfrom3D(), WeightsA, et WeightsB.

Snake::Snake ( std::vector< std::vector< Vertex_handle > >  S,
Polyhedron  localRegion 
)

Constructeur a partir d'un vector de vectors de sommets et d'un polyhedron (notre localRegion).

Paramètres:
S : une suite de vectors de sommets (notre snake initial). - S a exactement la structure du snake stocke dans la classe Mesh.
localRegion : un Polyhedron (notre localRegion). Parametre optionel, defaut=vide. Attention, la localRegion doit etre telle que chacun de ses sommets est adjacente a au moins un point de S.
Attention, la parametrisation 2D s'effectue dans ce constructeur (et non plus apres)

Définition à la ligne 86 du fichier snake.cpp.

Références A, Region::Compute_Parameterization(), dim, Energy_minimization(), Maj_A(), R, R_is_initialized, Snake_VH, Region::vh2Dfrom3D(), WeightsA, et WeightsB.

Snake::~Snake (  ) 

Destructor.

Définition à la ligne 162 du fichier snake.cpp.

Références A, WeightsA, et WeightsB.


Documentation des fonctions membres

void Snake::Affiche_A (  ) 

Affichage de la matrice A (pour les tests).

Définition à la ligne 341 du fichier snake.cpp.

Références A, et dim.

void Snake::Affiche_snake (  )  const

pour afficher le snake (debug)

Définition à la ligne 170 du fichier snake.cpp.

Références Snake_VH.

void Snake::draw_snake2D (  )  const

Pour dessiner le snake 2D (OpenGl).

Définition à la ligne 185 du fichier snake.cpp.

Références Snake_VH.

void Snake::draw_snake3D (  )  const

Pour dessiner le snake 3D (OpenGl).

Définition à la ligne 229 du fichier snake.cpp.

Références Region::Point3D_from_2D(), R, et Snake_VH.

void Snake::Energy_minimization ( int  n_iterations  ) 

Pour la mise a jour des points 2D du snake dans le processus de minimisation d'NRJ.

Définition à la ligne 367 du fichier snake.cpp.

Références A, dim, Get_Pas_Gamma(), Maj_A(), Region::Nrj_sommet(), R, R_is_initialized, ResoudreSysteme(), et Snake_VH.

Référencé par Snake().

double Snake::Get_A ( int  i,
int  j 
)

Accesseur de la matrice A.

Définition à la ligne 358 du fichier snake.cpp.

Références A.

int Snake::Get_dim (  ) 

Accesseur de la dimension dim.

Définition à la ligne 491 du fichier snake.cpp.

Références dim.

double Snake::Get_Pas_Gamma (  ) 

Accesseur du pas gamma.

Définition à la ligne 485 du fichier snake.cpp.

Références Pas_Gamma.

Référencé par Energy_minimization().

double * Snake::Get_Snake_WeightsA (  ) 

Accesseur du poids A (par reference).

Définition à la ligne 523 du fichier snake.cpp.

Références WeightsA.

double * Snake::Get_Snake_WeightsB (  ) 

Accesseur du poids B (par reference).

Définition à la ligne 528 du fichier snake.cpp.

Références WeightsB.

Region* Snake::getRegion (  )  [inline]

Accesseur de la region locale associee au snake (par reference).

Définition à la ligne 122 du fichier snake.h.

Références R.

Référencé par Mesh::draw2dRegion(), et Mesh::drawLocalRegion().

void Snake::Maj_A (  ) 

Maj de A en fonction des poids.

Définition à la ligne 277 du fichier snake.cpp.

Références A, dim, WeightsA, et WeightsB.

Référencé par Energy_minimization(), et Snake().

void Snake::Set_A ( int  i,
int  j,
double  f 
)

Modifieur de la matrice A.

Définition à la ligne 336 du fichier snake.cpp.

Références A.

void Snake::Set_Pas_Gamma ( double  f  ) 

Modifieur du pas gamma.

Définition à la ligne 480 du fichier snake.cpp.

Références Pas_Gamma.

void Snake::Set_Snake_WeightsA ( double *  Vec,
int  taille 
)

Modifieur du poids A.

Définition à la ligne 497 du fichier snake.cpp.

Références dim, et WeightsA.

void Snake::Set_Snake_WeightsB ( double *  Vec,
int  taille 
)

Modifieur du poids B.

Définition à la ligne 510 du fichier snake.cpp.

Références dim, et WeightsB.


Documentation des données membres

double(* Snake::A)[200] [private]

the pentadiagonal banded matrix used during the iteration

Définition à la ligne 53 du fichier snake.h.

Référencé par Affiche_A(), Energy_minimization(), Get_A(), Maj_A(), Set_A(), Snake(), et ~Snake().

int Snake::dim [private]

la taille dim = le nb de points 2D du snake

Définition à la ligne 50 du fichier snake.h.

Référencé par Affiche_A(), Energy_minimization(), Get_dim(), Maj_A(), Set_Snake_WeightsA(), Set_Snake_WeightsB(), et Snake().

double Snake::Pas_Gamma [private]

il faut l'ajouter a chaque terme diagonal de A

Définition à la ligne 56 du fichier snake.h.

Référencé par Get_Pas_Gamma(), Set_Pas_Gamma(), et Snake().

Region Snake::R [private]

la region associee au snake

the feature energy values are available from the Region

Définition à la ligne 45 du fichier snake.h.

Référencé par draw_snake3D(), Energy_minimization(), getRegion(), et Snake().

bool Snake::R_is_initialized [private]

Définition à la ligne 47 du fichier snake.h.

Référencé par Energy_minimization(), et Snake().

std::vector< Vertex_handle > Snake::Snake_VH [private]

pointers on the vertices of the snake

Ce sont des positions 2D (en fait des points 3D avec z=0)

Définition à la ligne 32 du fichier snake.h.

Référencé par Affiche_snake(), draw_snake2D(), draw_snake3D(), Energy_minimization(), et Snake().

double* Snake::WeightsA [private]

weight used in the spline energy

Définition à la ligne 35 du fichier snake.h.

Référencé par Get_Snake_WeightsA(), Maj_A(), Set_Snake_WeightsA(), Snake(), et ~Snake().

double* Snake::WeightsB [private]

weight used in the spline energy

Définition à la ligne 38 du fichier snake.h.

Référencé par Get_Snake_WeightsB(), Maj_A(), Set_Snake_WeightsB(), Snake(), et ~Snake().


La documentation de cette classe a été générée à partir des fichiers suivants:
Généré le Thu Jun 15 18:48:57 2006 pour Projet Image 2006 - Vincent Vidal, Florent Paccault - par  doxygen 1.4.7