Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 15-02-2005, 14:13   #1 (permalink)
Neuer User
 
Benutzerbild von fliegerlui
 
Registriert seit: Nov 2002
Beiträge: 11
Question Zeiger nicht linear bewegen

Hallo zusammen,
ich würde gerne einen Zeiger von 0° bis 330 ° drehen lassen.
Die Werte übergebe ich via xml.
Das funktioniert auch so weit.
Mein Problem ist das ich entsprechend der eingegebenen Werte eine genaue Anzeige darstellen möcht. Die Anzeige ist aber nicht linear.

Die ersten 10° sollen einem Anzeigewertwert von 0-50 entsprechen
Von 10° bis ca45 ° sollen einem Anzeigewertwert von 50-100 entsprechen
Von 45° bis ca90 ° sollen einem Anzeigewertwert von 100-130 entsprechen
Von 90° bis ca 180 ° sollen einem Anzeigewertwert von 130-200 entsprechen
Von 180° bis ca 270 ° sollen einem Anzeigewertwert von 200-300 entsprechen
Von 270° bis ca 330 ° sollen einem Anzeigewertwert von 300-450 entsprechen

Habe das ganze mit jeder Menge if Anweisungen gelößt ist aber zu ungenau.
Hab schon mal was von einer rekursiven Funktion gehört, weiß aber nicht ob das der richtige Ansatz ist?
Hat jemand eine Idee?
Gruß und vielen Dank im Vorauß
fliegerlui
fliegerlui ist offline   Mit Zitat antworten
Alt 15-02-2005, 18:54   #2 (permalink)
Der Wunderhund
 
Benutzerbild von gaspode
 
Registriert seit: Jun 2002
Ort: Hattingen
Beiträge: 10.515
hi.

ein ansatz:

ActionScript:
  1. switch(true) {
  2.     case (anzeigewert <= 50):
  3.         // ergibt winkel zwischen 0 und 10 basierend
  4.         // auf einem anzeigewert zwischen 0 und 50
  5.         winkel = anzeigewert/5;
  6.         break;
  7.     case (anzeigewert <= 100):
  8.         // ergibt winkel zwischen 10 und 45 basierend
  9.         // auf einem anzeigewert zwischen 50 und 100
  10.         winkel = (anzeigewert*0.7)-25;
  11.         break;
  12.     case (anzeigewert <= 130):
  13.         // usw.
  14.         break;
  15.     case (anzeigewert <= 200):
  16.         // usw.
  17.         break;
  18.     case (anzeigewert <= 300):
  19.         // usw.
  20.         break;
  21.     case (anzeigewert <= 450):
  22.         // usw.
  23.         break;
  24. }

habe gerade keinen nerv die anderen formeln auszurechnen,
aber wenn du das so machen willst, kann ich dir erklären,
wie du sie ausrechnest.

gruß, gaspode

Geändert von gaspode (15-02-2005 um 18:56 Uhr)
gaspode ist offline   Mit Zitat antworten
Alt 16-02-2005, 13:41   #3 (permalink)
Neuer User
 
Benutzerbild von fliegerlui
 
Registriert seit: Nov 2002
Beiträge: 11
Smile

Zitat:
Zitat von gaspode
hi.

ein ansatz:

ActionScript:
  1. switch(true) {
  2.     case (anzeigewert <= 50):
  3.         // ergibt winkel zwischen 0 und 10 basierend
  4.         // auf einem anzeigewert zwischen 0 und 50
  5.         winkel = anzeigewert/5;
  6.         break;
  7.     case (anzeigewert <= 100):
  8.         // ergibt winkel zwischen 10 und 45 basierend
  9.         // auf einem anzeigewert zwischen 50 und 100
  10.         winkel = (anzeigewert*0.7)-25;
  11.         break;
  12.     case (anzeigewert <= 130):
  13.         // usw.
  14.         break;
  15.     case (anzeigewert <= 200):
  16.         // usw.
  17.         break;
  18.     case (anzeigewert <= 300):
  19.         // usw.
  20.         break;
  21.     case (anzeigewert <= 450):
  22.         // usw.
  23.         break;
  24. }

habe gerade keinen nerv die anderen formeln auszurechnen,
aber wenn du das so machen willst, kann ich dir erklären,
wie du sie ausrechnest.

gruß, gaspode
hallo gaspode
Danke für deine Hilfe,
hast mir doch helfen können!!!
Großes Lob
Gruß
fleigerlui
fliegerlui 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 15:29 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele