X- und Y-Position im Winkel ausrechnen...

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

TheProgrammer

Betreff: X- und Y-Position im Winkel ausrechnen...

BeitragSa, Sep 18, 2004 15:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi.

Ich hab mal ne Frage, die etwas
kompliziert zu erklären ist...

(deshalb erstmal ein Bild:)

user posted image

Also:

Ich möchte den X- und Y-Abstand den kleineren Punktes
vom großen Punkt haben. gegeben ist nur der Winkel und
die anderen X- und Y-Abstände (siehe Bild, ziemlich schwer,
zu erklären...)

(Geg.: X,Y,w ; Ges.: posX, posY)

Hoffentlich wisst ihr, was ich meine...

Ich hoffe auf eine (richtige) Antwort...

cu
aktuelles Projekt: The last day of human being

TheShadow

Moderator

BeitragSa, Sep 18, 2004 15:24
Antworten mit Zitat
Benutzer-Profile anzeigen
ist nix anderes als ein rotierter punkt

http://olli.informatik.uni-old...page9.html

oder

http://www.uni-kassel.de/~lade...otrans.htm
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

D2006

Administrator

BeitragSa, Sep 18, 2004 15:25
Antworten mit Zitat
Benutzer-Profile anzeigen
das einzige was noch unverständlicher ist als deine Erklärung,
ist deine Zeichnung.

Bitte um eindeutigeres Bild.
Oder eine Antwort, von jemandem, ders verstanden hat.

MfG

Kabelbinder

Sieger des WM-Contest 2006

BeitragSa, Sep 18, 2004 15:29
Antworten mit Zitat
Benutzer-Profile anzeigen
So, wie du das willst geht das aber nicht:
es kann z.B. nicht sein, dass der xabstand 100 ist und der Winkel 90 Wink
Bei gewissen Winkeln kommen nur gewisse koordinaten in frage.

Du kannst nur den absoluten abstand nehmen

Hab mal was geschrieben:

Code: [AUSKLAPPEN]
Graphics 640,480,16,1

X = 320
Y = 240

Rect X-2,Y-2,4,4

Print "Da siehst du den Punkt"
Print
strecke = Input("Abstand angeben : ")
w = Input("Winkel angeben : ")

Rect Cos(w)*strecke+X-2,Sin(w)*strecke+Y-2,4,4

Print "da ist der gesuchte Punkt"

WaitKey
End
<Wing Avenger Download> ◊◊◊ <Macrophage Download>
  • Zuletzt bearbeitet von Kabelbinder am Sa, Sep 18, 2004 15:33, insgesamt einmal bearbeitet

sbrog

BeitragSa, Sep 18, 2004 15:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Du rechnest zuerst den Abstand des Punktes vom kleinen zum großen Punkt aus (Abstandsberechnung sollte klar sein)

radius = (abstand vom großen zum kleinen Punkt)

kleinerPunktx = radius * sin(winkelunterschied)
kleinerPunkty = radius * cos(winkelunterschied)

ich hoffe mal das stimmt. ich bin das nämlich nur im kopf durchgegangen

Xenon

BeitragSa, Sep 18, 2004 15:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Kabelbinders Programm ausgebessert, hier die richtige Lösung:

Code: [AUSKLAPPEN]
Graphics 640,480,16,1

X = 320
Y = 240

Rect X-2,Y-2,4,4

xabs = Input("X Wert angeben: ")
yabs = Input("Y Wert angeben: ")
w = Input("Winkel angeben: ")

Rect Cos(w)*xabs+X-1+Cos(w+90)*yabs,Sin(w)*xabs+Y-1+Sin(w+90)*yabs,2,2

WaitKey
End

TheProgrammer

BeitragSa, Sep 18, 2004 16:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey, danke!!!
aktuelles Projekt: The last day of human being

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group