• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flash > Stuff

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 26-11-2007, 12:35   #1 (permalink)
no guts no glory
 
Benutzerbild von readme.txt
 
Registriert seit: May 2004
Ort: Nordhorn
Beiträge: 7.998
[Stuff] StageManager-Klasse

Huhu ...

Da 100%/100%-Seiten doch immer beliebter werden dachte ich mir es wär doch cool mal eine entsprechende Klasse zu schreiben. Rausgekommen ist in der ersten Version das hier.

Das ganze läuft wie folgt:

Momentan lassen sich 3 Attribute pro MC registrieren:
  • size
  • position
  • animation

size:
size gibt an wie die Höhe/Breite eines Elementes auf den Resize der Bühne reagieren.

size kennt 2 zusätzliche Parameter:
  • ratio: Entspricht einem Prozentwert. Soll ein Element z.B. immer 50% der Bühne einnehmen würde das ratio-Array so aussehen: [.5,.5] ([Breite,Höhe]). Soll nur einer der Werte angepasst werden lautet der andere null.
  • offset: Die offset-Werte sind Pixelwerte. Sie werden zu dem errechneten Wert addiert. Will man z.B. einen MC der die komplette Bühne -100 Pixel Höhe/Breite einnimmt wäre das offset-Array:[-100,-100] ([Breite,Höhe]). Wie bei dem ratio Array muss wenn nur ein Wert geändert werden soll der andere null sein.

position:
position gibt an wie die x/y-Position eines Elementes auf den resize der Bühne reagieren.

position kennt 3 zusätzliche Parameter:
  • pos: pos gibt an wo genau sich das Element am Screen ausrichten soll. Möglich sind:
    • tl: Oben Links
    • tc: Oben Mitte
    • tr: Oben Rechts
    • cl: Mitte Links
    • cc: Mitte Mitte
    • cr: Mitte Rechts
    • bl: Unten Links
    • bc: Unten Mitte
    • br: Unten Rechts
  • register: register gibt an wo der Registrierungspunkt des MCs liegt. Der möglichen Werte sind die selben wie bei pos.
  • offset: Ähnlich wie bei size, die angegebenen Werte werden zu der berechneten Position addiert. Wollte man z.B. ein Element das immer links oben aber mit jeweils 10px Abstand positioniert wird wäre das Array: [10,10]

animation:
Hierfür nutze ich das Fuse-Kit ... ich geh dabei davon aus das die Fuse-Klassen im Standard-Ordner liegen (com.mosesSupposes.fuse.*).

Parameter gibt es 2: time und ease, die den Parametern aus dem
Fuse-Kit entsprechen.

----------------

size,position und animation können Kombiniert werden und werden als Objekte übergeben.

Bsp: Ein MC der immer 100% der Bühne einnimmt. (Registrierungspunkt des MCs liegt oben links und er liegt auf x/y: (0,0).

PHP-Code:
import StageManager;

var 
stageManager:StageManager = new StageManager();

stageManager.registerElement(mc,{attribute:"size"}); 
Der selbe MC soll die Bühne -20px in der Breite und -40px in der Höhe einnehmen.

PHP-Code:
stageManager.registerElement(mc,{attribute:"size",offset:[-20,-40]}); 
Und ums spannender zu machen soll der MC dabei immer zentriert sein:

PHP-Code:
stageManager.registerElement(mc,{attribute:"size",offset:[-20,-40]},{attribute:"position",pos:"cc",register:"tl"}); 
Und schlussendlich soll der MC sich auch noch animiert in die neue Position bewegen:

PHP-Code:
stageManager.registerElement(mc,{attribute:"size",offset:[-20,-40]},{attribute:"position",pos:"cc",register:"tl"},{attribute:"animation",time:1,ease:"easeOutBounce"}); 
Ein komplexeres Beispiel seht ihr unter dem Link oben. Die entsprechende .fla hänge ich auch mit an. Genau wie eine Variante ohne das Fuse-Kit, die kennt dann halt nur size und position.

Södele ... wenn es jemanden Interessiert und/oder es noch Fragen gibt immer her damit, auch für Erweiterungsvorschläge bin ich jederzeit offen.

DOWNLOAD HIER
__________________
Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke.

'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.'
readme.txt ist offline   Mit Zitat antworten
Alt 26-11-2007, 13:12   #2 (permalink)
muh
 
Benutzerbild von Janoscharlipp
 
Registriert seit: Apr 2002
Ort: Freiburg / Stuttgart
Beiträge: 4.338
Coole Sache!
Während man das Fenster in der Größe ändert, scheint noch irgendwas mit der Animation schief zu gehen, er springt dann immer direkt an das Ziel.
__________________
»Carpe diem«, sagte der Graf. (Terry Pratchett: Ruhig Blut!)
Janoscharlipp ist offline   Mit Zitat antworten
Alt 26-11-2007, 14:05   #3 (permalink)
no guts no glory
 
Benutzerbild von readme.txt
 
Registriert seit: May 2004
Ort: Nordhorn
Beiträge: 7.998
Kannst du das genauer beschreiben? Ich kann mir vorstellen das die Animation komisch wirkt wenn mann z.B. sehr kleine Schritte macht.
__________________
Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke.

'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.'
readme.txt ist offline   Mit Zitat antworten
Alt 26-11-2007, 15:11   #4 (permalink)
muh
 
Benutzerbild von Janoscharlipp
 
Registriert seit: Apr 2002
Ort: Freiburg / Stuttgart
Beiträge: 4.338
Solang ich beim Größeändern die Maus in Bewegung halte, passiert garnichts, sobalt ich dann anhalte (aber nicht losloasse) spring alles ohne Animation direkt zu der aktuellen Größe.
__________________
»Carpe diem«, sagte der Graf. (Terry Pratchett: Ruhig Blut!)
Janoscharlipp ist offline   Mit Zitat antworten
Alt 27-11-2007, 11:18   #5 (permalink)
no guts no glory
 
Benutzerbild von readme.txt
 
Registriert seit: May 2004
Ort: Nordhorn
Beiträge: 7.998
Ja ... mit einem anderen Animationstypen seh ich das auch ... hmm ... mal gucken ob ich da was finde.

Im Moment kann ich das Problem nicht einordnen.


Dafür habe ich was neues eingebaut ... einen neues Attribut: "pattern"

Es gibt also jetzt:
  • size
  • position
  • animation
  • pattern

pattern:
pattern kennt 3 Paramter:
  • bitmapData: Ein BitmapData-Objekt das die Grafik enthält mit der der registrierte MC gefüllt werden soll.
  • offset: Siehe: size
  • ratio: Siehe: size

pattern ist nicht kompatibel mit size und animation funktioniert aber mit position

Bsp: Ich will _root mit einer Hintergrundgrafik füllen. Die Grafik liegt als gif mit dem Verknüpfungsnamen "pattern" in der Bibliothek:

PHP-Code:
import StageManager;
import flash.display.BitmapData;

var 
stageManager:StageManager = new StageManager();
var 
bitmapData:BitmapData     BitmapData.loadBitmap("pattern");

stageManager.registerElement(_root,{attribute:"pattern",bitmapData:bitmapData}); 
zu sehen auch hier.

DOWNLOAD noch immer HIER
__________________
Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke.

'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.'
readme.txt ist offline   Mit Zitat antworten
Alt 28-11-2007, 14:48   #6 (permalink)
no guts no glory
 
Benutzerbild von readme.txt
 
Registriert seit: May 2004
Ort: Nordhorn
Beiträge: 7.998
Nochmal ein kleines Update:

DOWNLOAD

Ich hab die Klasse ohne Fuse nochmal angepasst.

Außerdem hatte ich vergessen zu schreiben das size auch die Werte
minValue und maxValue kennt. Die sollten eigentlich selbsterklärend sein.
__________________
Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke.

'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.'
readme.txt ist offline   Mit Zitat antworten
Alt 01-12-2007, 00:43   #7 (permalink)
backToThe._roots
 
Benutzerbild von Blax_ed
 
Registriert seit: Feb 2003
Ort: Ebnat-Kappel [CH]
Beiträge: 1.571
fein.. bin grad an ner fullscreen seite dran.. werde mal versuchen ob ich noch zeit habe sie mit deinem gedöns umzusetzen..

sieht aber bis her recht geil aus

DANKE dafür!
__________________
Cheers,
Flow!
Blax_ed ist offline   Mit Zitat antworten
Alt 06-01-2008, 14:52   #8 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 86
danke sehr gutes ding..... nicht auffällig aber fein! Ist schon im einstatz bei mir;D
Ciko ist offline   Mit Zitat antworten
Alt 10-02-2008, 15:02   #9 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 56
will nicht im browser

moin

erstmal danke für das script. bekomme es leider nicht im browser (egal ob IE oder FF) zum laufen. es skaliert sich weder die Stage noch wird das onRezize event ausgelöst. dder Mc positioniert sich nur beim laden der seite einmal richtig..

Ist sicher was beklopptes dasich vergessen habe, aber ich komm nicht drauf...

danbar für tips,
tentacles
tentacles ist offline   Mit Zitat antworten
Alt 10-02-2008, 15:07   #10 (permalink)
mushroom powered
 
Benutzerbild von b.asile
 
Registriert seit: Jun 2005
Ort: Amsterdam
Beiträge: 2.649
Sieht gut aus!

Ich bin nicht mehr unter AS2 unterwegs,
aber irgendwo ist mir auch mal ein FluidLayout Manager ueber den Weg gelaufen.
Da konnte man MovieClips einfuegen und diese haben sich dann auch aneinander ausgerichtet, aehnlich Flex.

Sowas waere eventuell noch eine Idee,
habs mir jetzt nicht angesehen hoffe nicht das es schon drin ist!

gruss b.asile
__________________
[ WHEN THE GOING GETS WEIRD THE WEIRD TURN PRO ]

devboy.org
b.asile ist offline   Mit Zitat antworten
Alt 10-02-2008, 16:41   #11 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 56
jaja ohne SWFObject kann das natürlich nicht gehen..

so läuft soweit.
aber wie bekomme ich es hin das ein MC nur horizontal skaliert. mit :

Code:
stageManager.registerElement(red_bar,{attribute:"size",ratio:[.6,null]},{attribute:"position",pos:"tl",register:"tl",offset:[30,40]},{attribute:"animation",time:.6,ease:"easeOutQuad"});
skaliert er vertikal fröhlich weiter...

red_bar soll oben links ausgerichted sein und sich horizontal zu 60% skalieren und sich vertikal nicht skalieren

was mache ich falsch?

danke
tentacles




hilfe
tentacles ist offline   Mit Zitat antworten
Alt 11-02-2008, 10:12   #12 (permalink)
no guts no glory
 
Benutzerbild von readme.txt
 
Registriert seit: May 2004
Ort: Nordhorn
Beiträge: 7.998
Geändert ... Sollte jetzt so funktionieren:

PHP-Code:
import StageManager;

var 
sm:StageManager = new StageManager();

sm.registerElement(red_bar,{attribute:"size",ratio:[.6,null]},{attribute:"position",register:"tl",pos:"tl"}); 
Die hochgeladene Version ist allerdings die die Fuse zur Animation nutzt ... zu dem Thema gilt immer noch das was ich im ersten Posting unter "animation" geschrieben habe.
Angehängte Dateien
Dateityp: rar StageManager.rar (2,4 KB, 159x aufgerufen)
__________________
Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke.

'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.'

Geändert von readme.txt (11-02-2008 um 10:13 Uhr)
readme.txt ist offline   Mit Zitat antworten
Alt 11-02-2008, 10:52   #13 (permalink)
Neuer User
 
Benutzerbild von Randy
 
Registriert seit: Nov 2002
Beiträge: 595
Sieht gut aus Readme. Wollte mich selber an so ne Klasse mal dransetzen. Danke dafür.
__________________
http://www.i-tune.in
Randy ist offline   Mit Zitat antworten
Alt 11-02-2008, 10:53   #14 (permalink)
Neuer User
 
Registriert seit: Aug 2003
Beiträge: 56
Besten dank, werd ich gleich mal ausprobieren.
tentacles ist offline   Mit Zitat antworten
Alt 24-02-2010, 04:06   #15 (permalink)
Flasher
 
Benutzerbild von mauri2006
 
Registriert seit: Oct 2007
Ort: Niedersachsen
Beiträge: 502
Hat jemand dieses Paket da oben noch?
Die Links gehen ja allesamt nicht mehr
__________________
Nützliches: Javascript-Detection | Flash-Detection | Java-Detection
Allgemein: Meine Webseite | Meine Fotogallerie (Auf's Eis gelegt)


RIP agedoubleju
mauri2006 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 19:02 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele