| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Flash-Bang Registriert seit: Jan 2004
Beiträge: 210
| Mathe Mathe Mathe
Also: ich habe ein objekt(wurm) und einen magneten(magnet). der magnet soll das objekt abstossen jetzt will ich die abstände der beiden objekte auf x und y achse haben(positiv, quadriert) ----- xabst = magnet._x - wurm._x; xabst = xabst*xabst; yabst = magnet._y - wurm._y; yabst = yabst*yabst; ----- so... jetzt möchte ich ich die "kraft" berechnen: ich hatte 2 ideen, die sich nach kurzem nachdenken beide als falsch erwiesen haben: 1. xpower = 1/xabst; ypower = 1/yabst; hier werden leider jeweils nur die achsenspezifischen abstände, aber nicht der abstand auf der andren achse gemessen. nun entspricht der magnet eher einem magnetkreuz welches sich über den ganzen film erstreckt. 2. if (xabst>yabst) { xpower=xabst/yabst; } else { xpower = yabst/xabst; } , das gleiche mit der y-achse, nur die brüche umgekehrt diese version funktionier aber nur in der horizontalen oder vertikalen... kann mir wer die formel sagen mit der ich aus xabst und yabst richtige werte für die x bzw y powert krich? danke xpower = xabst PS: nachdem diese berechnung fertig ist kommt noch ne abfrage die die kraft umkehrt falls die maus sich auf der andren seite befindet(damit das ganze in jede richtung funzt...) Geändert von sauerkraut (21-01-2004 um 11:01 Uhr) |
| | |
| | #4 (permalink) |
| Farbe ist Luxus Registriert seit: May 2003 Ort: Köln
Beiträge: 2.405
|
Hi, v = Math.sqrt(xabst*xabst+yabst*yabst); berechnet die Hypothenuse, also gewissermaßen die Länge (Stärke) des Vektors vom gedachten Mittelpunkt zu den Objekt-Koordinaten. Mit w = Math.atan2(yabst,xabst); berechnest du den Winkel zwischen beiden Punkten. Mit diesem Winkel kannst du mit Math.sin(w) * v; den x- und mit Math.cos(w) * v; den y-Anteil an der Stärke berechnen. Das bedeutet, je weiter das Objekt sich vom Mittelpunkt entfernt, desto größer wird die Kraft. Beim Magneten musst du es nur umkehren (1/v). Dann noch hier und da geeignete Faktoren einsetzen; das sollte es eigentlich tun ![]() Grüße Sascha
__________________ 12:15, press return |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |