Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 18-10-2006, 10:34   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2003
Beiträge: 377
straßenkarte - zoom out - weltall

hier mal der link zu meiner karte:
http://www.dbureau.de/_pl_Stadtplan_1.jsp

und hier nen teil vom script:
ActionScript:
  1. var originalWidth:Number;
  2. var originalHeight:Number;
  3. var originalXPosition:Number;
  4. var originalYPosition:Number;
  5.  
  6. if (originalWidth == null) {
  7.     StateMachinePart.setMask(Mask);
  8.     originalWidth = StateMachinePart._width;
  9.     originalHeight = StateMachinePart._height;
  10.     originalXPosition = StateMachinePart._x;
  11.     originalYPosition = StateMachinePart._y;
  12. }
  13. targetX = originalWidth/1;
  14. targetY = originalHeight/1;
  15. //targetW = originalWidth-50;
  16. //targetH = originalHeight-50;
  17.  
  18.  
  19. function zoomToState(stateX, stateY, stateH, stateW, mouseWheel) {
  20.     if (!mouseWheel) {
  21.         stateScale = targetW/stateW;
  22.         if (stateScale*stateH>targetH) {
  23.             stateScale = targetH/stateH;
  24.         }
  25.         mapX = targetX-(stateX*stateScale);
  26.         mapY = targetY-(stateY*stateScale);
  27.     } else {
  28.         stateScale = originalWidth/stateW;
  29.         if (stateScale*stateH>originalHeight) {
  30.             stateScale = originalHeight/stateH;
  31.         }
  32.         mapX = originalXPosition-(stateX*stateScale);
  33.         mapY = originalYPosition-(stateY*stateScale);
  34.     }
  35.     _root.onEnterFrame = function() {
  36.         //StateMachinePart._x -= (StateMachinePart._x-mapX)/5;
  37.         //StateMachinePart._y -= (StateMachinePart._y-mapY)/5;
  38.         StateMachinePart._xscale -= (StateMachinePart._xscale-(stateScale*100))/5;
  39.         StateMachinePart._yscale -= (StateMachinePart._yscale-(stateScale*100))/5;
  40.         if (Math.abs(StateMachinePart._x-mapX)<.5 && Math.abs(StateMachinePart._y-mapY)<.5 && Math.abs(StateMachinePart._xscale-
  41. (stateScale*100))<.5) {
  42.             delete (_root.onEnterFrame);
  43.         }
  44.     };
  45. }
  46.  
  47.  
  48. var mouseListener:Object = new Object();
  49. mouseListener.onMouseWheel = function(delta) {
  50.     pt1 = {x:originalXPosition, y:originalYPosition};
  51.     pt2 = {x:originalXPosition-originalWidth/2, y:originalYPosition-originalHeight/2};
  52.     pt3 = {x:originalXPosition+originalWidth/2, y:originalYPosition+originalHeight/2};
  53.     if (delta>0) {
  54.         pt2.x += 0;
  55.         pt3.x -= 2060;
  56.         pt2.y += 0;
  57.         pt3.y -= 2060;
  58.     } else {
  59.         pt2.x -= 0;
  60.         pt3.x += 2060;
  61.         pt2.y -= 0;
  62.         pt3.y += 2060;
  63.     }
  64.     StateMachinePart.globalToLocal(pt1);
  65.     StateMachinePart.globalToLocal(pt2);
  66.     StateMachinePart.globalToLocal(pt3);
  67.     _root.zoomToState(pt1.x,pt1.y,pt3.y-pt2.y,pt3.x-pt2.x,true);
  68. };
  69. Mouse.addListener(mouseListener);
  70.  
  71. _root.StateMachinePart.bezirke.autobahn._visible = 0;
  72. _root.StateMachinePart.bezirke.bahn._visible = 0;
  73. _root.StateMachinePart.bezirke.flug._visible = 0;
  74. _root.StateMachinePart.bezirke.swkmovie._visible = 0;
  75. stop();

nun zu meiner frage: ich möchte aus der karte herauszoomen, und ab einem bestimmten punkt erst den weltenraum sehen. ich stell mir auch vor, dass sich ab einem bestimmten zoompunkt der "himmel" langsam verdunkelt, bei jedem zoom, bis hin zum all. ich hab nun schon herumprobiert, aber keine schöne lösung gefunden. wie würdet ihr hier vorgehen? wie würde die abfrage der maus aussehen? danke für eure hilfe!
__________________
OooO
stifflers mum ist offline   Mit Zitat antworten
Alt 20-10-2006, 09:41   #2 (permalink)
Neuer User
 
Registriert seit: Jun 2003
Beiträge: 377
es ist schon hart einfach ignoriert zu werden...
__________________
OooO
stifflers mum ist offline   Mit Zitat antworten
Alt 20-10-2006, 10:23   #3 (permalink)
Neuer User
 
Registriert seit: Feb 2003
Beiträge: 4
hab so einen stadtplan auch schonmal gemacht. (und das script verloren ) Ich hab dabei die Zoomschritte gezählt. Also bei jedem Klick auf "-" zoomstatus+=1 bzw bei "+" zoomstatus-=1.
Wenn du also bei 9 bist oder so, fängst du an einen movieclip der drüberliegt über _alpha einzufärben. frag mich nicht ob das schön ist, aber es funktioniert (und das ist das, was der anwender sieht ) Ich weiß aber nicht, ob das mit dem Scrollrad auch funktioniert.
stsht 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 08:35 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele