12#ifndef ARCANE_GEOMETRIC_BARYCENTRICGEOMSHAPECOMPUTER_H
13#define ARCANE_GEOMETRIC_BARYCENTRICGEOMSHAPECOMPUTER_H
17#include "arcane/core/VariableTypes.h"
19#include "arcane/geometry/GeomShapeView.h"
24namespace Arcane::geometric
100 for (
Integer node_id = 0; node_id < nb_node; ++node_id) {
101 elem.setNode(node_id, node_coord[cell.
node(node_id)]);
110 elem.setFace(fid, 0.25 * (elem.node(id1) + elem.node(id2) + elem.node(id3) + elem.node(id4)));
116 elem.setFace(fid, (1.0 / 3.0) * (elem.node(id1) + elem.node(id2) + elem.node(id3)));
120 _setFace2D(Integer fid, GeomShapeMutableView& elem, Integer id1, Integer id2)
123 Real3(0.5 * (elem.node(id1).x + elem.node(id2).x),
124 0.5 * (elem.node(id1).y + elem.node(id2).y),
Node node(Int32 i) const
i-th node of the entity
Int32 nbNode() const
Number of nodes of the entity.
Calculates GeomShapes using barycenters.
static void computeTetraedron4(GeomShapeMutableView elem)
Calculates the positions of the nodes of a tetrahedral cell.
static void computeOctaedron12(GeomShapeMutableView elem)
Calculates the positions of the nodes of a prismatic cell with a hexagonal base.
static void setNodes(GeomShapeMutableView elem, const VariableNodeReal3 &node_coord, Cell cell)
Fills the node information of the cell cell with the coordinates of node_coord.
static void computeAll(GeomShapeMutableView elem, const VariableNodeReal3 &coords, Cell cell)
Calculates the information for the cell cell.
static void computeTriangle3(GeomShapeMutableView elem)
Calculates the positions of the nodes of a triangular cell.
static void computeQuad4(GeomShapeMutableView elem)
Calculates the positions of the nodes of a quadrilateral cell.
static void computeHeptaedron10(GeomShapeMutableView elem)
Calculates the positions of the nodes of a prismatic cell with a pentagonal base.
static void compute(GeomShapeMutableView elem)
Template method.
static void computePentaedron6(GeomShapeMutableView elem)
Calculates the positions of the nodes of a pentahedral cell.
static void computePyramid5(GeomShapeMutableView elem)
Calculates the positions of the nodes of a pyramidal cell.
static void computeHexaedron8(GeomShapeMutableView elem)
Calculates the positions of the nodes of a hexahedral cell.
Class managing the GeomShapes of a mesh.
Mutable view on a GeomShape.
ItemGroupT< Cell > CellGroup
Group of cells.
MeshVariableScalarRefT< Node, Real3 > VariableNodeReal3
Coordinate type quantity at node.
Int32 Integer
Type representing an integer.