Grafik relativ zu Winkel/Position positionieren
Übersicht

![]() |
M0rgensternBetreff: Grafik relativ zu Winkel/Position positionieren |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo Leute.
Ich habe gerade ein (wahrscheinlich ziemlich dämliches) Problem. Wahrscheinlich seh ich mal wieder das Programm vor lauter Code nicht, aber gut. Also, Problem ist folgendes: Ich habe ein Bild, das an einer bestimmten Position mit einem bestimmten Winkel gezeichnet wird. Sowohl Position als auch Winkel können sich ändern. Jetzt ist es aber so, dass ein anderen Bild relativ zu diesem ersten gezeichnet werden soll. Also, wenn sich das erste Bild dreht, so soll das andere Bild relativ dazu die gleiche Position wie davor haben. Leider habe ich keine Ahnung, wie ich das bewerkstelligen könnte. Zum Verständnis: Zitat: () ____ |------| |------| |------| -------- Zitat: _______ |-----------| |-----------| () |_______| Also, das große Rechteck ist das erste Bild und der kleine Kreis ist das zweite Bild. Und das zweite soll halt immer die Position die es am Anfang hat beibehalten, halt relativ zu dem ersten. Ich hoffe ihr versteht mich und ich hoffe, dass ihr mir weiterhelfen könnt. Lg, M0rgenstern |
||
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
kleiner Tipp
Sin ![]() Cos ![]() den Winkel vom ersten Bild hast du ja |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
![]() |
mpmxyz |
![]() Antworten mit Zitat ![]() |
---|---|---|
BlitzMax: [AUSKLAPPEN] xAbs=xOrg+Cos(winkel)*xRel-Sin(winkel)*yRel "winkel" ist hierbei der Drehwinkel des großen Bildes im Uhrzeigersinn. xRel/yRel gibt die relative Position des kleinen Bildes an. xOrg/yOrg ist die Position des großen Bildes. xAbs/yAbs ist die globale Position des kleinen Bildes. mfG mpmxyz |
||
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer |
![]() |
M0rgenstern |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hey mpmxyz.
Genau das wars. Vielen Dank. Aus interesse: Wie kommt man denn rechnerisch darauf? Lg, M0rgenstern |
||
![]() |
mpmxyz |
![]() Antworten mit Zitat ![]() |
---|---|---|
1. Man teilt den Vektor der relativen Position in zwei Vektoren auf:
xRel*(1,0) und yRel*(0,1) 2. Man dreht beide jeweils mit Hilfe von Sinus und Kosinus: xRel*(Cos(w),Sin(w)) und yRel*(-Sin(w),Cos(w)) 3. Nun addiert man beide Vektoren auf den Ortsvektor des Ausgangspunktes: (xAbs,yAbs) = (xOrg,yOrg) + xRel*(Cos(w),Sin(w)) + yRel*(-Sin(w),Cos(w)) ->Mit etwas Umformen bekommt man den BlitzMax-Code heraus. mfG mpmxyz |
||
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group