ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/reconstruction/src/sq_branche.cpp
Revision: 1015
Committed: Fri Apr 5 19:26:01 2019 UTC (6 years, 1 month ago) by amroune
File size: 1838 byte(s)
Log Message:
- Ajout de la fonction "creation_espaces_voisinage"

File Contents

# User Rev Content
1 amroune 1003 #include "sq_branche.h"
2    
3 amroune 1015
4 amroune 1003 SQ_BRANCHE::SQ_BRANCHE(std::vector<SQ_NOEUD*> bran)
5     {
6     branche=bran;
7 amroune 1004 if(branche.size()>1)
8     calcul_longueur();
9 amroune 1003 }
10    
11    
12    
13 amroune 1004 SQ_BRANCHE::SQ_BRANCHE()
14 amroune 1003 {
15     }
16    
17    
18    
19     SQ_BRANCHE::SQ_BRANCHE(SQ_BRANCHE& mdd)
20     {
21     branche=mdd.branche;
22 amroune 1015 longueur=mdd.longueur;
23     rayon_max=mdd.rayon_max;
24 amroune 1003 LstSections=mdd.LstSections;
25     LstGuides=mdd.LstGuides;
26 amroune 1015 branche_valid=mdd.branche_valid;
27 amroune 1003 }
28    
29    
30    
31     SQ_BRANCHE::~SQ_BRANCHE()
32     {
33     }
34    
35    
36    
37     std::vector<SQ_NOEUD*> SQ_BRANCHE::get_branche()
38     {
39     return branche;
40     }
41    
42    
43    
44 amroune 1004 double SQ_BRANCHE::get_longueur()
45     {
46     return longueur;
47     }
48    
49    
50    
51 amroune 1005 double SQ_BRANCHE::get_rayon_max()
52     {
53     return rayon_max;
54     }
55    
56    
57    
58 amroune 1003 std::vector<MG_NOEUD*> SQ_BRANCHE::get_section(int i)
59     {
60 amroune 1005 return LstSections[i].second;
61 amroune 1003 }
62    
63    
64    
65 amroune 1005 SQ_NOEUD* SQ_BRANCHE::get_no_central_section(int i)
66     {
67     return LstSections[i].first;
68     }
69    
70    
71    
72 amroune 1004 int SQ_BRANCHE::get_nb_sections()
73 amroune 1003 {
74     return LstSections.size();
75     }
76    
77    
78    
79     std::vector<MG_NOEUD*> SQ_BRANCHE::get_guide(int i)
80     {
81     return LstGuides[i];
82     }
83    
84    
85    
86 amroune 1004 int SQ_BRANCHE::get_nb_guides()
87 amroune 1003 {
88     return LstGuides.size();
89     }
90    
91    
92    
93 amroune 1004 bool SQ_BRANCHE::get_validite()
94     {
95     return branche_valid;
96     }
97    
98    
99    
100 amroune 1003 void SQ_BRANCHE::change_branche(std::vector<SQ_NOEUD*> bran)
101     {
102     branche=bran;
103 amroune 1004 if(branche.size()>1)
104     calcul_longueur();
105 amroune 1003 }
106    
107    
108    
109 amroune 1004 void SQ_BRANCHE::calcul_longueur()
110     {
111     longueur=0.;
112     for(int i=0;i<branche.size()-1;i++)
113     {
114     OT_VECTEUR_3D V(branche[i]->get_coord(),branche[i+1]->get_coord());
115     longueur+=V.get_longueur();
116     }
117     }
118    
119    
120    
121 amroune 1005 void SQ_BRANCHE::change_rayon_max(double Rmax)
122 amroune 1003 {
123 amroune 1005 rayon_max=Rmax;
124 amroune 1003 }
125    
126    
127    
128 amroune 1005 void SQ_BRANCHE::ajouter_section(SQ_NOEUD* no_central,std::vector<MG_NOEUD*> section)
129     {
130     LstSections.push_back(std::make_pair(no_central,section));
131     }
132    
133    
134    
135 amroune 1003 void SQ_BRANCHE::ajouter_guide(std::vector<MG_NOEUD*> guide)
136     {
137     LstGuides.push_back(guide);
138     }
139 amroune 1004
140    
141    
142     void SQ_BRANCHE::change_validite(bool validite)
143     {
144     branche_valid=validite;
145     }

Properties

Name Value
svn:executable *