Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


doc:user:geometry:mesh:geniso

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:user:geometry:mesh:geniso [2014/08/08 22:49] jorisdoc:user:geometry:mesh:geniso [2016/03/30 15:23] (current) – external edit 127.0.0.1
Line 1: Line 1:
-====== Biomec GenIso mesher ======+====== Biomech GenIso Mesher ======
  
 This mesher is used to generate a 3D surface mesh from a 3D segmented image. This mesher is used to generate a 3D surface mesh from a 3D segmented image.
  
-===== mono-material mesh =====+===== Mono-material mesh =====
  
 The input is a 3D segmented binary image. It contains two values: voxels with a $0$ value are located outside of the object to mesh, voxels with a non-zero value are located inside. The input is a 3D segmented binary image. It contains two values: voxels with a $0$ value are located outside of the object to mesh, voxels with a non-zero value are located inside.
Line 32: Line 32:
    poly = generalTools.genisoMeshToPolyData(smooth.getSurf())      poly = generalTools.genisoMeshToPolyData(smooth.getSurf())  
  
-TetGen is used to get a tetrahedral volumic mesh of the object from the triangular surface mesh of the boundary of the object: +TetGen is used to get a tetrahedral volume mesh of the object from the triangular surface mesh of the boundary of the object: 
  
    ugrid = meshingTools.callTetgen(poly)    ugrid = meshingTools.callTetgen(poly)
Line 42: Line 42:
  
  
-===== Maillage multi-matériau =====+===== Multi-material mesh =====
  
-Cette option permet de générer un maillage qui contient plusieurs zones matériellesun os qui contiendrait une partie os cortical et une partie os trabéculaire par exemple; un cerveau dans lequel les ventricules et une tumeur seraient séparés; une mâchoire avec une série de dents; ... +This option is used to generate a mesh which contains several material areastwo different bones, a brain with ventricles separated from a tumor, a jawbone with a series of teeth...
  
-Dans le cas multi-matériau l'image segmentée représentant la géométrie doit contenir plusieurs //labels//: 0 pour l'extérieur de l'objet (background) et une série de valeurs positives non nulles (typiquement 1,2,3,...) pour distinguer chacun des tissus.+In the multi-material case, the segment image representing the geometry must contain several //labels//: 0 for the background (outside of the object), and a series of non-zero positive values (typically 1, 2, 3...) for each material.
  
-Pour utiliser le mailleur GenIso, il faut tout d'abord définir la fonction implicite ''Fct'', équivalente continue de l'image segmentée discrèteet qui permettra au mailleur de fournir une interface //lisse// entre les maillages séparant les différentes régions.+To use the GenIso mesherthe implicit function ''Fct'' must first be defined. This function is a continuous equivalency of the discrete segment image, and will allow the mesher to supply a smooth interface between the mesh separating each region.
  
-Pour définir cette fonctionon définit les couples de //labels// de l'image entre lesquels on veut que le mailleur crée une triangulation. De pluson trie ces couples de manière à définir l'objet hétérogène comme un ensemble de //closed// surfaces sur lesquelles viennent éventuellement se greffer des //open// surfaces. Dans l'image ci-dessousune tumeur (//open// surface défine par le couple (4,3) vient s'attacher sur la frontière extérieure du cerveau (//closed// surface définie par l'union des couples (3,0) et (4,0)).  +To define this function, couples of //labels// of the image are defined, //labels// between which the mesher must create a triangulation. In additionthese couples are sorted to define the heterogeneous object as a set of //closed// surfaces on which //open// surfaces can be attachedIn the image belowa tumor (//open// surface defined by the couple (4, 3)), is tied on the external boundary of the brain (//closed// surface defined by the union of the couples (3, 0) and (4, 0)).
  
 {{ :doc:user:mesh:geniso_openetclosed.png? 600 |}} {{ :doc:user:mesh:geniso_openetclosed.png? 600 |}}
  
-Dès lorsla syntaxe à utiliser est la suivante:+Consequentthe syntax is as follow:
  
     fct = Fct()     fct = Fct()
Line 69: Line 69:
     fct.build()     fct.build()
  
