16#ifndef Elem_geom_base_included
17#define Elem_geom_base_included
19#include <TRUSTTabs_forward.h>
33template <
typename _SIZE_>
72 virtual int num_face(
int face, Type_Face& type)
const;
74 virtual Type_Face
type_face(
int face_typ=0)
const=0;
93template <
typename _SIZE_>
class Domaine_32_64 A Domain is a mesh composed of a set of geometric elements of the same type.
Class Elem_geom_base This class is the base class for the definition of elements.
virtual int face_sommet(int i, int j) const =0
Returns the number of the j-th vertex of the i-th face of the element.
ArrOfDouble_T< int > ArrOfDouble_t
DoubleVect_T< int > DoubleVect_t
virtual void reordonner()
ArrOfInt_T< int > ArrOfInt_t
void associer_domaine(const Domaine_32_64< int_t > &dom)
virtual void calculer_normales(const IntTab_t &faces_sommets, DoubleTab_t &face_normales) const
Exits with an error. This method is not pure virtual for convenience.
Faces_32_64< int > Faces_t
virtual int contient(const ArrOfDouble &pos, int_t elem) const =0
DOes the element 'elem' contains the point 'pos'.
virtual int num_face(int face, Type_Face &type) const
Returns the face parameter if the specified face type matches that of the geometric element.
Domaine_32_64< int > Domaine_t
void creer_faces_elem(Faces_t &, int_t) const
Create the faces of the element of the specified domain.
SmallArrOfTID_T< int > SmallArrOfTID_t
virtual void calculer_centres_gravite(DoubleTab_t &) const
Compute all centers of mass of all elements in the domain.
DoubleTab_T< int > DoubleTab_t
virtual Type_Face type_face(int face_typ=0) const =0
Type of the face of the element - face_typ < nb_type_face().
IntVect_T< int > IntVect_t
virtual int contient(const SmallArrOfTID_t &soms, int_t elem) const =0
Returns 1 if the vertices specified by the parameter "pos" are the vertices of the element "element" ...
virtual void creer_faces_elem(Faces_t &, int_t, Type_Face) const
Creates the faces of the specified geometric element of the domain using the given face type.
virtual void calculer_volumes(DoubleVect_t &vols) const =0
Compute vols of all elements in the domain.
virtual const Nom & nom_lml() const =0
virtual bool est_structure() const =0
virtual int nb_type_face() const
Nb of face types of the elemnt (for example 2 for a prism).
virtual int nb_som_face(int=0) const =0
Nb of vertices for one face of the element.
virtual int nb_faces(int=0) const =0
Nb of faces for the element.
OBS_PTR(Domaine_t) mon_dom
virtual int nb_som() const =0
Nb of vertices for the element.
virtual void get_tab_aretes_sommets_locaux(IntTab &aretes_som_local) const
Same as Elem_geom_base::get_tab_faces_sommets_locaux but for edges: aretes_som_local.
virtual int get_tab_faces_sommets_locaux(IntTab &faces_som_local) const
Fills faces_som_local(i,j) giving for 0 <= i < nb_faces() and 0 <= j < nb_som_face(i) the local verte...
Class Faces Faces describes a set of faces by their type (point, segment, triangle or quadrangle),...
class Nom: a character string for naming TRUST objects.
Objet_U()
Default constructor: assigns a unique identifier to the object (object_id_) and registers the object ...