| |||||||
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) |
| Neuer User Registriert seit: Jan 2002 Ort: Zürich
Beiträge: 172
| zoom mit setInterval
hallo leuts ich habe folgendes problem: möchte einen mc per mausklicik auf an einen bestimmten ort schieben, und auf eine bestimmte grösse zoomen. das verschieben klappt schon mal ganz gut, aber wie mach ich das zoomen??? das verschieben sieht mal etwa so aus..... PHP-Code: kann mir jemand sagen wie ich das zoomen hinbekomme, die scripts fürs verschieben habe ich irgendwie zusammengebastelt.... thx and flash on m |
| | |
| | #2 (permalink) |
| "Lust auf Stil" Registriert seit: Jun 2003 Ort: Florenz
Beiträge: 1.490
|
Erst mal die Zoom-Funktion deklarieren, z.B.: // Zoom Funktion function zoom() { dein_mc._width += (zielX-dein_mc._width)/5; dein_mc._height += (zielY-dein_mc._height)/5; } Dann setzt Du einen MC als Button ein : // Schaltflächen = MC _root.button_mc.onPress = function() { // Aufruf der Funktion button_mc.dein_mc.onEnterFrame = zoom; zielX = 200; //bzw. die gewünschte Größe zielY = 200; //hier einsetzen }; Das Verschieben geht auch einfacher und ohne Interval. Brauchst nur Positionen festzulegen für bestimmte Bedingungen sowie die Bewegungsgeschwidigkeit. Dann gibst Du jedem MC eine ID als Bezeichner. Dann kannst Du sogar beides koppeln und je nach Klick auf einen bestimmten Button-MC verschieben sich alle anderen auf die Ursprungskoordinate und zoomen auf die Ursprungsgröße, sofern sie dort nicht schon sind und der durch Klick angesprochenene wandert an die gewünschte Position und zoomt aus. ![]() Kannst sogar noch mit createEmptyMovieclip in alle dein_mc Bilder laden, die dann mit bewegt und auch gezoomt werden. Geht auch mit onRollover und onRollout auf den button_MCs. Nur dann schießt es wild hin und her, je nach dem wie man die Maus und wohin bzw. worüber bewegt.
__________________ Dann geht ein Bild hinein, geht durch der Glieder angespannter Stille - und hört im Herzen auf zu sein. |
| | |
| | #3 (permalink) |
| Flashaholic Registriert seit: Feb 2003 Ort: Berlin
Beiträge: 1.459
|
na es gibt doch die beiden eigenschaften _xscale und _yscale dann kannste doch recht einfach implementieren. zB PHP-Code: zB. PHP-Code: ![]() mfg alex
__________________ TVNEXT Solutions Geändert von atothek (28-09-2004 um 08:12 Uhr) |
| | |
| | #4 (permalink) | |
| Neuer User Registriert seit: Jan 2002 Ort: Zürich
Beiträge: 172
|
ok, das geht ganz gut, aber er fällt in eine schlaufe und kommt nicht mehr raus wenn ich auf einen andern button klicke.... hmm, zur veranschaulichung lege ich noch das .fla bei Zitat:
| |
| | |
| | #5 (permalink) |
| "Lust auf Stil" Registriert seit: Jun 2003 Ort: Florenz
Beiträge: 1.490
|
Was meinst Du mit Schlaufe? Habe eben mal reingesehen. Mit gedrückter Maustaste zu bewegen klappt. Zoom out und Zoom in klappt. Position bzgl. Auto klappt. Eisenbahn nicht. Willst Du die Größe an sich nicht unterschreiten und/bzw. unterschreiten lassen? Dann setzt doch eine if-Abfrage zur Kontrolle bzgl. Ziel oder _width und _height, das die Mindestanfangsgröße nicht unterschritten wird und eine Maxgröße bestimmt wird. ---------------------------------- Jetzt weiß wohl, so nehme ich an, was Du meinst: Wenn man die Rootskalierung wegnimmt, dann schießt es weg. Musst neben der Größenskalierung auch die xy-Position angeben. Aber mit der Rootskalierung klappt es doch auch gut. Kannst Du auch so lassen. Dann ist der Zoomschritt immer stückweise wie bei vielen Karten. Must halt die Min. und Max. begrenzen. Oder soll die Karte nur einmal zoomen mit fließender Bewegung? Dann kannst Du auch das auf einen MC legen (achte auf Positionierung des MCs zu seinem Nullpunkt) in dem die Karte liegt. Hiermit ist die Karte zugleich bewegbar und zoomfähig, wenn die Maus drüberfährt und geklickt gehalten wird (automatisches Auszoomen und Reaktion auf zum Rand hinbewegen der Maus sowie zurückzoomen bei wiederloslassen, wobei alles auf den Mittelpunkt bezogen wird): //Größen anpassen onClipEvent (load) { this.ypos = 0; this.xpos = 0; this.x_mitte = this._width/5; this.y_mitte = this._height/5; this.breite = this._width + 200; this.hoehe = this._height + 100; this._y = this.ypos + y_mitte; this._x = this.xpos + x_mitte; this._xscale = 50; this._yscale = 50; this.zooming = false; } onClipEvent (mouseDown) { this.zooming = true; } onClipEvent (mouseUp) { this.zooming = false; } onClipEvent (enterFrame) { if (this._xscale < 200 and this.zooming == true) { this._xscale +=10; this._yscale +=10; } else { if (_root._ymouse < 20 and this.zooming == true and this.ypos < hoehe) { this.ypos +=20; this._y = this.ypos + y_mitte; } if (_root._ymouse > 220 and this.zooming == true and this.ypos > -hoehe) { this.ypos -=20; this._y = this.ypos + y_mitte; } if (_root._xmouse < 20 and this.zooming == true and this.xpos < breite) { this.xpos +=20; this._x = this.xpos + x_mitte; } if (_root._xmouse > 440 and this.zooming == true and this.xpos > -breite) { this.xpos -=20; this._x = this.xpos + x_mitte; } } if (this._xscale > 50 and this.zooming == false and this.ypos == 0 and this.xpos == 0) { this._xscale -=10; this._yscale -=10; } if (this.ypos > 0 and this.zooming == false) { this.ypos -=20; this._y = this.ypos + y_mitte; } if (this.ypos < 0 and this.zooming == false) { this.ypos +=20; this._y = this.ypos + y_mitte; } if (this.xpos > 0 and this.zooming == false) { this.xpos -=20; this._x = this.xpos + x_mitte; } if (this.xpos < 0 and this.zooming == false) { this.xpos +=20; this._x = this.xpos + x_mitte; } }
__________________ Dann geht ein Bild hinein, geht durch der Glieder angespannter Stille - und hört im Herzen auf zu sein. Geändert von questionner (29-09-2004 um 20:12 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |