ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/CAD4FE_PolySurface.cpp
Revision: 5
Committed: Tue Jun 12 20:26:34 2007 UTC (17 years, 11 months ago)
Original Path: magic/lib/geometrie/geometrie/src/CAD4FE_PolySurface.cpp
File size: 4729 byte(s)
Log Message:

File Contents

# User Rev Content
1 5 //---------------------------------------------------------------------------
2    
3     //---------------------------------------------------------------------------
4     // include MAGIC Headers
5     #include "gestionversion.h"
6     #include "mg_geometrie.h"
7     #include "mg_arete.h"
8     #include "tpl_fonction.h"
9    
10     //---------------------------------------------------------------------------
11     // include STL headers
12     //---------------------------------------------------------------------------
13     #include <map>
14     #include <ostream>
15     #include <string>
16     #include <vector>
17     //---------------------------------------------------------------------------
18    
19    
20     #pragma hdrstop
21    
22     #include "CAD4FE_PolySurface.h"
23    
24     //---------------------------------------------------------------------------
25    
26     #pragma package(smart_init)
27    
28     #ifdef __BORLANDC__
29     #pragma warn -8012
30     #endif
31    
32     using namespace CAD4FE;
33    
34     //---------------------------------------------------------------------------
35     PolySurface::PolySurface(MG_FACE * __refFace)
36     {
37     // Add the reference face in the list of faces
38     _lst_ref_faces.insert(__refFace);
39     }
40     //---------------------------------------------------------------------------
41    
42     void PolySurface::InsertSurface(MG_FACE *__refFace)
43     {
44     // Add the reference face in the list of faces
45     _lst_ref_faces.insert(__refFace);
46     }
47     //---------------------------------------------------------------------------
48    
49     void PolySurface::Merge( PolySurface & __polySurface )
50     {
51     // Add the reference faces in the list of faces
52     std::set<MG_FACE*> & r = __polySurface._lst_ref_faces;
53    
54     for (std::set<MG_FACE*>::iterator itRefFace = r.begin();
55     itRefFace != r.end();
56     itRefFace++)
57     _lst_ref_faces.insert(*itRefFace);
58     }
59    
60     //---------------------------------------------------------------------------
61    
62     void PolySurface::evaluer(double *uv,double *xyz)
63     {
64    
65     }
66    
67     //---------------------------------------------------------------------------
68    
69     void PolySurface::deriver(double *uv,double *xyzdu, double *xyzdv)
70     {
71    
72     }
73    
74    
75     //---------------------------------------------------------------------------
76     void PolySurface::deriver_seconde(double *uv,double* xyzduu,double* xyzduv,double* xyzdvv,double *xyz, double *xyzdu, double *xyzdv)
77     {
78    
79     }
80    
81    
82     //---------------------------------------------------------------------------
83     void PolySurface::inverser(double *uv,double *xyz,double precision)
84     {
85    
86     }
87    
88     //---------------------------------------------------------------------------
89    
90     int PolySurface::est_periodique_u(void)
91     {
92    
93     return 0;
94     }
95    
96    
97     //---------------------------------------------------------------------------
98     int PolySurface::est_periodique_v(void)
99     {
100    
101     return 0;
102     }
103    
104    
105     //---------------------------------------------------------------------------
106     double PolySurface::get_periode_u(void)
107     {
108    
109     return 0;
110     }
111    
112     //---------------------------------------------------------------------------
113    
114     double PolySurface::get_periode_v(void)
115     {
116     return 0;
117    
118     }
119    
120    
121     //---------------------------------------------------------------------------
122    
123     void PolySurface::enregistrer(std::ostream& o)
124     {
125     // %ID=CAD4FE_POLYSURFACE(MG_FACE_1,MG_FACE_2,...,MG_FACE_N)
126     unsigned int i;
127    
128     o << "%" << get_id()
129     << "=CAD4FE_POLYSURFACE(" << GetRefFaceCount() << ",(";
130    
131     for (i=0; i < GetRefFaceCount(); i++)
132     {
133     if ( i ) o <<",";
134     o << "$" << GetRefFace(i)->get_id();
135     }
136    
137     o << "));" << std::endl;;
138     }
139    
140    
141     //---------------------------------------------------------------------------
142     int PolySurface::get_type_geometrique(TPL_LISTE_ENTITE<double> &param)
143     {
144     return 0;
145     }
146    
147    
148     bool PolySurface::Contains(MG_FACE * __refFace)
149     {
150     return ( _lst_ref_faces.find(__refFace) != _lst_ref_faces.end());
151     }
152    
153     MG_FACE * PolySurface::GetRefFace(unsigned int __index)
154     {
155     std::set<MG_FACE*>::iterator itFace = _lst_ref_faces.begin();
156     std::advance (itFace, __index);
157     return *itFace;
158     }
159    
160     std::set<MG_FACE*> & PolySurface::GetRefFaces()
161     {
162     return _lst_ref_faces;
163     }
164    
165     unsigned int PolySurface::GetRefFaceCount()
166     {
167     return _lst_ref_faces.size();
168     }
169    
170    
171     void PolySurface::get_param_NURBS(TPL_LISTE_ENTITE<double> &param)
172     {
173     return;
174     }
175    
176    
177    
178    
179    
180    
181    
182