MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
Référence de la classe CAD4FE::PolyCurve

#include <CAD4FE_PolyCurve.h>

Graphe d'héritage de CAD4FE::PolyCurve:
Graphe de collaboration de CAD4FE::PolyCurve:

Fonctions membres publiques

 PolyCurve ()
 
 PolyCurve (MG_ARETE *)
 
 PolyCurve (MG_SOMMET *)
 
void InsertCurve (MG_ARETE *)
 
void Merge (PolyCurve &)
 
void SetPeriodicPoleRefVertex (MG_SOMMET *__v)
 
MG_ARETEGetRefEdge (unsigned int)
 
unsigned int RefEdge_GetIndex (MG_ARETE *__refEdge)
 
unsigned GetRefEdgeCount ()
 
MG_SOMMETGetRefVertex (unsigned int)
 
unsigned int RefVertex_GetIndex (MG_SOMMET *__refVertex)
 
unsigned GetRefVertexCount ()
 
bool ContainsRefEdge (MG_ARETE *__refEdge)
 
bool ContainsRefVertex (MG_SOMMET *__v)
 
bool Contains (MG_ELEMENT_TOPOLOGIQUE *__topo)
 
void RefEdge_GetT (unsigned __index, double length, double *__t, double *__dt, bool __curvilinearLength)
 
void RefEdge_GetS (unsigned __iEdge, double __t, double *__s, bool __curvilinearLength)
 
double RefVertex_GetS (MG_SOMMET *__refVertex)
 
void Parameter_SToRefEdgeT (double __s, unsigned *__iEdge, double *__t, double *__dt, bool __curvilinearLength)
 
void Parameter_SToRefEdgeT (double __s, MG_ARETE **, double *__t, double *__dt, bool __curvilinearLength)
 
void Parameter_RefEdgeTToS (double __t, MG_ARETE *__edge, double *__s, bool __curvilinearLength)
 
void evaluer (double __s, double __X[3])
 
void evaluer (double __s, double __X[3], bool __curvilinearLength)
 
void deriver (double __s, double __X[3])
 
void deriver (double __s, double __X[3], bool __curvilinearLength)
 
void deriver_seconde (double __s, double __ddxyz[3], double *__dxyz=NULL, double *__xyz=NULL)
 
void deriver_seconde (double __s, double __ddxyz[3], double *__dxyz=NULL, double *__xyz=NULL, bool __curvilinearLength=false)
 
void inverser (double &__t, double __point[3], double precision)
 
void inverser (double &__t, double __point[3], double precision, bool __curvilinearLength)
 
bool est_sur_courbe (double *xyz, double precision=1e-6)
 
int est_periodique (void)
 
double get_periode (void)
 
void enregistrer (std::ostream &o, double version)
 
int get_type_geometrique (TPL_LISTE_ENTITE< double > &param)
 
MG_SOMMETget_sommet1 ()
 
MG_SOMMETget_sommet2 ()
 
double get_sommet1_s ()
 
double get_sommet2_s ()
 
double get_tmin ()
 
double get_tmax ()
 
double get_longueur (double __s_min=-1, double __s_max=-1, double precision=1E-6)
 
std::vector< MG_ARETE * > & GetRefEdges ()
 
double GetLength (MG_ARETE *__edge)
 
double GetLength (unsigned __index)
 
void VerifyS (double &__s)
 
bool IsPoint () const
 
virtual void get_param_NURBS (int &indx_premier_ptctr, TPL_LISTE_ENTITE< double > &param)
 
- Fonctions membres publiques hérités de MG_COURBE
 MG_COURBE (unsigned long num)
 
 MG_COURBE ()
 
 MG_COURBE (MG_COURBE &mdd)
 
virtual ~MG_COURBE ()
 
virtual int get_type (void)
 
virtual void evaluer (double t, double *xyz)=0
 
virtual void deriver (double t, double *xyz)=0
 
virtual void deriver_seconde (double t, double *ddxyz, double *dxyz=NULL, double *xyz=NULL)=0
 
virtual void inverser (double &t, double *xyz, double precision=1e-6)=0
 
virtual double get_M (double t)
 
virtual VCTget_vectorisation (void)
 
- Fonctions membres publiques hérités de MG_ELEMENT_GEOMETRIQUE
 MG_ELEMENT_GEOMETRIQUE ()
 
 MG_ELEMENT_GEOMETRIQUE (unsigned long num)
 
 MG_ELEMENT_GEOMETRIQUE (MG_ELEMENT_GEOMETRIQUE &mdd)
 
virtual ~MG_ELEMENT_GEOMETRIQUE ()
 
virtual std::string get_idoriginal (void)
 
virtual void change_idoriginal (std::string id)
 
- Fonctions membres publiques hérités de MG_IDENTIFICATEUR
 MG_IDENTIFICATEUR (unsigned long num)
 
 MG_IDENTIFICATEUR ()
 
 MG_IDENTIFICATEUR (MG_IDENTIFICATEUR &mdd)
 
virtual ~MG_IDENTIFICATEUR ()
 
unsigned long get_id ()
 
void change_id (unsigned long idtmp)
 
virtual void get_fichier_dependant (std::vector< std::string > &liste_fichier)
 

Fonctions membres publiques statiques

static void VerifyRefEdgeT (MG_ARETE *__edge, double &__t)
 

Attributs privés

std::vector< MG_ARETE * > lst_ref_edges
 
std::vector< MG_SOMMET * > lst_vertices
 
std::vector< double > lst_length
 

Membres hérités additionnels

- Types publics hérités de MG_ELEMENT_GEOMETRIQUE
enum  TYPE_ELEMENT_GEOMETRIQUE {
  LC_POINT =-1,
  POINT =0,
  COURBE =1,
  SURFACE =2
}
 
- Attributs protégés hérités de MG_COURBE
double t_min
 
double t_max
 
class VCT_COURBEvect
 

Description détaillée

Définition à la ligne 38 du fichier CAD4FE_PolyCurve.h.

Documentation des constructeurs et destructeur

◆ PolyCurve() [1/3]

PolyCurve::PolyCurve ( )

Définition à la ligne 58 du fichier CAD4FE_PolyCurve.cpp.

◆ PolyCurve() [2/3]

PolyCurve::PolyCurve ( MG_ARETE __edge)

Définition à la ligne 63 du fichier CAD4FE_PolyCurve.cpp.

Références InsertCurve(), MG_COURBE::t_max, et MG_COURBE::t_min.

Voici le graphe d'appel pour cette fonction :

◆ PolyCurve() [3/3]

PolyCurve::PolyCurve ( MG_SOMMET __vertex)

Définition à la ligne 70 du fichier CAD4FE_PolyCurve.cpp.

Références lst_length, lst_vertices, MG_COURBE::t_max, et MG_COURBE::t_min.

Documentation des fonctions membres

◆ Contains()

bool PolyCurve::Contains ( MG_ELEMENT_TOPOLOGIQUE __topo)

Définition à la ligne 130 du fichier CAD4FE_PolyCurve.cpp.

Références ContainsRefEdge(), ContainsRefVertex(), MG_SOMMET::get_dimension(), et MG_ELEMENT_TOPOLOGIQUE::get_dimension().

Référencé par CAD4FE::MCSegment::RefineInRefEdge().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ ContainsRefEdge()

bool PolyCurve::ContainsRefEdge ( MG_ARETE __refEdge)

Définition à la ligne 120 du fichier CAD4FE_PolyCurve.cpp.

Références lst_ref_edges.

Référencé par Contains().

Voici le graphe des appelants de cette fonction :

◆ ContainsRefVertex()

bool PolyCurve::ContainsRefVertex ( MG_SOMMET __v)

Définition à la ligne 125 du fichier CAD4FE_PolyCurve.cpp.

Références lst_vertices.

Référencé par CAD4FE::MCSegment::Construct_MCEdge(), Contains(), et CAD4FE::MCSegment::Find_MCFace().

Voici le graphe des appelants de cette fonction :

◆ deriver() [1/2]

void PolyCurve::deriver ( double  __s,
double  __X[3] 
)

Définition à la ligne 532 du fichier CAD4FE_PolyCurve.cpp.

◆ deriver() [2/2]

void PolyCurve::deriver ( double  __s,
double  __X[3],
bool  __curvilinearLength 
)

Définition à la ligne 539 du fichier CAD4FE_PolyCurve.cpp.

Références MG_ARETE::deriver(), IsPoint(), lst_ref_edges, Parameter_SToRefEdgeT(), VerifyRefEdgeT(), et VerifyS().

Voici le graphe d'appel pour cette fonction :

◆ deriver_seconde() [1/2]

void PolyCurve::deriver_seconde ( double  __s,
double  __ddxyz[3],
double *  __dxyz = NULL,
double *  __xyz = NULL 
)

Définition à la ligne 563 du fichier CAD4FE_PolyCurve.cpp.

◆ deriver_seconde() [2/2]

void PolyCurve::deriver_seconde ( double  __s,
double  __ddxyz[3],
double *  __dxyz = NULL,
double *  __xyz = NULL,
bool  __curvilinearLength = false 
)

Définition à la ligne 570 du fichier CAD4FE_PolyCurve.cpp.

Références MG_ARETE::deriver(), MG_ARETE::evaluer(), evaluer(), IsPoint(), lst_ref_edges, Parameter_SToRefEdgeT(), et VerifyS().

Voici le graphe d'appel pour cette fonction :

◆ enregistrer()

void PolyCurve::enregistrer ( std::ostream &  o,
double  version 
)
virtual

Implémente MG_COURBE.

Définition à la ligne 746 du fichier CAD4FE_PolyCurve.cpp.

Références MG_IDENTIFICATEUR::get_id(), GetRefEdge(), GetRefEdgeCount(), GetRefVertex(), et IsPoint().

Voici le graphe d'appel pour cette fonction :

◆ est_periodique()

int PolyCurve::est_periodique ( void  )
virtual

Implémente MG_COURBE.

Définition à la ligne 724 du fichier CAD4FE_PolyCurve.cpp.

Références get_sommet1(), et get_sommet2().

Référencé par CAD4FE::MCBody::AddMCEdgeCovertices(), get_periode(), CAD4FE::MCSegment::RefineInRefEdge(), SetPeriodicPoleRefVertex(), CAD4FE::MCBody::SuppressMCVertex(), et VerifyS().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ est_sur_courbe()

bool PolyCurve::est_sur_courbe ( double *  xyz,
double  precision = 1e-6 
)
virtual

Implémente MG_COURBE.

Définition à la ligne 233 du fichier CAD4FE_PolyCurve.cpp.

◆ evaluer() [1/2]

void PolyCurve::evaluer ( double  __s,
double  __X[3] 
)

Définition à la ligne 506 du fichier CAD4FE_PolyCurve.cpp.

Référencé par CAD4FE::MCSegment::Construct_MCEdge(), CAD4FE::CovertexCriteria::CovertexCriteria(), et deriver_seconde().

Voici le graphe des appelants de cette fonction :

◆ evaluer() [2/2]

void PolyCurve::evaluer ( double  __s,
double  __X[3],
bool  __curvilinearLength 
)

Définition à la ligne 513 du fichier CAD4FE_PolyCurve.cpp.

Références MG_ARETE::evaluer(), IsPoint(), lst_ref_edges, lst_vertices, Parameter_SToRefEdgeT(), VerifyRefEdgeT(), et VerifyS().

Voici le graphe d'appel pour cette fonction :

◆ get_longueur()

◆ get_param_NURBS()

void PolyCurve::get_param_NURBS ( int &  indx_premier_ptctr,
TPL_LISTE_ENTITE< double > &  param 
)
virtual

Implémente MG_COURBE.

Définition à la ligne 969 du fichier CAD4FE_PolyCurve.cpp.

◆ get_periode()

double PolyCurve::get_periode ( void  )
virtual

Implémente MG_COURBE.

Définition à la ligne 732 du fichier CAD4FE_PolyCurve.cpp.

Références est_periodique(), et get_longueur().

Référencé par CAD4FE::MCSegment::Construct_MCEdge(), CAD4FE::MCSegment::RefineInRefEdge(), et VerifyS().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ get_sommet1()

MG_SOMMET * PolyCurve::get_sommet1 ( )

Définition à la ligne 691 du fichier CAD4FE_PolyCurve.cpp.

Références lst_vertices.

Référencé par est_periodique(), InsertCurve(), Merge(), CAD4FE::MCBody::SplitEdge(), et CAD4FE::MCBody::SuppressMCVertex().

Voici le graphe des appelants de cette fonction :

◆ get_sommet1_s()

double PolyCurve::get_sommet1_s ( )

Définition à la ligne 704 du fichier CAD4FE_PolyCurve.cpp.

Références get_tmin().

Voici le graphe d'appel pour cette fonction :

◆ get_sommet2()

MG_SOMMET * PolyCurve::get_sommet2 ( )

Définition à la ligne 698 du fichier CAD4FE_PolyCurve.cpp.

Références lst_vertices.

Référencé par est_periodique(), InsertCurve(), Merge(), et CAD4FE::MCBody::SplitEdge().

Voici le graphe des appelants de cette fonction :

◆ get_sommet2_s()

double PolyCurve::get_sommet2_s ( )

Définition à la ligne 711 du fichier CAD4FE_PolyCurve.cpp.

Références get_tmax().

Voici le graphe d'appel pour cette fonction :

◆ get_tmax()

double PolyCurve::get_tmax ( )
virtual

Réimplémentée à partir de MG_COURBE.

Définition à la ligne 685 du fichier CAD4FE_PolyCurve.cpp.

Références MG_COURBE::t_max.

Référencé par get_sommet2_s(), et VerifyS().

Voici le graphe des appelants de cette fonction :

◆ get_tmin()

double PolyCurve::get_tmin ( )
virtual

Réimplémentée à partir de MG_COURBE.

Définition à la ligne 680 du fichier CAD4FE_PolyCurve.cpp.

Références MG_COURBE::t_min.

Référencé par get_sommet1_s().

Voici le graphe des appelants de cette fonction :

◆ get_type_geometrique()

int PolyCurve::get_type_geometrique ( TPL_LISTE_ENTITE< double > &  param)
virtual

Implémente MG_COURBE.

Définition à la ligne 741 du fichier CAD4FE_PolyCurve.cpp.

◆ GetLength() [1/2]

double PolyCurve::GetLength ( MG_ARETE __edge)

Définition à la ligne 79 du fichier CAD4FE_PolyCurve.cpp.

Références MG_ARETE::get_longueur(), MG_ARETE::get_tmax(), et MG_ARETE::get_tmin().

Référencé par CAD4FE::MCSegment::Construct_MCEdge(), InsertCurve(), Parameter_RefEdgeTToS(), Parameter_SToRefEdgeT(), RefEdge_GetT(), RefVertex_GetS(), et CAD4FE::SplitPolyCurve().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ GetLength() [2/2]

double PolyCurve::GetLength ( unsigned  __index)

Définition à la ligne 85 du fichier CAD4FE_PolyCurve.cpp.

Références lst_length.

◆ GetRefEdge()

◆ GetRefEdgeCount()

◆ GetRefEdges()

std::vector< MG_ARETE * > & PolyCurve::GetRefEdges ( )

Définition à la ligne 770 du fichier CAD4FE_PolyCurve.cpp.

Références lst_ref_edges.

◆ GetRefVertex()

MG_SOMMET * PolyCurve::GetRefVertex ( unsigned int  __index)

◆ GetRefVertexCount()

unsigned PolyCurve::GetRefVertexCount ( )

Définition à la ligne 114 du fichier CAD4FE_PolyCurve.cpp.

Références lst_vertices.

Référencé par CAD4FE::MCSegment::Construct_MCEdge(), CAD4FE::ShortestPathByClosestPointOnEdge::InitializeClosestPointToSegment(), et CAD4FE::SplitPolyCurve().

Voici le graphe des appelants de cette fonction :

◆ InsertCurve()

void PolyCurve::InsertCurve ( MG_ARETE __edge)

Définition à la ligne 347 du fichier CAD4FE_PolyCurve.cpp.

Références MG_ARETE::get_cosommet1(), MG_ARETE::get_cosommet2(), MG_IDENTIFICATEUR::get_id(), MG_COSOMMET::get_sommet(), get_sommet1(), get_sommet2(), GetLength(), lst_length, lst_ref_edges, lst_vertices, MG_COURBE::t_max, MG_COURBE::t_min, et V().

Référencé par Merge(), et PolyCurve().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ inverser() [1/2]

void PolyCurve::inverser ( double &  __t,
double  __point[3],
double  precision 
)

Définition à la ligne 717 du fichier CAD4FE_PolyCurve.cpp.

Référencé par CAD4FE::MCSegment::Construct_MCEdge(), CAD4FE::MCAA::NodeConstrictedSection(), et CAD4FE::SplitPolyCurve().

Voici le graphe des appelants de cette fonction :

◆ inverser() [2/2]

void PolyCurve::inverser ( double &  __t,
double  __point[3],
double  precision,
bool  __curvilinearLength 
)

◆ IsPoint()

bool PolyCurve::IsPoint ( ) const

Définition à la ligne 963 du fichier CAD4FE_PolyCurve.cpp.

Références lst_ref_edges, et lst_vertices.

Référencé par deriver(), deriver_seconde(), enregistrer(), et evaluer().

Voici le graphe des appelants de cette fonction :

◆ Merge()

void PolyCurve::Merge ( PolyCurve __polycurve)

Définition à la ligne 605 du fichier CAD4FE_PolyCurve.cpp.

Références MG_IDENTIFICATEUR::get_id(), get_sommet1(), get_sommet2(), InsertCurve(), lst_ref_edges, et lst_vertices.

Référencé par MG_FILE::lire(), et CAD4FE::MCEdge::MCEdge().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ Parameter_RefEdgeTToS()

void PolyCurve::Parameter_RefEdgeTToS ( double  __t,
MG_ARETE __edge,
double *  __s,
bool  __curvilinearLength 
)

Définition à la ligne 487 du fichier CAD4FE_PolyCurve.cpp.

Références GetLength(), RefEdge_GetIndex(), et RefEdge_GetS().

Référencé par inverser(), et CAD4FE::MCSegment::RefineInRefEdge().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ Parameter_SToRefEdgeT() [1/2]

void PolyCurve::Parameter_SToRefEdgeT ( double  __s,
MG_ARETE **  __edge,
double *  __t,
double *  __dt,
bool  __curvilinearLength 
)

Définition à la ligne 465 du fichier CAD4FE_PolyCurve.cpp.

Références GetRefEdge(), et Parameter_SToRefEdgeT().

Voici le graphe d'appel pour cette fonction :

◆ Parameter_SToRefEdgeT() [2/2]

void PolyCurve::Parameter_SToRefEdgeT ( double  __s,
unsigned *  __iEdge,
double *  __t,
double *  __dt,
bool  __curvilinearLength 
)

◆ RefEdge_GetIndex()

unsigned PolyCurve::RefEdge_GetIndex ( MG_ARETE __refEdge)

Définition à la ligne 473 du fichier CAD4FE_PolyCurve.cpp.

Références lst_ref_edges.

Référencé par Parameter_RefEdgeTToS().

Voici le graphe des appelants de cette fonction :

◆ RefEdge_GetS()

void PolyCurve::RefEdge_GetS ( unsigned  __iEdge,
double  __t,
double *  __s,
bool  __curvilinearLength 
)

Définition à la ligne 311 du fichier CAD4FE_PolyCurve.cpp.

Références MG_COURBE::est_periodique(), MG_ARETE::get_cosommet1(), MG_ARETE::get_courbe(), MG_ARETE::get_longueur(), MG_COURBE::get_periode(), MG_COSOMMET::get_sommet(), MG_ARETE::get_tmax(), MG_ARETE::get_tmin(), lst_length, lst_ref_edges, et lst_vertices.

Référencé par Parameter_RefEdgeTToS().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ RefEdge_GetT()

void PolyCurve::RefEdge_GetT ( unsigned  __index,
double  length,
double *  __t,
double *  __dt,
bool  __curvilinearLength 
)

Définition à la ligne 268 du fichier CAD4FE_PolyCurve.cpp.

Références equation_longueur(), MG_ARETE::get_cosommet1(), MG_COSOMMET::get_sommet(), MG_ARETE::get_tmax(), MG_ARETE::get_tmin(), GetLength(), TPL_FONCTION1< A, B, C >::integrer_jusqua_gauss_2(), lst_ref_edges, lst_vertices, et MG_COURBE::t_max.

Référencé par Parameter_SToRefEdgeT().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ RefVertex_GetIndex()

unsigned PolyCurve::RefVertex_GetIndex ( MG_SOMMET __refVertex)

Définition à la ligne 480 du fichier CAD4FE_PolyCurve.cpp.

Références lst_vertices.

Référencé par RefVertex_GetS(), et SetPeriodicPoleRefVertex().

Voici le graphe des appelants de cette fonction :

◆ RefVertex_GetS()

double PolyCurve::RefVertex_GetS ( MG_SOMMET __refVertex)

Définition à la ligne 256 du fichier CAD4FE_PolyCurve.cpp.

Références GetLength(), et RefVertex_GetIndex().

Référencé par CAD4FE::MCSegment::Construct_MCEdge().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ SetPeriodicPoleRefVertex()

void PolyCurve::SetPeriodicPoleRefVertex ( MG_SOMMET __v)

Définition à la ligne 639 du fichier CAD4FE_PolyCurve.cpp.

Références est_periodique(), lst_length, lst_ref_edges, lst_vertices, m, et RefVertex_GetIndex().

Référencé par CAD4FE::MCBody::SuppressMCVertex().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ VerifyRefEdgeT()

void PolyCurve::VerifyRefEdgeT ( MG_ARETE __edge,
double &  __t 
)
static

Définition à la ligne 140 du fichier CAD4FE_PolyCurve.cpp.

Références MG_COURBE::est_periodique(), MG_ARETE::get_courbe(), MG_COURBE::get_periode(), MG_ARETE::get_tmax(), et MG_ARETE::get_tmin().

Référencé par deriver(), equation_longueur(), et evaluer().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

◆ VerifyS()

void PolyCurve::VerifyS ( double &  __s)

Définition à la ligne 241 du fichier CAD4FE_PolyCurve.cpp.

Références est_periodique(), get_periode(), et get_tmax().

Référencé par deriver(), deriver_seconde(), evaluer(), et Parameter_SToRefEdgeT().

Voici le graphe d'appel pour cette fonction :
Voici le graphe des appelants de cette fonction :

Documentation des données membres

◆ lst_length

std::vector<double> CAD4FE::PolyCurve::lst_length
private

Définition à la ligne 107 du fichier CAD4FE_PolyCurve.h.

Référencé par GetLength(), InsertCurve(), inverser(), PolyCurve(), RefEdge_GetS(), et SetPeriodicPoleRefVertex().

◆ lst_ref_edges

◆ lst_vertices


La documentation de cette classe a été générée à partir des fichiers suivants :