- +Afterwardsthe mesh can be generated with the commands:
-Ensuitenous pouvons générer le maillage au moyen des commandes +
  
     gen = GenerateMesh(fct)     gen = GenerateMesh(fct)
Line 77: Line 76:
     poly = generalTools.genisoMeshToPolyData(gen.getSurf()) // vtkPolyData     poly = generalTools.genisoMeshToPolyData(gen.getSurf()) // vtkPolyData
  
-A partir de ce maillage surfacique multi-régionson utilise TetGen pour générer le maillage volumique dans chacune des régions définiesPour ce faire il faut spécifier à TetGen un point, //seed//, situé dans chacune des régions à mailler volumiquement (vous pouvez par exemple aller chercher ce point en chargeant le vtkPolyData dans l'interface graphique ''geniso/tools/gui4.py'' et en utilisant ensuite l'option //point// ). +From this surface multi-regions mesh, TetGen is used to generate the volume mesh in each of these regionsTo do so, TetGen must be given a point, //seed// situated in each of the regions to be meshed (this point can be found, for example, by loading the ''vtkPolydata'' in the graphical interface ''geniso/tools/gui4.py'' using the option //point//).
  
     seedbrain= [118.3,160.5,75]     seedbrain= [118.3,160.5,75]
Line 85: Line 84:
     ugrid = meshingTools.callTetgenMultipleRegions(poly, regionSeeds, regionVolmax)     ugrid = meshingTools.callTetgenMultipleRegions(poly, regionSeeds, regionVolmax)
  
-Ensuitepour charger le maillage dans Metafor:+Thenthe mesh is loaded in Metafor:
  
-    labels = [1,2]  // les deux labels des régions dans l'ugrid (cfr. visu dans Paraview)+    labels = [1,2]  // the two labels of the regions located in the ugrid (see visu in Paraview)
     grp = [groupset(1),groupset(2)]      grp = [groupset(1),groupset(2)] 
          
Line 96: Line 95:
    
          
-===== Paramètres =====+===== Parameters =====
  
-^  Paramètre  ^  Signification et valeur conseillée +^  Parameter      ^  Meaning and recommended value 
-| ''nbr''nombre d'itérations de la fonction de lissage\\ __conseil__: 4 | +| ''nbr''         number of iterations of the smoothing function \\ __recommended__: 4| 
-| ''spx,spy,spz''Espacement de la grille utilisée pour générer le maillage \\ __conseil__ = gen.getRegularGrid().getDx(),.getDy(),.getDz() | +| ''spx,spy,spz''Spacing of the grid used to generate the mesh \\ __recommended__ = gen.getRegularGrid().getDx(),.getDy(),.getDz() | 
-| ''res''Résolution de la grille utilisée pour générer le maillage\\ __conseil__: image.GetDimensions()[0] si on veut garder la même grille que celle définie par l'image de départ+| ''res''Resolution of the grid used to generate the mesh \\ __recommended__: image.GetDimensions()[0] if the grid defined by the initial image is to be kept 
-| ''eps'' | distance relative autorisée entre l'image de départ et la fonction Fct \\  __conseil__: 1./image.GetDimensions()[0] signifie une distance d'une largeur de voxel| +| ''eps''relative distance allowed between the initial image and the function Fct \\ __recommended__: 1./image.GetDimensions()[0], which corresponds to a distance of a voxel width 
-| ''nmin''degré de lissage\\ __conseil__entre 15 et 100 | +| ''nmin''smoothing degree \\ __recommended__between 15 and 100 | 
-| ''interpol'' | 0: fct d'approximation, 1: fct d'interpolation\\ __conseil__: 0 pour une surface plus lisse, 1 pour une géométrie plus proche de l'image | +| ''interpol'' | 0: approximation function, 1: interpolation function \\ __recommended__: 0 for a smoother surface, 1 for a geometry closer to the initial image | 
-| ''type'' | 1: linéaire, 2: quadratique\\ __conseil__: 1 pour la robustesse, 2 pour une surface plus lisse |+| ''type'' | 1: linear, 2: quadratic\\ __recommended__: 1 for robustness, 2 for a smoother surface |
doc/user/geometry/mesh/geniso.1407530957.txt.gz · Last modified: 2016/03/30 15:22 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki