ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/CAD4FE/src/CAD4FE_MCNodePolyline.h
Revision: 1158
Committed: Thu Jun 13 22:18:49 2024 UTC (11 months ago) by francois
Content type: text/plain
File size: 2408 byte(s)
Log Message:
compatibilité Ubuntu 22.04
Suppression des refeences à Windows
Ajout d'une banière

File Contents

# User Rev Content
1 francois 1158 //####//------------------------------------------------------------
2     //####//------------------------------------------------------------
3     //####// MAGiC
4     //####// Jean Christophe Cuilliere et Vincent FRANCOIS
5     //####// Departement de Genie Mecanique - UQTR
6     //####//------------------------------------------------------------
7     //####// MAGIC est un projet de recherche de l equipe ERICCA
8     //####// du departement de genie mecanique de l Universite du Quebec a Trois Rivieres
9     //####// http://www.uqtr.ca/ericca
10     //####// http://www.uqtr.ca/
11     //####//------------------------------------------------------------
12     //####//------------------------------------------------------------
13     //####//
14     //####// CAD4FE_MCNodePolyline.h
15     //####//
16     //####//------------------------------------------------------------
17     //####//------------------------------------------------------------
18     //####// COPYRIGHT 2000-2024
19     //####// jeu 13 jun 2024 11:58:56 EDT
20     //####//------------------------------------------------------------
21     //####//------------------------------------------------------------
22 foucault 27
23     #ifndef CAD4FE_MCNodePolylineH
24     #define CAD4FE_MCNodePolylineH
25    
26     #include <vector>
27     #include "CAD4FE_MCNode.h"
28     #include "ot_reference.h"
29    
30     class MG_ELEMENT_TOPOLOGIQUE;
31    
32     namespace CAD4FE {
33    
34     class MCNodePolyline : public OT_REFERENCE {
35     public:
36     MCNodePolyline(MG_ELEMENT_TOPOLOGIQUE * __mcTopo);
37     MCNodePolyline(MG_ELEMENT_TOPOLOGIQUE * __mcTopo, const std::vector<MCNode*> & __polylineNodes,const std::vector<MG_ELEMENT_TOPOLOGIQUE*> & __polylineTopo);
38     ~MCNodePolyline();
39     MCNode Evaluate(double __s, double * tangent=0, double * curvature=0);
40     double Distance(MCNode *__a, MCNode *__b, MG_ELEMENT_TOPOLOGIQUE * __c);
41     double GetLength();
42     void Inverse(double &__t, MCNode *__mcNode);
43     void Add(MCNode * __mcNode, MG_ELEMENT_TOPOLOGIQUE * __topo);
44     std::vector <MCNode *> & GetPolylineNodes();
45     MCNode * GetPolylineNode(unsigned __index);
46     std::vector <MG_ELEMENT_TOPOLOGIQUE *> & GetPolylineTopos();
47     MG_ELEMENT_TOPOLOGIQUE * GetPolylineTopo(unsigned __index);
48     MCNodePolyline(MCNodePolyline &__pl);
49     unsigned GetPolylineNodeCount();
50     protected:
51     std::vector<MCNode*> _polylineNodes;
52     std::vector<MG_ELEMENT_TOPOLOGIQUE*> _polylineTopo;
53     std::vector <double > lst_length;
54     MG_ELEMENT_TOPOLOGIQUE * _mcTopo;
55     };
56    
57     }
58    
59     #endif