23 #ifndef CAD4FE_MCSegmentH
24 #define CAD4FE_MCSegmentH
47 class Intersection_Plane_PolySurface;
52 typedef std::vector<MCNode*>
VPts;
56 typedef std::multimap <MG_FACE *, VPts>
FMap;
60 typedef std::multimap <MG_ARETE *, VPts>
EMap;
64 typedef std::vector <MG_SOMMET *>
VMap;
71 virtual void enregistrer(std::ostream& o,
double version);
84 void evaluer_geo(
double __t,
MCNode * __result,
double * tangent=0,
double * curvature=0);
114 int RefineInRefEdge(
MCEdge * __mcEdge,
MG_ARETE * __refEdge,
MCNode * __n1,
MCNode * __n2,
double __epsilon,
double __lastDistanceToEdge, std::map < double , MCNode * > & __mapMCEdgeNodesBySParameter, std::map < double , MG_ARETE * > & __mapMCEdgeRefEdgesBySParameter,
int __iRecursiveCalls=0 );
const unsigned int IDMCSEGMENT
void set_format_enregistrement(int __format)
void ConstructBoundaryBox()
std::vector< MCNode * > GetPolylineNodes()
std::multimap< MG_ARETE *, VPts > EMap
int Construct_MergedVertices(MCNode *__mcNode)
EMap::iterator EMapIterator
VPts::iterator VPtsIterator
VMap::const_iterator VMapCIterator
int Construct_MCFaceByShortestPath(MCFace *__mcFace, MCNode *__n1, MCNode *__n2)
int Construct_MCEdge(MCEdge *__mcEdge)
MCNodePolyline * _polylineEvaluator
FMap & GetRefFaceMapping()
VPts::const_iterator VPtsCIterator
virtual int get_type_entite()
int Construct_NoTopology(MCNode *__n1, MCNode *__n2)
int get_format_enregistrement()
MG_ELEMENT_TOPOLOGIQUE * GetPolylineTopo(unsigned __index)
void evaluer_geo(double __t, MCNode *__result, double *tangent=0, double *curvature=0)
FMap::const_iterator FMapCIterator
unsigned GetPolylineNodeCount()
virtual class BOITE_3D get_boite_3D(void)
void change_orientation(int __sense)
MCSegment(unsigned long num, MG_ELEMENT_TOPOLOGIQUE *topo, MCNode *mgnoeud1, MCNode *mgnoeud2, double longue=0.0)
VMap::iterator VMapIterator
EMap & GetRefEdgeMapping()
double get_longueur_geo()
virtual void enregistrer(std::ostream &o, double version)
@ CstrMCFaceByPlaneIntrNormalByShortestPath
@ CstrMCFaceByShortestPath
@ CstrMCFaceWrongTopologyDimension
@ CstrNoRefTopologyMapping
std::vector< MG_ELEMENT_TOPOLOGIQUE * > GetPolylineTopos()
void inverser_geo(double &__t, MCNode *__result)
std::vector< MG_SOMMET * > VMap
int RefineInRefEdge(MCEdge *__mcEdge, MG_ARETE *__refEdge, MCNode *__n1, MCNode *__n2, double __epsilon, double __lastDistanceToEdge, std::map< double, MCNode * > &__mapMCEdgeNodesBySParameter, std::map< double, MG_ARETE * > &__mapMCEdgeRefEdgesBySParameter, int __iRecursiveCalls=0)
EMap::const_iterator EMapCIterator
MCFace * Find_MCFace(MCEdge *__mcEdge, MG_SOMMET *__refVertex1, MG_SOMMET *__refVertex2)
FMap::iterator FMapIterator
int Construct_MCFace(MCFace *__mcFace, MCNode *, MCNode *)
std::vector< MCNode * > VPts
std::multimap< MG_FACE *, VPts > FMap
MCNode * GetPolylineNode(unsigned __index)
void SetSaveFormat(char __format)