ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/toIbrep/src/toibrep_point.cpp
Revision: 281
Committed: Fri Jul 22 17:37:06 2011 UTC (13 years, 9 months ago) by francois
File size: 1879 byte(s)
Log Message:
Traitement des aretes tangeantes dans toIBrep

File Contents

# User Rev Content
1 francois 106 #include "gestionversion.h"
2 francois 259 #include "toibrep_point.h"
3 francois 106 #include "mg_element_topologique.h"
4    
5    
6    
7 francois 259 unsigned long TOIBREP_POINT::idmax=0;
8 francois 106
9    
10    
11 francois 281 TOIBREP_POINT::TOIBREP_POINT(double xx,double yy, double zz,double uu, double vv,int inte,MG_FACE* element):id(idmax),x(xx),y(yy),z(zz),ele(element),u(uu),v(vv),interieur(inte),nbpointeps(0)
12 francois 106 {
13     idmax++;
14     }
15    
16 francois 281 TOIBREP_POINT::TOIBREP_POINT(double xx,double yy, double zz,double tt,int inte,class MG_FACE* element):id(idmax),x(xx),y(yy),z(zz),ele(element),u(tt),v(tt),interieur(inte),nbpointeps(0)
17 francois 276 {
18     idmax++;
19     }
20    
21    
22 francois 259 TOIBREP_POINT::~TOIBREP_POINT()
23 francois 106 {
24     }
25    
26    
27    
28 francois 259 unsigned long TOIBREP_POINT::get_id(void)
29 francois 106 {
30     return id;
31     }
32    
33    
34 francois 259 void TOIBREP_POINT::get_coord3(double *xyz)
35 francois 106 {
36     xyz[0]=x;
37     xyz[1]=y;
38     xyz[2]=z;
39     }
40    
41 francois 259 void TOIBREP_POINT::get_coord2(double *uv)
42 francois 106 {
43     uv[0]=u;
44     uv[1]=v;
45     }
46    
47 francois 276 void TOIBREP_POINT::get_coord1(double &t)
48     {
49     t=u;
50     }
51    
52 francois 259 void TOIBREP_POINT::change_coord2(double *uv)
53 francois 106 {
54     u=uv[0];
55     v=uv[1];
56     }
57    
58 francois 276 void TOIBREP_POINT::change_coord1(double t)
59     {
60     u=t;
61     v=t;
62     }
63    
64 francois 281 MG_FACE* TOIBREP_POINT::get_mg_face(void)
65 francois 106 {
66     return ele;
67     }
68    
69 francois 259 void TOIBREP_POINT::get_normal(double *nor)
70 francois 106 {
71     nor[0]=n[0];
72     nor[1]=n[1];
73     nor[2]=n[2];
74     }
75    
76 francois 259 void TOIBREP_POINT::change_normal(double *nor)
77 francois 106 {
78     n[0]=nor[0];
79     n[1]=nor[1];
80     n[2]=nor[2];
81     }
82    
83 francois 259 void TOIBREP_POINT::remisecompteurid(void)
84 francois 106 {
85     idmax=0;
86     }
87 francois 276 int TOIBREP_POINT::get_interieur(void)
88     {
89     return interieur;
90     }
91    
92    
93     void TOIBREP_POINT::change_interieur(void)
94     {
95     interieur=!interieur;
96     }
97    
98     BOITE_3D TOIBREP_POINT::get_boite_3D(void)
99     {
100     BOITE_3D boite(x,y,z,x,y,z);
101     return boite;
102    
103 francois 281 }
104    
105    
106    
107    
108     int TOIBREP_POINT::ajoute_point_eps(double *xyz)
109     {
110     if (nbpointeps>3) return 0;
111     xyzeps[3*nbpointeps]=xyz[0];
112     xyzeps[3*nbpointeps+1]=xyz[1];
113     xyzeps[3*nbpointeps+2]=xyz[2];
114     nbpointeps++;
115     return 1;
116     }
117    
118    
119     void TOIBREP_POINT::get_point_eps(int num,double *xyz)
120     {
121     xyz[0]=xyzeps[3*num];
122     xyz[1]=xyzeps[3*num+1];
123     xyz[2]=xyzeps[3*num+2];
124     }
125    
126     int TOIBREP_POINT::get_nb_point_eps(void)
127     {
128     return nbpointeps;
129     }