Thema: Delphi GDI+ und DrawPolygon

Einzelnen Beitrag anzeigen

Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

Re: GDI+ und DrawPolygon

  Alt 7. Mär 2008, 13:57
Hi,

So wie ich das sehe werden jeweils Pointer als Parameter erwartet. Probier es mal so (Komplett ohne Garantie das es funktioniert!):

Delphi-Quellcode:
procedure TMainForm.Draw;
const
  ALPHA = 100;
var
  Graphics: TGPGraphics;
  GdiPen: TGPPen;
  points: Array[0..3] of PGPPoint;
  PenR, PenG, PenB: Integer;
  Count: Integer; // <---
begin
  PenR := GetRValue(clGray); // ps: bei grau ist R=G=B ;)
  PenG := GetGValue(clGray); // d.h. PenR = PenG = PenB
  PenB := GetBValue(clGray); // d.h. wenn du dir einen Wert holst reicht das ;)

  Graphics := TGPGraphics.Create(TChart(Sender).Canvas.Handle);
  GdiPen := TGPPen.Create(MakeColor(Alpha, penR, PenG, PenB));
  // GdiPen := TGPPen.Create(MakeColor(Alpha, penR, PenR, PenR)); <--- siehe oben

  points[0]^.X := xBegin; // <--- die ^ sollte man besser hinschreiben.
  points[0]^.Y := y;
  points[1]^.X := xEnd;
  points[1]^.Y := y;
  points[2]^.X := xEnd+xDelay;
  points[2]^.Y := y-yDelay;
  points[3]^.X := xBegin+xDelay;
  points[3]^.Y := y-yDelay;
  
  Count := 4;
  Graphics.DrawPolygon(@GdiPen,points[0],@Count);
end;
Könnte auch alles Schwachsinn sein.

EDIT: ca. 156 mal editiert

Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat