Français
Forum

ogl et xpse

 
- page 1 -



Andreas
Koch
allô zusammen,

une kurze Frage zum Thema opengl et xpse: gibt es une Possibilité, une ogl("xyz",...) Befehl dans un nproc einzubauen?
Konkret ca va um den Befehl oGL("TestMouse", X, Y, Z), bzw @oGL("TestXY", X, Y, Z, SX, SY).
qui Testmodus de opengl funktioniert pas toujours so dolle et je versuche sur dem Weg, ihn trop tourner autour de.

Schönen Salut

Andreas Koch
 
14.01.2013  
 



 
- page 1 -



Andreas
Koch
mon erster Versuch était aussi, une OpenGL-API Ersatz pour qui beiden obigen Funktionen pour trouver, quoi pas so entier erfolgreich était.
Deswegen vermutete je aussi, dass une ganze Reihe de Befehlen derrière elle steckt, qui dans XProfan trop einer Funktion zusammengefügt wurden. Um qui Api-Befehle nachschlagen et direct anwenden trop peut, devrait je mais savons, comment qui appeler. Deswegen mon Frage, quoi derrière oGL("TestMouse", X, Y, Z), bzw @oGL("TestXY", X, Y, Z, SX, SY)) steckt.

PS: wiki.delphigl.com hat mich bisher chez opengl toujours weitergebracht.
 
14.01.2013  
 




RGH
s'il te plaît très: qui Original-Code dans Delphi:
procedure fnOGLTestMouse; {-----------------------} var x, y, z: double; ix, iy: longint; fx, fy, fz: double; modelview: array[1 .. 16] of double; projection: array[1 .. 16] of double; viewport: array[1 .. 4] of longint; R: TRect; Begin si oGLWnd = 0 Then FehlerNr(400,''); GetClientRect(oGLWnd,R); LesePara(ParStack,',',0); x := RPar.Dbl; LesePara(ParStack,',',0); y := RPar.Dbl; LesePara(ParStack,')',0); z := RPar.Dbl; glGetDoublev(GL_MODELVIEW_MATRIX, @modelView); glGetDoublev(GL_PROJECTION_MATRIX, @projection); glGetIntegerv(GL_VIEWPORT, @viewPort); gluProject(x, y, z, @modelView, @projection, @viewPort, fx, fy, fz); ix := sqr(round(fx) - Mausx); iy := sqr((R.Bottom - round(fy)) - Mausy); Si (ix + iy) > 0 then RPar.Lng := round(sqrt(ix + iy)) d'autre RPar.Lng := 0; RPar.Typ := 2; Found := True; End; procedure fnOGLTestXY; {--------------------} var x, y, z: double; ix, iy: longint; dx, dy: longint; fx, fy, fz: double; modelview: array[1 .. 16] of double; projection: array[1 .. 16] of double; viewport: array[1 .. 4] of longint; R: TRect; Begin si oGLWnd = 0 Then FehlerNr(400,''); GetClientRect(oGLWnd,R); LesePara(ParStack,',',0); x := RPar.Dbl; LesePara(ParStack,',',0); y := RPar.Dbl; LesePara(ParStack,',',0); z := RPar.Dbl; LesePara(ParStack,',',0); dx := RPar.Lng; LesePara(ParStack,')',0); dy := RPar.Lng; glGetDoublev(GL_MODELVIEW_MATRIX, @modelView); glGetDoublev(GL_PROJECTION_MATRIX, @projection); glGetIntegerv(GL_VIEWPORT, @viewPort); gluProject(x, y, z, @modelView, @projection, @viewPort, fx, fy, fz); ix := sqr(round(fx) - dx); iy := sqr((R.Bottom - round(fy)) - dy); Si (ix + iy) > 0 then RPar.Lng := round(sqrt(ix + iy)) d'autre RPar.Lng := 0; RPar.Typ := 2; Found := True; End;
(là cela Forum seulement XProfan-Code richtig formatieren peux, sieht es quelque chose seltsam aus. avec wäre es lieber, es gäbe un Tga, cela qui Formatierung so peut, comment je vous mühevoll installé habe.)

quelques Anmerkungen:
LesePara list den prochain paramètre qui Programmzeile. cela Ergebnis wird dans beiden Funktionen dans RPar.Lng (Long-Integer) zurückgeliefert.faute 400 besagt, dass OGL pas initialisiert wurde et es somit ne...aucune OGL-la fenêtre gibt.

Salut
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
14.01.2013  
 




Andreas
Koch
merci pour qui Aider, je denke, daran peux je mich langhangeln.

Schönen Salut

Andreas
 
14.01.2013  
 




RGH
Hilfreich peut-être aussi encore OGLStartTest et OGLEndTest:
procedure oGLStartTest(mx, my, dx, dy: integer); {---------------------------------------------} var viewport: array[1 .. 4] of longint; wh: double; R: TRect; width, height: integer; begin // Store our Viewport glGetIntegerv(GL_VIEWPORT, @viewport); // Tell OpenGL le size of our s&eacute;lectionner buffer glSelectBuffer(512, @SelectBuffer); // Change our render mode to GL_SELECT glRenderMode(GL_SELECT); // Init le namestack glInitNames; glPushName(0); glMatrixMode(GL_PROJECTION); glPushMatrix; glLoadIdentity; // Zoom le view to dx/dy pixel around le mouse position gluPickMatrix(mx, viewport[4]-my, dx, dy, @viewport); GetClientRect(oGLWnd,R); Height := R.Bottom; Width := R.Right; si (Height = 0) then Height := 1; si OGLwh <= 0 then wh := Width/Height else wh := OGLwh; gluPerspective(45.0, wh, 0.1, oGLDepth); End; function oGLEndTest:longint; {--------------------------} var Hits, Hit, i : Integer; HitZValue : GLUInt; begin glMatrixMode(GL_PROJECTION); glPopMatrix; // Now store le number of hits dans Hits Hits := glRenderMode(GL_RENDER); // Now we look which hit has le lowest Z-Value i.e. quoi dans front Hit := -1; HitZValue := High(GLUInt); for i := 0 to Hits-1 do si SelectBuffer[(i*4)+1] < HitZValue then begin Hit := SelectBuffer[(i*4)+3]; HitZValue := SelectBuffer[(i*4)+1]; end; Result := Hit; end;
 
XProfan X2
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
14.01.2013  
 



[offtopic]
RGH (14.01.13)
(là cela Forum seulement XProfan-Code richtig formatieren peux, sieht es quelque chose seltsam aus. avec wäre es lieber, es gäbe un Tga, cela qui Formatierung so peut, comment je vous mühevoll installé habe.)



Habe Votre Postings dahingehend fix bearbeitet.

Werde simple un 2. Code-journée pour einführen.
[/offtopic]
 
14.01.2013  
 



Andreas Koch (14.01.13)
seulement einmal merci pour qui Antwort. Sorry, j'ai cela Thema maintenant 2la fois eingestellt. (je hatte cela pas plus trouvé.)


Jojo, ne...aucune Streß.

Gibt aussi une Forenübergreifende Vue d'ensemble aktueller Sujets:  [...] 
peux Dein Thema simple aussi selbst effacer, simple unten rechte chez Options du sujet.
 
14.01.2013  
 




Andreas
Koch
encore un court Nachtrag,

sur qui page de Uwe Pascal Niemeyer [...]  gibt es une zip-Dossier (opengl2004.zip), worin sich très viele Beispiele zur Programmation avec opengl befinden. Soweit je cela überblicken peux, wird dabei sur ogl("xyz",...) Befehle gänzlich verzichtet. je vermute, qui Codes stammen aus einer Zeit bevor openGl dans XProfan eingebunden était. vous marcher mais encore correcte. là était aussi un Beispiel dabei, cela qui Original-Delphi Codes de RGH im Wesentlichen abbildet. Allen, qui avec opengl trop 1faire avons, peux je cet Beispiele seulement empfehlen.

Schönen Salut

Andreas Koch
 
20.01.2013  
 



Stimmt, qui sommes super. je hatte autrefois avec cela un 3D-Snake programmiert et sais cela on avec cela richtig komplexe Umgebungen herzaubern peux.
 
20.01.2013  
 



 
- page 2 -


@Roland: Absent dans Deiner oGLStartTest pour gluPerspective(...) un glMatrixMode(GL_MODELVIEW)?
 
22.01.2013  
 




RGH
eh bien, es steht là zumindest pas. je dache, es devrait là aussi pas stehen. mais je peux es oui la fois einbauen. tu as juste poste!

Salut
Roland
 
XProfan X2
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
22.01.2013  
 



Juhu, poste!

j'ai que voici gesehen:  [...] 

là steht aussi:

si gluPickMatrix genutzt wird um NURBS trop selektieren, sollte puis geachtet volonté qui NURBS-qualité (gluNurbsProperty) GLU_AUTO_LOAD_MATRIX trop désactiver.


ici nochmal un vollständigeres Beispiel:  [...] 

ou bien gekürzt:
//When rendering a scene as dans le following example:
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(...);
glMatrixMode(GL_MODELVIEW);
/* Draw le scene */
//a portion of le viewport can être selected as a pick région as follows:
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPickMatrix(x, y, width, height, viewport);
gluPerspective(...);
glMatrixMode(GL_MODELVIEW);
/* Draw le scene */
 
22.01.2013  
 



RGH (22.01.13)
. tu as juste poste!

Salut
Roland


aucun Changement!

stürzt ebenso sur den 3 de 3 Computern ab wohin qui vorherige Version abstürzte.

sur den anderen 2 Computern wohin es funktioniert là funktionierts oui c'est ca so comment qui vorherige Version.
 
22.01.2013  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

20.516 Views

Untitledvor 0 min.
Sven Bader14.10.2021
p.specht08.03.2017
funkheld22.05.2016
Georg Teles13.01.2016
plus...

Themeninformationen

cet Thema hat 3 participant:

iF (7x)
Andreas Koch (5x)
RGH (4x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie