36 FParameterEyePosition(AEyePosition),
37 FParameterAimedPosition(AAimedPosition),
38 FParameterDrawing(ADrawing)
58 glMatrixMode(GL_MODELVIEW);
65 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
90 GLdouble dummy, zMire;
91 gluProject(xm, ym, zm,
92 FModelViewMatrix, FProjectionMatrix, FViewport,
93 & dummy, & dummy, & zMire);
96 gluUnProject(Ax, Ay, zMire,
97 FModelViewMatrix, FProjectionMatrix, FViewport,
111 gluProject(Ax, Ay, Az, FModelViewMatrix, FProjectionMatrix, FViewport,
137 GLdouble xMire, yMire, zMire;
138 gluProject(xm, ym, zm,
139 FModelViewMatrix, FProjectionMatrix, FViewport,
140 & xMire, & yMire, & zMire);
143 gluUnProject(xMire, yMire, zMire + 10,
144 FModelViewMatrix, FProjectionMatrix, FViewport,
148 CVertex vect(xm - xp, ym - yp, zm - zp);
150 assert(! vect.isNull());
152 return vect / vect.norm();
157 list<CPrecompile*>::iterator it = FListPrecompile.begin();
159 while (it != FListPrecompile.end())
170 list<CPrecompile*>::iterator it = FListPrecompile.begin();
172 while (it != FListPrecompile.end())
182 list<CPrecompile*>::iterator it = FListPrecompile.begin();
184 while (it != FListPrecompile.end())
186 if ((*it)->getType() == APrecompileType)
197 assert(APrecompile != NULL);
200 FListPrecompile.push_back(APrecompile);
210 if (precompile != NULL)
212 FListPrecompile.remove(precompile);
225 assert(APrecompile != NULL);
238 glGetIntegerv(GL_VIEWPORT, FViewport);
239 FRatio = (1.0 * FViewport[2]) / FViewport[3];
241 glMatrixMode(GL_PROJECTION);
247 glGetDoublev(GL_PROJECTION_MATRIX, FProjectionMatrix);
248 glGetDoublev(GL_MODELVIEW_MATRIX, FModelViewMatrix);
253 switch (AParameterType)
293 assert(AView != NULL);
304 if (parameter != NULL && parameter->
getNbRef() > 1)
310 assert(AParam != NULL);
318 for (list<CPrecompile*>::iterator it = FListPrecompile.begin();
319 it != FListPrecompile.end(); ++it)
320 (*it)->setParameter(AParam);
327 assert(AParam != NULL);
335 for (list<CPrecompile*>::iterator it = FListPrecompile.begin();
336 it != FListPrecompile.end(); ++it)
337 (*it)->setParameter(AParam);
343 assert(AParam != NULL);
351 for (list<CPrecompile*>::iterator it = FListPrecompile.begin();
352 it != FListPrecompile.end(); ++it)
353 (*it)->setParameter(AParam);
360 for (list<CPrecompile*>::iterator it = FListPrecompile.begin();
361 it != FListPrecompile.end(); ++it)
362 (*it)->incNbEnabledView();
368 for (list<CPrecompile*>::iterator it = FListPrecompile.begin();
369 it != FListPrecompile.end(); ++it)
370 (*it)->decNbEnabledView();
375 for (list<CPrecompile*>::iterator it = FListPrecompile.begin();
376 it != FListPrecompile.end(); ++it)
377 (*it)->pick(AX, AY,
this);