Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-01-2004, 11:24   #1 (permalink)
nordlicht
 
Benutzerbild von phantura
 
Registriert seit: Apr 2002
Ort: Hamburg
Beiträge: 137
Question Stab balancieren, Formel zur Berechnung?

Hallo zusammen,

ich habe momentan ein kleines Problem, die richtige Formel zu finden, mit der ich die Bewegung physikalisch korrekt darstellen kann.

Ziel ist, mit der Links und Rechtstaste, einen Stab auf einem Kreis zu balancieren, so in etwa, als wenn man einen Stock auf der Hand balanciert, der immer nach links oder rechts abfällt, wenn man nicht gegensteuert.

Wenn man es nicht schafft, soll sich der Stab unten auspendeln (hin und herschwingen).

Erster Ansatz, um den Stab um den Kreis rotieren zu lassen (etwas mager):

ActionScript:
  1. var speed = 10;
  2.  
  3. stab.onEnterFrame = function (){
  4.     if(Key.isDown(Key.LEFT)){
  5.             this._rotation -=speed;
  6.            
  7.     }else if(Key.isDown(Key.RIGHT)){
  8.             this._rotation +=speed;
  9.            
  10.     }
  11. }

Jemand ne Idee??

Wär riesig, danke!
Phan
phantura ist offline   Mit Zitat antworten
Alt 14-01-2004, 11:52   #2 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
kleiner ansatz mit eigenbewegung.
ActionScript:
  1. var speed = 2;
  2. stab.onEnterFrame = function() {
  3.     this._rotation>0 ? this._rotation++ : this._rotation--;
  4.     if (Key.isDown(Key.LEFT)) {
  5.         this._rotation += speed;
  6.         this._x -= 2;
  7.     } else if (Key.isDown(Key.RIGHT)) {
  8.         this._rotation -= speed;
  9.         this._x += 2;
  10.     }
  11. };
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 14-01-2004, 12:00   #3 (permalink)
nordlicht
 
Benutzerbild von phantura
 
Registriert seit: Apr 2002
Ort: Hamburg
Beiträge: 137
hi hay,

danke für deine hilfe!

leider ist das noch nicht so ganz das, was ich suche...

ich wurschtel grad noch mit den physikalischen formeln rum zu beschleunigung etc.

hier mal die fla als zip:
Angehängte Dateien
Dateityp: zip balance1.zip (2,4 KB, 14x aufgerufen)
phantura ist offline   Mit Zitat antworten
Alt 14-01-2004, 12:17   #4 (permalink)
anyway
Gast
 
Beiträge: n/a
..Was Du brauchst ist die berechnung eines hebelarms - als mit wieviel Kilonewton (hehe) die eine Seite im Vergleich zur anderen belastet ist - dann noch eine Trägheit, den Stab nach links bzw. nach rechts zu drehen, um das Gleichgewicht auszutangieren.
Austangieren - mit dem Kräfteparallelogramm an beiden Enden des Stabs unter einbeziehung der Größen: Gewicht und Länge des Stabs, Länge des Hebelarms und Neigungswinkel des Hebels. Hab jetzt leider keine Formelsammlung griffbereit..mh, komm nochmal drauf zurück...
  Mit Zitat antworten
Alt 14-01-2004, 14:10   #5 (permalink)
nordlicht
 
Benutzerbild von phantura
 
Registriert seit: Apr 2002
Ort: Hamburg
Beiträge: 137
@anyway: das ist glaub ich das, was ich suche!! vielen dank schonmal für deinen beitrag. falls du noch ergänzungen dazu machen möchtest, wär das riesig!!

gruss phan
phantura ist offline   Mit Zitat antworten
Alt 15-01-2004, 12:45   #6 (permalink)
anyway
Gast
 
Beiträge: n/a

Anbei mal eine vereinfachte Übersicht der ganzen Problematik. Eigentlich solltest Du damit schon ein ganzes Stück weiter kommen.
Ich würde das so angehen, daß ich mir einen Mausfollower baue, der die Mausposition bei Bewegung auf der Länge des Stabs festhält und über eine Beschleunigungsformel zum Drehpunkt hin immer schneller der Maus folgt, bis ein empfindliches Verhältnis von Mausbewegung und der daraus resultierenden Drehung des Ballance-Stabs vorliegt, woraufhin wieder das Kräfteverhältnis berechnet wird und die 'Kraft' berechnet werden kann, die nötig wäre um wieder Ballance zu erhalten.

Good Luck - und wenns Probs gibt, komm nicht ohne Scriptansätze.

[ zip ist mit winRAR 3.2 gepackt ]
Angehängte Dateien
Dateityp: zip hebelarm.zip (29,1 KB, 25x aufgerufen)
  Mit Zitat antworten
Alt 15-01-2004, 16:51   #7 (permalink)
nordlicht
 
Benutzerbild von phantura
 
Registriert seit: Apr 2002
Ort: Hamburg
Beiträge: 137
Klasse, so eine Vorlage hat mir gefehlt!

Danke!
phantura ist offline   Mit Zitat antworten
Alt 21-01-2004, 10:29   #8 (permalink)
nordlicht
 
Benutzerbild von phantura
 
Registriert seit: Apr 2002
Ort: Hamburg
Beiträge: 137
für alle interessierten, hier meine lösung:

ich habe der physikalischen vorlage den rücken gekehrt und es folgendermaßen gelöst (wahrscheinlich schlagen jetzt alle physiker die hände über ihren köpfen zusammen...) für meine belange genügt es so:
ActionScript:
  1. var lauf=0;
  2. var beschleunigung=0.4;
  3. _root.onEnterFrame = function(){
  4.   if (Key.isDown(Key.LEFT)) {
  5.     lauf -= beschleunigung;
  6.   } else if (Key.isDown(Key.RIGHT)) {
  7.     lauf += beschleunigung;
  8.   } else {
  9.     if (lauf>0) {
  10.       lauf += beschleunigung;
  11.     } else if (lauf<0) {
  12.       lauf -= beschleunigung;
  13.                 }
  14.   }
  15. //
  16.   if (lauf<0) {
  17.     stab._rotation = -Math.pow(lauf, 2);
  18.   } else if (lauf>0) {
  19.     stab._rotation = Math.pow(lauf, 2);
  20. }
  21. };

das ausschwingen ist hier jetzt allerdings nicht mit berücksichtigt!
gruss
phan
phantura ist offline   Mit Zitat antworten
Alt 21-01-2004, 12:33   #9 (permalink)
anyway
Gast
 
Beiträge: n/a
*HändeÜbermKopfZusammenschlag*

..und wozu nun die Klasse Vorlage?
  Mit Zitat antworten
Alt 21-01-2004, 13:11   #10 (permalink)
nordlicht
 
Benutzerbild von phantura
 
Registriert seit: Apr 2002
Ort: Hamburg
Beiträge: 137
...für alle die, die sich durch diesen thread berufen fühlen, sich intensiver mit den formeln der physik zu beschäftigen...
wenn es meine zeit zulässt, werd ich das auch nochmal in angriff nehmen!
phantura ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 10:08 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele