 |
MAGiC
V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
|
Aller à la documentation de ce fichier.
42 #pragma package(smart_init)
67 for (std::set<MG_FACE*>::iterator itRefFace = r.begin();
99 std::cout <<
" *** PolySurface::est_sur_surface : FONCTION NON IMPLEMENTE ***" << std::endl;
146 o <<
"));" << std::endl;;
158 for (
int i=0; i<nb_coedge; i++)
175 std::advance (itFace, __index);
199 for (itTriang=0;itTriang <adjacentTriangles->
get_nb(); itTriang++)
207 for (
int j=0;j<3;j++)
208 if (nos[j] == refNode)
214 for (
int j=0;j<3;j++)
221 double angle =
acos(-(x1x2*x2x3));
224 normalTriangle += normal;
228 normalTriangle /= angleTot;
229 for (
int j=0;j<3;j++)
230 __normal[j]=normalTriangle[j];
234 for (
int j=0;j<3;j++)
237 *__nbRefFace = ceil(angleTot);
250 for (std::map <unsigned long, MG_SOMMET *>::iterator itRefVertex=mergedVertices.begin();
251 itRefVertex != mergedVertices.end();
254 v = itRefVertex->second;
257 for (
int i=0;i<3;i++) __n[i]+=tmpNormal[i];
258 nbRefFace += tmpnbRefFace;
260 *__nbRefFace = nbRefFace;
268 for (std::map<MG_FACE *, OT_VECTEUR_3D >::const_iterator itF = __tabRefFaceUV.begin();
269 itF != __tabRefFaceUV.end(); itF++)
271 MG_FACE * refFace = itF->first;
285 if ((*__nbRefFace)==0)
291 for (
int i=0; i<3; i++)
292 __n[i]=n[i]*inv_n_norm;
302 printf(
"void PolySurface::get_liste_pole(std::vector<double> *liste_pole) : Fonction non implementee !\n");
virtual void enregistrer(std::ostream &o, double version)
std::set< MG_FACE * > & GetRefFaces()
virtual bool est_sur_surface(double *xyz, double precision=1e-6)
virtual double get_periode_v(void)
bool Contains(MG_FACE *__refFace)
TPL_LISTE_ENTITE< class MG_TRIANGLE * > * get_lien_triangle(void)
virtual void deriver_seconde(double *uv, double *xyzduu, double *xyzduv, double *xyzdvv, double *xyz=NULL, double *xyzdu=NULL, double *xyzdv=NULL)
virtual void get_param_NURBS(int &indx_premier_ptctr, TPL_LISTE_ENTITE< double > ¶m)
MG_FACE * GetRefFace(unsigned int __index)
void Merge(PolySurface &)
X get_premier(ITERATEUR &it)
std::set< MG_FACE * > _lst_ref_faces
virtual MG_BOUCLE * get_boucle(void)
virtual TPL_SET< MG_ELEMENT_MAILLAGE * > * get_lien_maillage(void)
void calcul_normale_unitaire(MG_SOMMET *v, double __n[3], int *__nbRefFace)
virtual void inverser(double *uv, double *xyz, double precision=1e-6)
virtual int get_nb_mg_coarete(void)
MG_SOMMET * GetRefVertex()
void InsertSurface(MG_FACE *)
double f(double x, long nb, double *xfonc, double *fonc, double eng, double eni, double lambda, double nor, double *fonc2)
virtual MG_FACE * get_mg_face(void)
virtual MG_NOEUD * get_noeud2(void)
virtual void evaluer(double *uv, double *xyz)
double2 acos(double2 &val)
virtual int est_periodique_u(void)
virtual MG_NOEUD * get_noeud1(void)
std::map< unsigned long, MG_SOMMET * > & GetMergedRefVertices()
virtual void calcul_normale_unitaire(double *uv, double *normale)
MG_ELEMENT_TOPOLOGIQUE * get_lien_topologie(void)
virtual MG_NOEUD * get_noeud3(void)
virtual double get_periode_u(void)
virtual double get_longueur(void) const
virtual int get_type_geometrique(TPL_LISTE_ENTITE< double > ¶m)
unsigned int GetRefFaceCount()
virtual int est_periodique_v(void)
virtual void deriver(double *uv, double *xyzdu, double *xyzdv)
virtual void get_liste_pole(std::vector< double > *liste_pole, double eps)
virtual MG_COARETE * get_mg_coarete(int num)