Hallo zusammen,
eine generelle Frage zu Grafiken in LCL oder entsprechenden Komponenten z.B. Koordinatenachsen im TAChart.
Wird da unter Windows die GDI verwendet und wie sieht das unter Linux aus (GTK, QT)? Gibt es da evtl. auch Abhängigkeiten zu OpenGL?
Ich beschäftige mich in letzter Zeit wieder etwas mehr mit der Grafikprogrammierung unter Windows mit OpenGL und bzgl.
der LCL Komponentenentwicklung ist mir dann gleich diese Frage in den Sinn gekommen.
Danke für jede Rückmeldung (und sorry für diese allgemeine Frage).
Gruß
Helios
[gelöst/beantwortet] Wie werden Grafiken in der LCL z.B. TAChart Koordinatenachen erstellt? GDI?
-
- Lazarusforum e. V.
- Beiträge: 120
- Registriert: Mi 29. Jun 2011, 22:36
- OS, Lazarus, FPC: Lazarus 4.0 Windows 10 64Bit / Arch Linux 64Bit
- CPU-Target: 64Bit
- Wohnort: Leonberg
[gelöst/beantwortet] Wie werden Grafiken in der LCL z.B. TAChart Koordinatenachen erstellt? GDI?
Zuletzt geändert von Helios am Di 25. Okt 2022, 17:37, insgesamt 2-mal geändert.
- af0815
- Lazarusforum e. V.
- Beiträge: 6859
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Wie werden Grafiken in der LCL z.B. TAChart Koordinatenachen erstellt? GDI?
Nur so als Anmerkung, die LCL ist OpenSource. Es ist also erlaubt dort hineinzusehen.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
Re: Wie werden Grafiken in der LCL z.B. TAChart Koordinatenachen erstellt? GDI?
So wie die ganze LCL auch, verwendet TAChart für die Graphik die entsprechenden Funktionen des aktuellen Widgetset, d.h. GDI für Windows, GTK/bzw QT unter Linux, usw. OpenGL wird in der Grundeinstellung nicht verwendet. Die gesamte Graphik bei TAChart im Speziellen ist jedoch mit Hilfe von sog. Drawer-Klassen sehr flexibel gestaltet, so dass man sich den Chart auch von OpenGL malen lassen kann: Package TAChartOpenGL installieren, unit TADrawerOpenGL in "uses", und dann in OpenGL die Draw-Methode von TChart aufrufen (mit dem TOpenGLDrawer als Parameter). Siehe Beispiel im Ordner components/tachart/demo/opengl der Lazarus-Installation.
Generell die Graphik bei allen LCL-Klassen auf OpenGL umzustellen, ist meiner Meinung nach ein größeres Projekt.
Generell die Graphik bei allen LCL-Klassen auf OpenGL umzustellen, ist meiner Meinung nach ein größeres Projekt.
-
- Lazarusforum e. V.
- Beiträge: 120
- Registriert: Mi 29. Jun 2011, 22:36
- OS, Lazarus, FPC: Lazarus 4.0 Windows 10 64Bit / Arch Linux 64Bit
- CPU-Target: 64Bit
- Wohnort: Leonberg
[gelöst/beantwortet] Wie werden Grafiken in der LCL z.B. TAChart Koordinatenachen erstellt? GDI?
Hallo af0815 und wp_xyz,
Danke für eure Antworten.
@af0815: Ja, stimmt die LCL ist im Source vorhanden, aber so ganz einfach ist das nicht zu erkennen was genau da (hauptsächlich) unter der grafischen "Motorhaube" werkelt
.
@wp_xyz: Das Package TAChartOpenGL hatte ich noch gar nicht gesehen, Danke für den Tip! Das es möglich wäre die ganze LCL auf OpenGL umzustellen, darauf wäre
ich so gar nicht gekommen. Das wäre dann vielleicht meine übernächste (und hypothetische(!)) Frage von mir gewesen.
Auf jeden Fall ist die Frage beantwortet.
Vielen Dank euch zwei und schönen Abend!
Gruß
Helios
Danke für eure Antworten.
@af0815: Ja, stimmt die LCL ist im Source vorhanden, aber so ganz einfach ist das nicht zu erkennen was genau da (hauptsächlich) unter der grafischen "Motorhaube" werkelt

@wp_xyz: Das Package TAChartOpenGL hatte ich noch gar nicht gesehen, Danke für den Tip! Das es möglich wäre die ganze LCL auf OpenGL umzustellen, darauf wäre
ich so gar nicht gekommen. Das wäre dann vielleicht meine übernächste (und hypothetische(!)) Frage von mir gewesen.
Auf jeden Fall ist die Frage beantwortet.
Vielen Dank euch zwei und schönen Abend!
Gruß
Helios
-
- Beiträge: 964
- Registriert: Mi 3. Jun 2020, 07:18
- OS, Lazarus, FPC: L 2.0.8, FPC Trunk, OS Win/Linux
- CPU-Target: Aarch64 bis Z80 ;)
- Wohnort: München
Re: [gelöst/beantwortet] Wie werden Grafiken in der LCL z.B. TAChart Koordinatenachen erstellt? GDI?
Nicht die ganze LCL. Nur TAChart.Helios hat geschrieben: Di 25. Okt 2022, 17:36 @wp_xyz: Das Package TAChartOpenGL hatte ich noch gar nicht gesehen, Danke für den Tip! Das es möglich wäre die ganze LCL auf OpenGL umzustellen, darauf wäre
ich so gar nicht gekommen. Das wäre dann vielleicht meine übernächste (und hypothetische(!)) Frage von mir gewesen.
FPC Compiler Entwickler