Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::VtkMeshIOService

Lecteur des fichiers de maillage au format Vtk historique (legacy). Plus de détails...

+ Graphe d'héritage de Arcane::VtkMeshIOService:
+ Graphe de collaboration de Arcane::VtkMeshIOService:

Classes

class  VtkMesh
 
class  VtkStructuredGrid
 

Types publics

enum  eMeshType { VTK_MT_Unknown , VTK_MT_StructuredGrid , VTK_MT_UnstructuredGrid }
 

Fonctions membres publiques

 VtkMeshIOService (ITraceMng *tm)
 
void build ()
 
bool readMesh (IPrimaryMesh *mesh, const String &file_name, const String &dir_name, bool use_internal_partition)
 Permet de débuter la lecture d'un fichier vtk.
 
- Fonctions membres publiques hérités de Arccore::TraceAccessor
 TraceAccessor (ITraceMng *m)
 Construit un accesseur via le gestionnaire de trace m.
 
 TraceAccessor (const TraceAccessor &rhs)
 Constructeur par recopie.
 
TraceAccessoroperator= (const TraceAccessor &rhs)
 Opérateur de recopie.
 
virtual ~TraceAccessor ()
 Libère les ressources.
 
ITraceMngtraceMng () const
 Gestionnaire de trace.
 
TraceMessage info () const
 Flot pour un message d'information.
 
TraceMessage pinfo () const
 Flot pour un message d'information en parallèle.
 
TraceMessage info (char category) const
 Flot pour un message d'information d'une catégorie donnée.
 
TraceMessage pinfo (char category) const
 Flot pour un message d'information parallèle d'une catégorie donnée.
 
TraceMessage info (bool v) const
 Flot pour un message d'information.
 
TraceMessage warning () const
 Flot pour un message d'avertissement.
 
TraceMessage pwarning () const
 
TraceMessage error () const
 Flot pour un message d'erreur.
 
TraceMessage perror () const
 
TraceMessage log () const
 Flot pour un message de log.
 
TraceMessage plog () const
 Flot pour un message de log.
 
TraceMessage logdate () const
 Flot pour un message de log précédé de la date.
 
TraceMessage fatal () const
 Flot pour un message d'erreur fatale.
 
TraceMessage pfatal () const
 Flot pour un message d'erreur fatale en parallèle.
 
TraceMessageDbg debug (Trace::eDebugLevel=Trace::Medium) const
 Flot pour un message de debug.
 
Trace::eDebugLevel configDbgLevel () const
 Niveau debug du fichier de configuration.
 
TraceMessage info (Int32 verbose_level) const
 Flot pour un message d'information d'un niveau donné
 
TraceMessage linfo () const
 Flot pour un message d'information avec le niveau d'information local à cette instance.
 
TraceMessage linfo (Int32 relative_level) const
 Flot pour un message d'information avec le niveau d'information local à cette instance.
 
void fatalMessage (const StandaloneTraceMessage &o) const
 

Fonctions membres privées

bool _readStructuredGrid (IPrimaryMesh *mesh, VtkFile &, bool use_internal_partition)
 Permet de lire un fichier vtk contenant une STRUCTURED_GRID.
 
bool _readUnstructuredGrid (IPrimaryMesh *mesh, VtkFile &vtk_file, bool use_internal_partition)
 Permet de lire un fichier vtk contenant une UNSTRUCTURED_GRID.
 
void _readCellVariable (IMesh *mesh, VtkFile &vtk_file, const String &name_str, Integer nb_cell)
 Permet de créer une variable aux mailles à partir des infos du fichier vtk.
 
void _readItemGroup (IMesh *mesh, VtkFile &vtk_file, const String &name_str, Integer nb_item, eItemKind ik, ConstArrayView< Int32 > local_id)
 Permet de créer un groupe d'item.
 
void _readNodeGroup (IMesh *mesh, VtkFile &vtk_file, const String &name, Integer nb_item)
 Permet de créer un groupe de node.
 
void _createFaceGroup (IMesh *mesh, const String &name, Int32ConstArrayView faces_lid)
 Permet de créer un groupe de face de nom "name" et composé des faces ayant les ids inclus dans "faces_lid".
 
bool _readData (IMesh *mesh, VtkFile &vtk_file, bool use_internal_partition, eItemKind cell_kind, Int32ConstArrayView local_id, Integer nb_node)
 Permet de lire les données complémentaires (POINT_DATA / CELL_DATA).
 
void _readNodesUnstructuredGrid (IMesh *mesh, VtkFile &vtk_file, Array< Real3 > &node_coords)
 Lecture des noeuds et de leur coordonnées.
 
void _readCellsUnstructuredGrid (IMesh *mesh, VtkFile &vtk_file, Array< Integer > &cells_nb_node, Array< ItemTypeId > &cells_type, Array< Int64 > &cells_connectivity)
 Lecture des mailles et de leur connectivité.
 
void _readFacesMesh (IMesh *mesh, const String &file_name, const String &dir_name, bool use_internal_partition)
 Permet de lire le fichier truc.vtkfaces.vtk (s'il existe).
 
bool _readMetadata (IMesh *mesh, VtkFile &vtk_file)
 Lecture des metadata.
 

Membres hérités additionnels

- Fonctions membres protégées hérités de Arccore::TraceAccessor
void _setLocalVerboseLevel (Int32 v)
 
Int32 _localVerboseLevel () const
 

Description détaillée

Lecteur des fichiers de maillage au format Vtk historique (legacy).

Il s'agit d'une version préliminaire qui ne supporte que les DATASET de type STRUCTURED_GRID ou UNSTRUCTURED_GRID. De plus, le lecteur et l'écrivain n'ont été que partiellement testés.

L'en-tête du fichier vtk doit être:

vtk DataFile Version X.X

Où X.X est la version du fichier VTK (support des fichiers VTK <= 4.2).

Il est possible de spécifier un ensemble de variables dans le fichier. Dans ce cas, leurs valeurs sont lues en même temps que le maillage et servent à initialiser les variables. Actuellement, seules les valeurs aux mailles sont supportées.

Comme Vtk ne supporte pas la notion de groupe, il est possible de spécifier un groupe comme étant une variable (CELL_DATA). Par convention, si la variable commence par la chaine 'GROUP_', alors il s'agit d'un groupe. La variable doit être déclarée comme suit: \begincode CELL_DATA n SCALARS GROUP_m int 1 LOOKUP_TABLE default avec n le nombre de mailles, et m le nom du groupe. Une maille appartient au groupe si la valeur de la donnée est différente de 0.

Actuellement, on NE peut PAS spécifier de groupes de points.

Pour spécifier des groupes de faces, il faut un fichier vtk additionnel, identique au fichier d'origine mais contenant la description des faces au lieu des mailles. Par convention, si le fichier courant lu s'appelle 'toto.vtk', le fichier décrivant les faces sera 'toto.vtkfaces.vtk'. Ce fichier est optionnel.

Définition à la ligne 102 du fichier VtkMeshIOService.cc.

Documentation des énumérations membres

◆ eMeshType

enum Arcane::VtkMeshIOService::eMeshType

Définition à la ligne 117 du fichier VtkMeshIOService.cc.

Documentation des constructeurs et destructeur

◆ VtkMeshIOService()

Arcane::VtkMeshIOService::VtkMeshIOService ( ITraceMng tm)
inlineexplicit

Définition à la ligne 107 du fichier VtkMeshIOService.cc.

Documentation des fonctions membres

◆ _createFaceGroup()

void Arcane::VtkMeshIOService::_createFaceGroup ( IMesh mesh,
const String name,
Int32ConstArrayView  faces_lid 
)
private

Permet de créer un groupe de face de nom "name" et composé des faces ayant les ids inclus dans "faces_lid".

Paramètres
meshLe maillage à remplir
nameLe nom du groupe à créer
faces_lidLes ids des faces à inclure dans le groupe

Définition à la ligne 1724 du fichier VtkMeshIOService.cc.

Références Arcane::IMeshBase::faceFamily(), et Arccore::TraceAccessor::info().

Référencé par _readStructuredGrid().

◆ _readCellsUnstructuredGrid()

void Arcane::VtkMeshIOService::_readCellsUnstructuredGrid ( IMesh mesh,
VtkFile vtk_file,
Array< Integer > &  cells_nb_node,
Array< ItemTypeId > &  cells_type,
Array< Int64 > &  cells_connectivity 
)
private

Lecture des mailles et de leur connectivité.

En retour, remplit cells_nb_node, cells_type et cells_connectivity.

Paramètres
meshLe maillage à remplir
vtk_fileRéférence vers un objet VtkFile
cells_nb_nodeNombre de nodes de chaque cell
cells_typeType de chaque cell
cells_connectivityConnectivités entre les cells

Définition à la ligne 1041 du fichier VtkMeshIOService.cc.

Références _readMetadata(), et ARCANE_THROW.

Référencé par _readFacesMesh(), et _readUnstructuredGrid().

◆ _readCellVariable()

void Arcane::VtkMeshIOService::_readCellVariable ( IMesh mesh,
VtkFile vtk_file,
const String var_name,
Integer  nb_cell 
)
private

Permet de créer une variable aux mailles à partir des infos du fichier vtk.

Paramètres
meshLe maillage à remplir
vtk_fileRéférence vers un objet VtkFile
var_nameLe nom de la variable à créer
nb_cellLe nombre de cells

Définition à la ligne 1744 du fichier VtkMeshIOService.cc.

Références _readMetadata(), Arccore::TraceAccessor::info(), et Arcane::IMesh::variableMng().

Référencé par _readData().

◆ _readData()

bool Arcane::VtkMeshIOService::_readData ( IMesh mesh,
VtkFile vtk_file,
bool  use_internal_partition,
eItemKind  cell_kind,
Int32ConstArrayView  local_id,
Integer  nb_node 
)
private

Permet de lire les données complémentaires (POINT_DATA / CELL_DATA).

Paramètres
meshLe maillage à remplir
file_nameLe nom du fichier vtk (avec l'extension)
use_internal_partitionDoit-on utiliser le partitionneur interne ou non
cell_kindType des cells du maillage
local_idTableau contenant les local_id des cells
nb_nodeNombre de nodes
Renvoie
false si tout s'est bien passé, true sinon

Définition à la ligne 1448 du fichier VtkMeshIOService.cc.

Références _readCellVariable(), _readItemGroup(), _readNodeGroup(), Arcane::IParallelMng::broadcastMemoryBuffer(), Arcane::IParallelMng::commRank(), Arccore::Array< T >::copy(), Arccore::TraceAccessor::debug(), Arccore::TraceAccessor::error(), Arccore::TraceAccessor::fatal(), Arcane::IK_Cell, Arccore::TraceAccessor::info(), Arcane::VtkFile::isEqualString(), Arcane::IMeshBase::itemFamily(), Arcane::IXmlDocumentHolder::loadFromBuffer(), Arcane::IMeshBase::nbItem(), Arcane::IMeshBase::nodeFamily(), Arcane::IMesh::parallelMng(), Arccore::Array< T >::resize(), Arccore::AbstractArray< T >::size(), Arccore::TraceAccessor::traceMng(), Arccore::String::utf8(), et Arcane::IMesh::variableMng().

Référencé par _readFacesMesh(), _readStructuredGrid(), et _readUnstructuredGrid().

◆ _readFacesMesh()

void Arcane::VtkMeshIOService::_readFacesMesh ( IMesh mesh,
const String file_name,
const String dir_name,
bool  use_internal_partition 
)
private

Permet de lire le fichier truc.vtkfaces.vtk (s'il existe).

Paramètres
meshLe maillage à remplir
file_nameLe nom du fichier vtk (avec l'extension)
dir_nameLe chemin du fichier
use_internal_partitionDoit-on utiliser le partitionneur interne ou non

Définition à la ligne 1345 du fichier VtkMeshIOService.cc.

Références _readCellsUnstructuredGrid(), _readData(), _readNodesUnstructuredGrid(), Arcane::IParallelMng::commRank(), Arccore::TraceAccessor::error(), Arcane::IK_Face, Arccore::TraceAccessor::info(), Arcane::VtkFile::isEqualString(), Arcane::IMesh::parallelMng(), et Arcane::IMesh::utilities().

Référencé par readMesh().

◆ _readItemGroup()

void Arcane::VtkMeshIOService::_readItemGroup ( IMesh mesh,
VtkFile vtk_file,
const String name,
Integer  nb_item,
eItemKind  ik,
ConstArrayView< Int32 >  local_id 
)
private

Permet de créer un groupe d'item.

Paramètres
meshLe maillage à remplir
vtk_fileRéférence vers un objet VtkFile
nameLe nom du groupe à créer
nb_itemNombre d'items à lire et à inclure dans le groupe
ikType des items lus
local_idTableau contenant les local_id des cells

Définition à la ligne 1773 du fichier VtkMeshIOService.cc.

Références _readMetadata(), Arccore::TraceAccessor::info(), et Arcane::IMeshBase::itemFamily().

Référencé par _readData().

◆ _readMetadata()

bool Arcane::VtkMeshIOService::_readMetadata ( IMesh mesh,
VtkFile vtk_file 
)
private

Lecture des metadata.

Paramètres
meshLe maillage à remplir
vtk_fileRéférence vers un objet VtkFile
Renvoie
false si tout s'est bien passé, true sinon

Définition à la ligne 1129 du fichier VtkMeshIOService.cc.

Référencé par _readCellsUnstructuredGrid(), _readCellVariable(), _readItemGroup(), _readNodeGroup(), _readNodesUnstructuredGrid(), et _readStructuredGrid().

◆ _readNodeGroup()

void Arcane::VtkMeshIOService::_readNodeGroup ( IMesh mesh,
VtkFile vtk_file,
const String name,
Integer  nb_item 
)
private

Permet de créer un groupe de node.

Paramètres
meshLe maillage à remplir
vtk_fileRéférence vers un objet VtkFile
nameLe nom du groupe à créer
nb_itemNombre d'items à lire et à inclure dans le groupe

Définition à la ligne 1804 du fichier VtkMeshIOService.cc.

Références _readMetadata(), Arcane::IK_Node, Arccore::TraceAccessor::info(), et Arcane::IMeshBase::itemFamily().

Référencé par _readData().

◆ _readNodesUnstructuredGrid()

void Arcane::VtkMeshIOService::_readNodesUnstructuredGrid ( IMesh mesh,
VtkFile vtk_file,
Array< Real3 > &  node_coords 
)
private

Lecture des noeuds et de leur coordonnées.

Paramètres
meshLe maillage à remplir
vtk_fileRéférence vers un objet VtkFile
node_coordsL'array à remplir de coordonnées de nodes

Définition à la ligne 969 du fichier VtkMeshIOService.cc.

Références _readMetadata(), et Arccore::TraceAccessor::info().

Référencé par _readFacesMesh(), et _readUnstructuredGrid().

◆ _readStructuredGrid()

bool Arcane::VtkMeshIOService::_readStructuredGrid ( IPrimaryMesh mesh,
VtkFile vtk_file,
bool  use_internal_partition 
)
private

Permet de lire un fichier vtk contenant une STRUCTURED_GRID.

Paramètres
meshLe maillage à remplir
vtk_fileRéférence vers un objet VtkFile
use_internal_partitionDoit-on utiliser le partitionneur interne ou non
Renvoie
false si tout s'est bien passé, true sinon

Définition à la ligne 690 du fichier VtkMeshIOService.cc.

Références _createFaceGroup(), _readData(), _readMetadata(), Arcane::IMeshBase::allFaces(), Arcane::IMeshBase::allNodes(), Arcane::IPrimaryMesh::allocateCells(), ARCANE_FATAL, Arcane::IPrimaryMesh::endAllocate(), ENUMERATE_FACE, ENUMERATE_NODE, Arccore::TraceAccessor::error(), Arcane::IK_Cell, Arccore::TraceAccessor::info(), Arcane::Item::localId(), Arcane::ItemWithNodes::nodes(), Arcane::IPrimaryMesh::nodesCoordinates(), Arcane::IMesh::parallelMng(), Arcane::IPrimaryMesh::setDimension(), et Arcane::Item::uniqueId().

Référencé par readMesh().

◆ _readUnstructuredGrid()

bool Arcane::VtkMeshIOService::_readUnstructuredGrid ( IPrimaryMesh mesh,
VtkFile vtk_file,
bool  use_internal_partition 
)
private

Permet de lire un fichier vtk contenant une UNSTRUCTURED_GRID.

Paramètres
meshLe maillage à remplir
vtk_fileRéférence vers un objet VtkFile
use_internal_partitionDoit-on utiliser le partitionneur interne ou non
Renvoie
false si tout s'est bien passé, true sinon

Définition à la ligne 1237 du fichier VtkMeshIOService.cc.

Références _readCellsUnstructuredGrid(), _readData(), _readNodesUnstructuredGrid(), Arcane::IMeshBase::allNodes(), ARCANE_FATAL, Arccore::TraceAccessor::debug(), ENUMERATE_NODE, Arcane::IK_Cell, Arcane::IMesh::itemTypeMng(), Arcane::IPrimaryMesh::nodesCoordinates(), Arcane::IMesh::parallelMng(), Arcane::IPrimaryMesh::setDimension(), et Arcane::Item::uniqueId().

Référencé par readMesh().

◆ build()

void Arcane::VtkMeshIOService::build ( )
inline

Définition à la ligne 113 du fichier VtkMeshIOService.cc.

◆ readMesh()

bool Arcane::VtkMeshIOService::readMesh ( IPrimaryMesh mesh,
const String file_name,
const String dir_name,
bool  use_internal_partition 
)

Permet de débuter la lecture d'un fichier vtk.

Paramètres
meshLe maillage à remplir
file_nameLe nom du fichier vtk (avec l'extension)
dir_nameLe chemin du fichier
use_internal_partitionDoit-on utiliser le partitionneur interne ou non
Renvoie
false si tout s'est bien passé, true sinon

Définition à la ligne 591 du fichier VtkMeshIOService.cc.

Références _readFacesMesh(), _readStructuredGrid(), _readUnstructuredGrid(), Arccore::TraceAccessor::debug(), Arccore::TraceAccessor::error(), Arccore::TraceAccessor::info(), Arcane::VtkFile::isEqualString(), et Arccore::String::localstr().


La documentation de cette classe a été générée à partir du fichier suivant :