2016-12-07 2 views
0

Je suis un nouveau venu dans Paraview et j'aimerais vous demander comment je peux faire une vue 3D d'un réservoir. J'ai aussi lu quelques articles précédents que le meilleur moyen est peut-être d'appliquer un filtre "Alphabétique -> Delaunay 2D" (par exemple Displaying an Elevation grid in ParaView).Vue 3D à partir des coordonnées x, y, z dans Paraview

Je l'ai aussi essayé; malheureusement, puisque mon domaine n'est pas un rectangle, il y avait quelques triangles inutiles qui ont été formés en dehors du domaine principal. Dans le lien ci-dessus, il peut être utilisé facilement car le domaine est rectangulaire. Le fichier d'entrée est (fichier .csv):

"x", "y", "z"    
-38.82 , 36.14 , 2.00 
-38.82 , 39.04 , 2.00 
-38.82 , 41.93 , 2.00 
-38.89 , 44.70 , 2.00 
-38.96 , 47.47 , 2.00 
-38.96 , 49.51 , 2.00 
-38.96 , 51.55 , 2.00 
-31.05 , 39.01 , 2.00 
-31.05 , 36.14 , 2.00 
-31.05 , 41.89 , 2.00 
-31.10 , 44.63 , 2.00 
-31.14 , 47.38 , 2.00 
-31.14 , 49.47 , 2.00 
-31.14 , 51.55 , 2.00 
-23.28 , 38.99 , 2.00 
-23.28 , 36.14 , 2.00 
-23.28 , 41.84 , 2.00 
-23.30 , 44.57 , 2.00 
-23.33 , 47.29 , 2.00 
-23.33 , 49.42 , 2.00 
-23.33 , 51.55 , 2.00 
-15.51 , 38.97 , 2.00 
-15.51 , 36.14 , 2.00 
-15.51 , 41.80 , 5.00 
-15.51 , 44.50 , 5.00 
-15.51 , 47.20 , 5.00 
-15.51 , 49.38 , 2.00 
-15.51 , 51.55 , 2.00 
-9.61 , 44.50 , 5.00 
-9.63 , 41.80 , 5.00 
-9.58 , 47.20 , 5.00 
-3.70 , 44.50 , 5.00 
-3.75 , 41.80 , 5.00 
-3.66 , 47.20 , 5.00 
2.20 , 44.50 , 5.00 
2.13 , 41.80 , 5.00 
2.27 , 47.20 , 5.00 
-15.51 , 47.20 , 2.00 
-15.51 , 44.50 , 2.00 
-15.51 , 41.80 , 2.00 

Merci d'avance.

Répondre

2

Le domaine que vous essayez d'afficher est non-convexe. Le Delaunay 2D n'a aucun moyen de savoir si ces régions non-convexes (ces régions vides d'environ -15 à 2 le long de l'axe X) sont supposées faire partie du domaine ou non. Ainsi, le filtre 2D de Delaunay fait l'hypothèse simple que la région est supposée être convexe et remplit ces régions. Qu'on le veuille ou non, je ne pense pas que quiconque connaisse une méthode plus robuste pour déterminer les limites d'une région lorsqu'on ne lui donne qu'un ensemble de points.

Je remarque un autre problème avec vos données et Delaunay 2D. Il semble qu'il y ait 3 paires de points qui partagent les coordonnées (x, y). Je suppose que cela est supposé former une étagère verticale, mais Delaunay 2D ignore certains d'entre eux parce qu'ils ont les mêmes coordonnées (x, y). Comme son nom l'indique, Delaunay 2D projette tous les points sur le plan x-y et effectue une triangulation Delaunay 2D. Tous les points ayant les mêmes coordonnées (x, y) seront traités de la même manière. Pour que cela fonctionne avec Delauny 2D, vous devrez apporter quelques corrections. Tout d'abord, vous devrez décaler les points sur cette étagère dans la direction x afin qu'ils n'aient pas la même coordonnée (x, y). C'est probablement plus facile à faire en éditant votre entrée. Deuxièmement, vous devrez supprimer manuellement les polygones "étrangers" générés en dehors du domaine. Vous pouvez le faire en effectuant des sélections dans la fenêtre 3D, puis en extrayant la sélection.

Une autre option consiste à écrire vos données dans un format différent qui capture le maillage que vous souhaitez représenter. Bien que n'étant pas carré, votre domaine est assez simple. Il devrait être assez facile de définir des quadrilatères ou des triangles qui relient les points. Vous pouvez les écrire dans un ensemble de données VTK hérité (http://www.vtk.org/VTK/img/file-formats.pdf), ce qui n'est pas beaucoup plus compliqué que d'écrire un fichier csv.

1

Chargement de votre .csv et l'application « Table aux points » ou « Table à grille structurée » vous aidera si vous voulez juste voir la structure

Écrire vos données à .vtk sera plus utile si vous voulez travailler sur le fichier réservoir. Ajouter un atributs à cela et ainsi ...