AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

GDI+ oder graphics32

Offene Frage von "delphiRenorm"
Ein Thema von delphiRenorm · begonnen am 8. Sep 2010 · letzter Beitrag vom 10. Sep 2010
Antwort Antwort
delphiRenorm

Registriert seit: 30. Mär 2010
18 Beiträge
 
Delphi 2010 Professional
 
#1

AW: GDI+ oder graphics32

  Alt 10. Sep 2010, 08:39
Das Problem kenn ich Nur funktioniert das ebenso nicht. Normale Arbeiten mit graphics ist kein Problem, nur sobald ich zu Pfaden übergehe klappt bspsw. Path.addellipse(...) nicht mehr. Beim Compilieren schimpft er, dass
Code:
[DCC Fehler] Unit1.pas(37): E2361 Auf private-Symbol TGPGraphicsPath.AddEllipse kann nicht zugegriffen werden
obwohl, dass ja als explizites Beispiel auf der HP schon angezeigt wird. Ich hatte eigentlich nicht vor wieder in der Unit rumzubasteln, es sollte ja so funktionieren, vllt hab ich auch irgend nen Denkfehler.

Noch ne Frage zu .NET und WFP. Müsste ich da Delphi Prism haben und wieviel Zeit (grob) bedarf die Einarbeitung? Ich hab mit .NET noch nicht gearbeitet aber es scheint für die Zukunft ja sehr interessant zu sein.
(hab die Frage mal nach: http://www.delphipraxis.net/154430-d...ml#post1048643 verschoben)

@AndreFM: Das sieht ganz nett aus, ist aber einerseits schweine teuer und ich würds auch gern selbst können. Es geht nicht nur darum, dass mein Programm später so und so aussieht. Trotzdem vielen Dank.

Geändert von delphiRenorm (10. Sep 2010 um 11:24 Uhr)
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#2

AW: GDI+ oder graphics32

  Alt 10. Sep 2010, 10:22
Zitat:
OPENGL
...was mir noch nicht so klar ist, ob RoundRect oder beliebige andere Formen /Regionen damit einfach zu erstellen sind...
OpenGL ist, wie so ziemlich jede andere 3D-API, Polygon-basiert.
Das heisst, du zeichnest Punkte (Vertices) und sagst OpenGL, wie diese zu Polygonen verbunden werden. Da gibt es dann zig Varianten / Schalter (LINES, TRIANGLES, QUADS, QUAD_STRIPS usw.) und in welcher Reihenfolge ein Front-Face deklariert ist (Im Uhrzeigersinn, gegen den Uhrzeigersinn).
Du kannst damit jede erdenkliche Form erstellen, sei es 2D oder 3D.
Diese Polygone kannst du dann einfärben / per Textur-Koordinaten Texturen draufmappen und z.B. mit Lichtern interagieren lassen (Material-Eigenschaften) oder sogar kleine Mini-Programme (Shader) für die Vertex-Positionierung, Texturierung und Farbgebung schreiben, die dann direkt auf der GPU laufen.
Ob die Anzeige 2D oder 3D ist, kommt hauptsächlich darauf an, wie die Kamera eingestellt ist (Orthogonal oder Perspektive).

Wie du aber siehst, ist das Ganze schon von der Denke her nicht wirklich trivial
Dafür halt mächtig

Zitat:
...und ob eine Initialisierung von OpenGL in der Anwendung (bsp. in meiner MainForm) genügt und ich dann dies zum zeichnen in allen anderen Kompos benutzen kann.
Es reicht normalerweise, für deine Anwendung einen OpenGL-Context zu aktivieren. Anwendungen mit mehreren Contexten sind sehr selten.
Dieser Context liegt dann immer auf irgend einer Fläche, sei es die Client-Area der Form oder die eines Panels oder Ähnliches.
Innerhalb dieses Bereichs kannst du dann mit OpenGL arbeiten, und zwar nur OpenGL (VCL-Controls / GDI(+) funktionieren hier nicht mehr), ausserhalb der Fläche verhält es sich umgekehrt (kein OpenGL nutzbar, VCL /GDI funktioniert).
Hast du z.B. ein Panel auf deiner Form, für das du den OpenGL Context aktivierst, kannst du dort mit OpenGL zeichen, und zwar nur dort.
Ist deine ganze Form ein OpenGL Context, dann musst du alles dort mit OpenGL zeichen und kannst die VCL oder GDI(+) komplett dort vergessen. Es gibt keine Mischformen

Das gleiche gilt auch für Direct3D.

Geändert von blackfin (10. Sep 2010 um 10:35 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz