begin process at 2010 02 10 11:17:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Algorithme

 > 

Maths

 > 

Pb avec opengl


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pb avec opengl

mercredi 9 janvier 2008 à 14:14:34 | Pb avec opengl

windsurfer

Bonjour,

Je cherche à réaliser un prog pour étudier les fonctions de deux variables z=f(x,y). Je travaille sous opengl.

Le logiciel doit tracer la surface en rendu 3d avec éclairage (ça c'est fait ça marche nickel) ou les lignes de niveaux de la courbe, en gros les fils de fer qui supportent la courbe (ça c'est fait, ça marche aussi). Quand on affiche l'un sans l'autre c'est parfait.

Mais, lorsque je veux afficher la surface avec les lignes de niveaux dessus on ne voit plus les lignes de niveaux, elles se mélangent à la surface. En clair comment peut-on faire pour effectuer un tracé clair sur la surface sans que ce tracé ne se mélange à la surface et en deviennent illisible ??

Merci à tous les gros bras qui me donneraient une solution.

Toto le windsurfer
mercredi 9 janvier 2008 à 16:48:04 | Re : Pb avec opengl

WhiteHippo

Membre Club
Bonjour

Le plus simple, tu augmentes la taille d'affichage des lignes par un glLineWidth. (Par défaut la valeur est de 1.0; tu peux la mettre à 3.0, 5.0,  etc... selon tes besoins.)

Cordialement.

"L'imagination est plus importante que le savoir." Albert Einstein
mercredi 9 janvier 2008 à 17:23:35 | Re : Pb avec opengl

windsurfer

Merci

mais j'y avais pensé. Quelque soit l'épaisseur des lignes; il y a un mélange de couleur entre la surface 3d et le "tramage" tel que le tramage est super moche , en pointillé, à moitié visible....

Je crois qu'il y a une histoire de décalage de pixel pour dessiner sans mélanger la surface et le tramage mais je ne sais pas comment ça marche. .

toto le windsurfer
mercredi 9 janvier 2008 à 18:26:11 | Re : Pb avec opengl

WhiteHippo

Membre Club

Tu devrais avoir quelquechose du genre :

 glPushAttrib( GL_ALL_ATTRIB_BITS ); 

   // Dessin de ta surface "solide"
   glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
   glLineWidth( 1.0 );
   DessinSurface ; // Procedure qui dessine ta surface

   // Dessin de ta surface "maillage"
   glColor3f(0.0,0.0,0.0);
   glDisable(GL_LIGHTING);
   glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
   glLineWidth( 3.0 );
   DessinSurface ; // Même procedure que précédemment

glPopAttrib();

P.S. Non testé ! De mémoire, alors sans garanties aucune

Cordialement.


"L'imagination est plus importante que le savoir." Albert Einstein

jeudi 10 janvier 2008 à 18:30:16 | Re : Pb avec opengl

windsurfer



toto le windsurfer
jeudi 10 janvier 2008 à 20:06:59 | Re : Pb avec opengl

WhiteHippo

Membre Club
Et ?

Cordialement.

"L'imagination est plus importante que le savoir." Albert Einstein
jeudi 10 janvier 2008 à 20:27:42 | Re : Pb avec opengl

windsurfer

Je suis long à répondre, désolé, beaucoup de boulot en milieu de semaine...

Donc : ça ne change pas le rendu. Il y a un toujours un "mélange" entre la surface et les lignes dessus.
J'ai viens de trouver un site ( [ Lien ]) où il est question de décalage de pixels pour différencier polygones et lignes .... et ça ne marche pas. La commange glPolygonOffset est donnée comme inconnue.

Je pense ne pas avoir une version complète de la librairie opengl. J'en cherche une meilleure comptatible avec celle que j'utilise.

Si qqun à des infos concerant cette commande pour l'humble débutant que je suis....

merci.

toto le windsurfer
jeudi 10 janvier 2008 à 20:36:45 | Re : Pb avec opengl

windsurfer

Oups :
[ Lien ]
toto le windsurfer
samedi 12 janvier 2008 à 19:12:08 | Re : Pb avec opengl

windsurfer

Réponse acceptée !
J'ai finalement trouvé un truc satisfaisant :

    glDepthFunc(GL_LEQUAL);

permet de dissocier la surface des truc qu'ontrace dessus.

merci pour les coups de mains.

cordialement


toto le windsurfer


Cette discussion est classée dans : pb, lignes, opengl, niveaux, surface


Répondre à ce message

Sujets en rapport avec ce message

Pb : Le composant internet de delphi [ par infohelp ] Bonjour je cherche le composant similaire d'acces a internet de visual basic (winsock) mais le meme avec les meme fonctions et qui prenent les proxy c pb de connection [ par Jakouz ] j'ai un composant TDatabase relié à une BD mais je n'arrive pas à me connecter ... en effet quand je veux passer sa propriété "connected" à true j'ai StatusBar? [ par jia2812 ] Salut les progs'!...Mon pb est tout bête, mais... C'est la 1ère fois que je me sers du contrôle StatusBar. Alors je colle évidemment au niveau des Te Pb Install Shield [ par Sandrine ] Pour distribuer une application (développée sous Delphi 4) sur disquettes j'utilise InstallShield 5.L'installation se fait en mode silencieux: aucun m Mettre un message sur plusieurs lignes dans un messagedlg ? [ par Technoman ] Comment fait-on pour passer à la ligne dans un messagedlg ?? Merci. Couleurs d'un DBGrid [ par verbal ] 1-Comment faire pour attribuer des couleurs différentes à aux lignes d'un DBGRID.2-Comment faire pour utiliser des coches pour le multiselection des l dessin sur un bitmap [ par jlg75 ] J'ai commencé un petit prog de dessin pour mes débuts en DELPHI.Je dessine sur un bitmap (feuille blanche pour l'instant),chargé dans une TImage. J'ut Pb avec un dggrid :( [ par Jos ] J'ai un dbgrid lié sur un dataset. En designer, je ne lui demande que d'afficher les colonnes désirées et tout est ok. Dès que je passe en run time, Pb d'exécution [ par Ethanazieff ] Salut,J'utilise Delphi 6 et j'ai de soucis pour exécuter mes appli. J'ai le msg suivant :"Exception externe C000001D"Merci d'avance pour votre aide. Pb TDBCombobox + Table ACCESS [ par lguez ] Bonjour,Dans une table ACCESS, j'ai 3 colonnesidVentil : numAuto (clé primaire)Ventilation : entierlibellé : stringSous Delphi, j'ai une Form qui cont


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,014 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales