16#include <Trianguler.h>
55 if ((
domaine.type_elem()->que_suis_je() ==
"Rectangle") || (
domaine.type_elem()->que_suis_je() ==
"Quadrangle"))
58 IntTab& les_elems=
domaine.les_elems();
59 const DoubleTab& som =
domaine.les_sommets();
61 IntTab new_elems(2*oldsz, 3);
62 for(
int i=0; i< oldsz; i++)
64 int i0=les_elems(i,0);
65 int i1=les_elems(i,1);
66 int i2=les_elems(i,2);
67 int i3=les_elems(i,3);
73 d1+=(som(i1,dir)-som(i2,dir))*(som(i1,dir)-som(i2,dir));
74 d2+=(som(i3,dir)-som(i0,dir))*(som(i3,dir)-som(i0,dir));
86 new_elems(i+oldsz,0)=i1;
87 new_elems(i+oldsz,1)=i2;
88 new_elems(i+oldsz,2)=i3;
95 new_elems(i+oldsz,0)=i0;
96 new_elems(i+oldsz,1)=i2;
97 new_elems(i+oldsz,2)=i3;
101 les_elems.
ref(new_elems);
105 Cerr <<
"We do not yet know how to Trianguler the "
106 <<
domaine.type_elem()->que_suis_je() <<
"s"<<finl;
Class defining operators and methods for all reading operation in an input flow (file,...
void mettre_a_jour_sous_domaine(Domaine_t &domaine, int_t &elem, int_t num_premier_elem, int_t nb_elem) const
Domaine_t & domaine(int i=0)
virtual Entree & readOn(Entree &)
Reads an Objet_U from an input stream. Virtual method to override.
virtual Sortie & printOn(Sortie &) const
Writes the object to an output stream. Virtual method to override.
Base class for output streams.
virtual void ref(const TRUSTTab &)
_SIZE_ dimension(int d) const
Triangulation_base Base class intended to factor out the triangulation action of interpreters.
Class Trianguler This class is an interpreter used to read and execute.
void trianguler(Domaine &) const override
Triangulates all elements of a domain: transforms the geometric elements of the domain into triangles...