MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
dly_noeud.cpp
Aller à la documentation de ce fichier.
1 //####//------------------------------------------------------------
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 //####// dly_noeud.cpp
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:55 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 
23 
24 #include "gestionversion.h"
25 
26 
27 #include "dly_noeud.h"
28 
29 
30 #include <stdlib.h>
31 #include "dly_triangle.h"
32 #include "dly_segment.h"
33 
34 
35 
36 DLY_NOEUD::DLY_NOEUD(int n,double xx,double yy,double zz):noeud(NULL),num(n)
37 {
38  xyz[0]=xx;
39  xyz[1]=yy;
40  xyz[2]=zz;
41 }
42 DLY_NOEUD::DLY_NOEUD(int n,double *xyztmp):num(n),noeud(NULL)
43 {
44  xyz[0]=xyztmp[0];
45  xyz[1]=xyztmp[1];
46  xyz[2]=xyztmp[2];
47 }
48 
49 DLY_NOEUD::DLY_NOEUD(DLY_NOEUD& mdd):num(mdd.num),noeud(mdd.noeud)
50 {
51  xyz[0]=mdd.xyz[0];
52  xyz[1]=mdd.xyz[1];
53  xyz[2]=mdd.xyz[2];
54 }
55 
57 {
58 }
59 
60 double DLY_NOEUD::get_x(void)
61 {
62  return xyz[0];
63 }
64 double DLY_NOEUD::get_y(void)
65 {
66  return xyz[1];
67 }
68 double DLY_NOEUD::get_z(void)
69 {
70  return xyz[2];
71 }
72 
73 void DLY_NOEUD::change_x(double val)
74 {
75  xyz[0]=val;
76 }
77 void DLY_NOEUD::change_y(double val)
78 {
79  xyz[1]=val;
80 }
81 void DLY_NOEUD::change_z(double val)
82 {
83  xyz[2]=val;
84 }
85 void DLY_NOEUD::get_coord(double *xyztmp)
86 {
87  xyztmp[0]=xyz[0];
88  xyztmp[1]=xyz[1];
89  xyztmp[2]=xyz[2];
90 }
92 {
93  return noeud;
94 }
95 
97 {
98  noeud=no;
99 }
101 {
102  return num;
103 }
104 
105 
107 {
108  petit_lien_seg.push_back(seg);
109 }
110 
112 {
113  for (std::vector<DLY_SEGMENT*>::iterator it=petit_lien_seg.begin();it!=petit_lien_seg.end();it++)
114  if ((*it)==seg) return 1;
115  return 0;
116 }
118 {
119  for (std::vector<DLY_SEGMENT*>::iterator it=petit_lien_seg.begin();it!=petit_lien_seg.end();it++)
120  {
121  DLY_SEGMENT* seg=(*it);
122  if ((n1==seg->get_noeud1()) || (n1==seg->get_noeud2()))
123  if ((n2==seg->get_noeud1()) || (n2==seg->get_noeud2()))
124  return seg;
125  }
126  return NULL;
127 }
128 
129 
131 {
132  petit_lien_tri.push_back(tri);
133 }
134 
136 {
137  for (std::vector<DLY_TRIANGLE*>::iterator it=petit_lien_tri.begin();it!=petit_lien_tri.end();it++)
138  if ((*it)==tri) return 1;
139  return 0;
140 }
141 
143 {
144  for (std::vector<DLY_TRIANGLE*>::iterator it=petit_lien_tri.begin();it!=petit_lien_tri.end();it++)
145  {
146  DLY_TRIANGLE* tri=(*it);
147  if ((n1==tri->get_noeud1()) || (n1==tri->get_noeud2()) ||(n1==tri->get_noeud3()))
148  if ((n2==tri->get_noeud1()) || (n2==tri->get_noeud2()) ||(n2==tri->get_noeud3()))
149  if ((n3==tri->get_noeud1()) || (n3==tri->get_noeud2()) ||(n3==tri->get_noeud3()))
150  return tri;
151  }
152  return NULL;
153 }
DLY_NOEUD::change_x
virtual void change_x(double val)
Definition: dly_noeud.cpp:73
DLY_NOEUD::get_lien_segment
int get_lien_segment(class DLY_SEGMENT *seg)
Definition: dly_noeud.cpp:111
DLY_NOEUD::change_y
virtual void change_y(double val)
Definition: dly_noeud.cpp:77
DLY_NOEUD::noeud
MG_NOEUD * noeud
Definition: dly_noeud.h:61
DLY_NOEUD::change_noeud
void change_noeud(MG_NOEUD *no)
Definition: dly_noeud.cpp:96
DLY_TRIANGLE::get_noeud1
DLY_NOEUD * get_noeud1(void)
Definition: dly_triangle.cpp:45
gestionversion.h
DLY_NOEUD::petit_lien_seg
std::vector< class DLY_SEGMENT * > petit_lien_seg
Definition: dly_noeud.h:64
DLY_NOEUD
Definition: dly_noeud.h:30
DLY_SEGMENT::get_noeud1
DLY_NOEUD * get_noeud1(void)
Definition: dly_segment.cpp:46
DLY_TRIANGLE::get_noeud3
DLY_NOEUD * get_noeud3(void)
Definition: dly_triangle.cpp:53
DLY_NOEUD::DLY_NOEUD
DLY_NOEUD(int n, double xx, double yy, double zz)
Definition: dly_noeud.cpp:36
DLY_SEGMENT::get_noeud2
DLY_NOEUD * get_noeud2(void)
Definition: dly_segment.cpp:50
DLY_NOEUD::~DLY_NOEUD
virtual ~DLY_NOEUD()
Definition: dly_noeud.cpp:56
DLY_NOEUD::xyz
double xyz[3]
Definition: dly_noeud.h:60
DLY_NOEUD::get_lien_triangle
int get_lien_triangle(class DLY_TRIANGLE *tri)
Definition: dly_noeud.cpp:135
DLY_SEGMENT
Definition: dly_segment.h:30
DLY_NOEUD::get_coord
virtual void get_coord(double *xyztmp)
Definition: dly_noeud.cpp:85
MG_NOEUD
Definition: mg_noeud.h:41
DLY_NOEUD::get_noeud
class MG_NOEUD * get_noeud(void)
Definition: dly_noeud.cpp:91
dly_triangle.h
DLY_NOEUD::num
int num
Definition: dly_noeud.h:62
DLY_TRIANGLE
Definition: dly_triangle.h:30
DLY_NOEUD::insere_lien_triangle
void insere_lien_triangle(class DLY_TRIANGLE *tri)
Definition: dly_noeud.cpp:130
DLY_NOEUD::insere_lien_segment
void insere_lien_segment(class DLY_SEGMENT *seg)
Definition: dly_noeud.cpp:106
DLY_NOEUD::get_num
int get_num(void)
Definition: dly_noeud.cpp:100
DLY_NOEUD::get_y
virtual double get_y(void)
Definition: dly_noeud.cpp:64
dly_segment.h
DLY_NOEUD::get_z
virtual double get_z(void)
Definition: dly_noeud.cpp:68
dly_noeud.h
DLY_TRIANGLE::get_noeud2
DLY_NOEUD * get_noeud2(void)
Definition: dly_triangle.cpp:49
DLY_NOEUD::change_z
virtual void change_z(double val)
Definition: dly_noeud.cpp:81
DLY_NOEUD::petit_lien_tri
std::vector< class DLY_TRIANGLE * > petit_lien_tri
Definition: dly_noeud.h:63
DLY_NOEUD::get_x
virtual double get_x(void)
Definition: dly_noeud.cpp:60