Arcane  v4.1.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
src/arcane/geometry/GeomShapeMng.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* GeomShapeMng.h (C) 2000-2026 */
9/* */
10/* Classe gérant les GeomShape d'un maillage. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_GEOMETRIC_GEOMSHAPEMNG_H
13#define ARCANE_GEOMETRIC_GEOMSHAPEMNG_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/core/VariableTypes.h"
18
19#include "arcane/geometry/GeomShapeView.h"
20
21/*---------------------------------------------------------------------------*/
22/*---------------------------------------------------------------------------*/
23
24namespace Arcane::geometric
25{
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
29/*---------------------------------------------------------------------------*/
30/*---------------------------------------------------------------------------*/
92class ARCANE_GEOMETRY_EXPORT GeomShapeMng
93{
94 // NOTE:
95 // Comme cette classe peut-être utilisée par copie ou créée directement
96 // via des noms de variable, elle ne doit pas contenir de champs
97 // autres que des variables Arcane pour qu'il n'y ait pas d'incohérences
98 // entre les différentes instances.
99
100 public:
101
107 GeomShapeMng(const GeomShapeMng& rhs);
108
109 public:
110
112 bool isInitialized() const { return m_cell_shape_nodes.arraySize()!=0; }
113
120 void initialize();
121
123 void initShape(GeomShapeView& ge,Cell cell) const
124 {
125 ge._setArray(m_cell_shape_nodes[cell].data(),m_cell_shape_faces[cell].data(),&m_cell_shape_centers[cell]);
126 ge._setItem(cell);
127 }
128
134
136 const String& name() const { return m_name; }
137
138 private:
139
140 String m_name;
144};
145
146/*---------------------------------------------------------------------------*/
147/*---------------------------------------------------------------------------*/
148
149typedef GeomShapeMng GeomCellMng;
150
151/*---------------------------------------------------------------------------*/
152/*---------------------------------------------------------------------------*/
153
154} // namespace Arcane::geometric
155
156/*---------------------------------------------------------------------------*/
157/*---------------------------------------------------------------------------*/
158
159#endif
Maille d'un maillage.
Definition Item.h:1214
Chaîne de caractères unicode.
Classe gérant les GeomShape des mailles d'un maillage.
GeomShapeMng(IMesh *mesh, const String &name)
Initialise pour le maillage mesh avec le nom name.
VariableCellArrayReal3 m_cell_shape_nodes
Elements génériques noeuds.
GeomShapeMutableView mutableShapeView(Cell cell)
Retourne une vue modifiable sur la GeomShape de la maille cell.
VariableCellArrayReal3 m_cell_shape_faces
Elements génériques face.
bool isInitialized() const
Indique si l'instance est initialisée.
void initShape(GeomShapeView &ge, Cell cell) const
Initialise la vue ge avec les informations de la maille cell.
VariableCellReal3 m_cell_shape_centers
Elements génériques centre.
const String & name() const
Nom du gestionnaire.
Vue constante sur une forme géométrique GeomShape.
MeshVariableScalarRefT< Cell, Real3 > VariableCellReal3
Grandeur au centre des mailles de type coordonnées.
MeshVariableArrayRefT< Cell, Real3 > VariableCellArrayReal3
Grandeur au centre des mailles de type tableau de coordonnées.