Einzelnen Beitrag anzeigen

Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Ein Rechteck im Canvas drehen

  Alt 19. Jan 2008, 14:00
Zum selbstschreiben, wäre eine Rotationsmatrix (siehe Wikipedia) ganz nützlich. Wie du das dann zeichnest, weiss ich nicht genau, aber die Canvas hat sicher so was wie ein drawPolygon, das höchstwahrscheinlich auch einen Parameter zum ausfüllen.
Delphi-Quellcode:
Also grob: linksunten=(0,0), rechtsoben=(190,200), rechtsunten=(190,0), linksoben=(0,200) (redundanz wird benötigt!)
dann musst du das rechteck so verschieben, dass sein Mittelpunkt bei (0,0) ist:
alleXKoordinaten -= 190/2
alleYKoordinaten -= 100

AllEKoordinaten * Rotationsmatrix(winkel)

Wiederzurückschieben (x+=190/2, y += 100)

canvas.drawPolygon(punkte,filled=True)
So im PseudoCode
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat