16#ifndef Polyedre_included
17#define Polyedre_included
19#include <Poly_geom_base.h>
27template <
typename _SIZE_>
102template <
typename _SIZE_>
114template <
typename _SIZE_>
127template <
typename _SIZE_>
136 Cerr <<
"Error, a polyhedron has 1 type of faces and not " << i << finl;
148template <
typename _SIZE_>
163template <
typename _SIZE_>
170 return Type_Face::polygone_3D;
172 Cerr <<
"Error, a polyhedron has 1 type of faces and not " << i << finl;
174 return Type_Face::quadrangle_3D;
classe Domaine_32_64 un Domaine est un maillage compose d'un ensemble d'elements geometriques de meme...
Classe Elem_geom_base Cette classe est la classe de base pour la definition d'elements.
class Nom Une chaine de caractere pour nommer les objets de TRUST
Base class for polyedrons and polygons. Connectivity is stored in descending mode:
int get_nb_som_elem_max() const
int get_nb_face_elem_max() const
Classe Polyedre Cette represente l'element geometrique Polyedre.
int get_tab_faces_sommets_locaux(IntTab &faces_som_local) const override
remplit le tableau faces_som_local(i,j)
int_t get_somme_nb_faces_elem() const override
int nb_som_face(int=0) const override
Renvoie le nombre maximum de sommets des faces du type specifie.
void affecte_connectivite_numero_global(const ArrOfInt_t &Nodes, const ArrOfInt_t &FacesIndex, const ArrOfInt_t &PolyhedronIndex, IntTab_t &les_elems)
int nb_som() const override
Renvoie le nombre de sommets d'un Polyedre.
const Nom & nom_lml() const override
Renvoie le nom LML d'un polyedre = "POLYEDRE_"+nb_som_max.
void compute_virtual_index() override
DoubleTab_T< _SIZE_ > DoubleTab_t
const ArrOfInt_t & getElemIndex() const override
int contient(const SmallArrOfTID_t &soms, int_t elem) const override
NE FAIT RIEN: A CODER, renvoie toujours 0 Renvoie 1 si les sommets specifies par le parametre "pos".
const ArrOfInt_t & getPolyhedronIndex() const
void calculer_centres_gravite(DoubleTab_t &xp) const override
Compute all centers of mass of all elements in the domain.
int get_tab_faces_sommets_locaux(IntTab &faces_som_local, int_t elem) const override
friend class Polyedre_32_64
int face_sommet(int i, int j) const override
Renvoie le numero du j-ieme sommet de la i-ieme face de l'element.
DoubleVect_T< _SIZE_ > DoubleVect_t
TRUSTArray< int, _SIZE_ > BigArrOfInt_t
void ajouter_elements(const Elem_geom_base_32_64< _SIZE_ > &new_elem, const IntTab_t &new_elems, IntTab_t &les_elems)
on va ajouter les elements de type new_elem aux elements deja presents dans les_elems et dans new_ele...
int nb_faces(int=0) const override
Renvoie le nombre de faces du type specifie que possede l'element geometrique.
const BigArrOfInt_t & getNodes() const
void build_reduced(OWN_PTR(Elem_geom_base_32_64< int >)&type_elem, const ArrOfInt_t &elems_sous_part) const override
SmallArrOfTID_T< _SIZE_ > SmallArrOfTID_t
int contient(const ArrOfDouble &pos, int_t elem) const override
NE FAIT RIEN: A CODER, renvoie toujours 0.
void calculer_un_centre_gravite(const int_t elem, DoubleVect &xp) const override
void remplir_Nodes_glob(ArrOfInt_t &Nodes_glob, const IntTab_t &les_elems) const
ArrOfInt_T< _SIZE_ > ArrOfInt_t
Type_Face type_face(int=0) const override
Renvoie le i-ieme type de face.
const ArrOfInt_t & getFacesIndex() const
IntTab_T< _SIZE_ > IntTab_t
void set_nb_som_face_max(int s)
Domaine_32_64< _SIZE_ > Domaine_t
int get_nb_som_face_max() const
ArrOfInt_t PolyhedronIndex_
void calculer_volumes(DoubleVect_t &vols) const override
NE FAIT RIEN: A CODER Calcule les volumes des elements du domaine associe.
ArrOfInt_t & getsetPolyhedronIndex()
BigArrOfInt_t & getsetNodes()
static void exit(int exit_code=-1)
Routine de sortie de TRUST dans une region Kokkos.
Represents a an array of int/int64/double/... values.