Gtk3 ist nun das Standard-LCL-Widgetset in Linux

Mitteilungen und Ankündigungen
Mathias
Beiträge: 7331
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Gtk3 ist nun das Standard-LCL-Widgetset in Linux

Beitrag von Mathias »

Deine Anspielung auf Double und Integer kann ich nicht ganz verstehen, meinst du damit die Koordinaten der Widgetsets. In OpenGL ist das dann "Single"..
Wen du in der LCL eine Linie zeichnest, muss dies immer in einem Pixelgenauen Raster sein.

Das sieht dann so aus,:

Code: Alles auswählen

var
  x, y: single;
begin
  Canvas.LineTo(Round(x), Round(y));  
Bei Cairo, kannst die direkt die Single übergeben. Die lib zeichnet dann das ganze mit sauberen Antialising.
Noch schlimmer, wen die Grafik transformierbar sein soll, dann sieht es in der LCL so aus:

Code: Alles auswählen

Canvas.LineTo(Round(ofsx + x * scale), Round(ofsy + y * scale));
Bei Cairo gibt es ein Befehl, da kann man Skalierung und Offset vor den Zeichnen festlegen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1796
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Re: Gtk3 ist nun das Standard-LCL-Widgetset in Linux

Beitrag von corpsman »

Ahh, dann hatte ich dich doch richtig verstanden,
Da ich aber solche Zeichen Aktionen auch via OpenGL mache, siehe z.B. Parken und da gehts wieder via Float, war mir das bisher nicht so störend aufgefallen ;)
--
Just try it

Mathias
Beiträge: 7331
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Gtk3 ist nun das Standard-LCL-Widgetset in Linux

Beitrag von Mathias »

corpsman hat geschrieben: Do 9. Jul 2026, 16:26 Ahh, dann hatte ich dich doch richtig verstanden,
Da ich aber solche Zeichen Aktionen auch via OpenGL mache, siehe z.B. Parken und da gehts wieder via Float, war mir das bisher nicht so störend aufgefallen ;)
OpenGL ist eine gute Alternative, die braucht auch keine externen Libs.
Nur bei Bögen wird es mit OpenGL langsam komplex.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Antworten