tutorials.de Buch-Aktion 05/2012
Like Tree8Danke
  • 2 Beitrag von Psychodelics
  • 2 Beitrag von Psychodelics
  • 1 Beitrag von Psychodelics
  • 1 Beitrag von Psychodelics
  • 2 Beitrag von Psychodelics
ERLEDIGT
JA
ANTWORTEN
11
ZUGRIFFE
892
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Wiz Wiz ist offline Mitglied
    Registriert seit
    Dec 2009
    Beiträge
    14
    Moin moin zusammen,

    Ich würde gerne eine Flash-Animation auf meine Homepage setzen, doch weiß ich nicht so recht, wie die Aktionen dazu aussehen.

    Hier ein Link zu dem, was ich mir in etwa vorstelle:
    http://www.emp.de/bin/shop.php?prog=...LDOWN_00MALETS
    (ich hoffe, der Link funktioniert..)

    Die Objekte sollen sich halt nach Links im Kreis drehen und nach Rechts.
    Allerdings hätte ich das gern so, dass man nicht über diese Pfeile dort gehen muss, sondern man einen Bereich definiert, in dem, wenn die Maus in der Mitte steht, sich die Objekte nicht drehen und je weiter die Maus z.B. sich nach Links bewegt, desto schneller rotieren die Objekte.

    Ich nutze CS4 - eventuell wichtig.

    Kann mir dabei eventuell wer helfen?

    mfg
    Wiz
    Geändert von Wiz (30.12.09 um 05:03 Uhr)
     

  2. #2
    Psychodelics Psychodelics ist offline Mitglied Gold
    Registriert seit
    Dec 2009
    Ort
    Gießen(Hessen)
    Beiträge
    123
    Hi Wiz,

    um das zu realisieren gibt es bestimmt viele Möglichkeiten, aber ich nenn dir mal auf die Schnelle die hier. Die Idee stammt von dieser Seite: http://www.gotoandlearn.com/


    1.öffne die Datei im Anhang
    2. Lösche alle Elemente aus der Bibliothek, die sind nur zum testen für dich da(STRG + ENTER drücken)
    3. Ziehe alle deine Fotos bei Flash auf die Bühne, dass ist in der Mitte vom Bildschirm (sicherlich nicht die eleganteste Variante, kann dir das auch per XML machen, aber das nimmt viel mehr Zeit in Anspruch und so klappt's auch)
    4. Nun klickst du jedes Foto einzeln an, machst Rechtsklick -> In Symbol konvertieren... Nennst die Datei "bild1" und wählst MovieClip bei Typ, die Mitte bei Anker und machst ein Häkchen bei Export für ActionScritpt
    5. Nun steht auch bild1 in dem Feld bei ActionScript drin. Wichtig ist, dass jedes weitere Bild eine höhere Zahl hat, also bild2 bild3 usw. Dann bestätigst du und löschst das element wieder von der bühne
    6. Wiederhole beliebig oft schritt 4. und 5.
    7. aktuell sind 3 Bilder eingestellt. Du musst eine Variable im Code ändern, die anzahl_bilder heißt. dafür rechtsklickst du in der Zeitleiste auf dieses Kästchen mit dem kleinen "a" -> und wählst "Aktionen" dort kannst du die Variable deinen Bedürfnissen anpassen

    Fertig. Starten mit STRG + Enter

    Gruß, Adnan
    Angehängte Dateien Angehängte Dateien
    Geändert von Psychodelics (04.01.10 um 20:11 Uhr)
    Martin287 und Wiz bedanken sich. 

    --------- Adnan -----------

  3. #3
    Wiz Wiz ist offline Mitglied
    Registriert seit
    Dec 2009
    Beiträge
    14
    Dankeschön für die Mühe, nur kann ich die Datei im Anhang nicht öffnen... da steht simpel "Dokument konnte nicht geöffnet werden." Vielleicht in CS5 gespeichert worden?

    Btw Frohes Neues an alle!

    mfg
    Wiz

    Edit: Omg... ich bin ein Idiot... ööhm, ich nutze CS3 ^.^"
    Geändert von Wiz (02.01.10 um 02:51 Uhr)
     

  4. #4
    Psychodelics Psychodelics ist offline Mitglied Gold
    Registriert seit
    Dec 2009
    Ort
    Gießen(Hessen)
    Beiträge
    123
    Hey Wiz,

    das ist echt eigenartig, dass du das nicht öffnen kannst, bei mir funktioniert die einwandfrei.

    Soweit ich weiß kommt CS5 auch erst im Sommer raus...

    Ich hab's jetzt einfach mal noch zusätzlich als CS3 gespeichert.

    Hoffe, das funktioniert jetzt auch.

    Gruß, Adnan
    Angehängte Dateien Angehängte Dateien
    Geändert von Psychodelics (02.01.10 um 03:09 Uhr) Grund: Datei angehangen
    Martin287 und Wiz bedanken sich. 

    --------- Adnan -----------

  5. #5
    Wiz Wiz ist offline Mitglied
    Registriert seit
    Dec 2009
    Beiträge
    14
    Top!! Vielen, vielen Dank!

    Nur fürs Verständnis (ich lerne gerne solche Sachen ):

    Die Aktionen hab ich bis Zeile 8 verstanden... Ab dann seh ich nur Kuddlmuddl

    Code actionscript:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    
    for(var i=1;i<=anzahl_bilder;i++)
    {
        var t = this.attachMovie("bild"+i, "b"+i, i+1);
        t.angle = i*((Math.PI*2)/anzahl_bilder);
        t.onEnterFrame = mover;
    }
     
    function mover()
    {
        this._x = Math.cos(this.angle) * radiusX + centerX;
        this._y = Math.sin(this.angle) * radiusY + centerY;
        var s = this._y /(centerY+radiusY);
        this._xscale = this._yscale=s*100;
        this.angle += this._parent.speed;
        this.swapDepths(Math.round(this._xscale)+100);
    }
     
    this.onMouseMove = function()
    {
        speed = (this._xmouse-centerX)/15000;
    }

    Wobei den Scale-Part in Zeile 22 rall ich auch noch... aber sonst... was steht da eigentlich? oO
    Geändert von Maik (04.01.10 um 19:50 Uhr) Grund: Quellcode in Syntax-Highlighter gepackt
     

  6. #6
    Wiz Wiz ist offline Mitglied
    Registriert seit
    Dec 2009
    Beiträge
    14
    Ah, ich hab noch eine Frage... Das funktioniert ja alles einwandfrei - hab das Ganze auch ein wenig meinen Wünschen anpassen können.

    Allerdings stört mich noch eine Sache: Wenn man mit der Maus an der Seite aus der Bühne raus geht, dreht sich das weiterhin schnell umher. Kann man da was machen, dass wieder die Ausgangsgeschwindigkeit eingenommen wird?

    mfg
    Wiz
     

  7. #7
    Psychodelics Psychodelics ist offline Mitglied Gold
    Registriert seit
    Dec 2009
    Ort
    Gießen(Hessen)
    Beiträge
    123
    Also, zu deinem Problem habe ich früher immer notgedrungen einen unsichtbaren Button über der Bühne erstellt, der bei verlassen die Animation stoppt.

    Aber da gibt es mittlerweile auch bessere Varianten. Probier es doch mal damit aus.

    Verlassen der Bühne mit Mauszeiger

    Hoffe, das hilft dir weiter.

    Sehe gerade auch deinen Vorletzten Post, den kann ich dir später noch beantworten, das hier vorweg, damit du schon mal hast, was du suchst.

    Gruß, Adnan

    Wiz:
    Nur fürs Verständnis (ich lerne gerne solche Sachen ):
    Okay, um ehrlich zu sein, bin ich da ein wenig überfragt. Ich weiß, dass die Kreisformel x² + y² = z ist. Hierbei ist Wurzel z der Radius, also bei 9 nen Radius von 3.

    Dazu kann ich dir sagen, das cos und sinus einen Wert zwischen -1 und 1 liefern, was man dann gut als Faktor in einer beliebigen Rechnung verwenden kann, weil somit der Wert ansteigt, abfällt, ansteigt, abfällt... sofern sich nur ein Faktor fortlaufend in der Formel ändert und das ist sinus x oder cosinus x, ansonsten hast du n Kuddelmuddel und das Objekt fliegt dir davon.
    Hier ist es ja auch so: Es wird 250 und die halbe Bühnenbreit hinzu addiert, also 400. Der Wert 250 wird mit dem sin x multipliztiert, wodurch er alle Wert zwischen -250 und 250 annehmen kann, womit die ganze Rechnung mindestens 150 und maximal 650 zurück liefert, solange sich der Wert von x fortlaufend ändert.

    Das mit dem scale hattest du ja bereits verstanden; die Objekte werden größer und kleiner, um eine Tiefenwirkung zu erzeugen.

    In diesem Fall muss man jedoch x und y unterschiedlich berechnen, da die Höhe und die Breite der Fensters nicht identisch sind, zu mal die Höhe ja hier die Tiefe darstellen soll, um uns Räumlichkeit zu vermitteln, also wir quasi ein vorne und ein hinten haben.

    Mehr kann ich dir leider nicht dazu sagen, weil dafür müsste man sich dann auch intensiv mit der Sinus- und Cosinusfunktion beschäftigen der Kreisformel und wie das alles zusammenhängt.

    Hoffe, ich hab dich jetzt dadurch nicht noch mehr verwirrt.

    Gruß, Adnan
    Martin287 bedankt sich. 

    --------- Adnan -----------

  8. #8
    Wiz Wiz ist offline Mitglied
    Registriert seit
    Dec 2009
    Beiträge
    14
    Irgendwas scheine ich falsch zu machen...

    Code actionscript:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    
    // mouse on stage detection
    var predX:Number // prediction, also Vorhersage der X-Position
    var predY:Number
    var oldX:Number; // alte X-Position
    var oldY:Number;
    var offStage:Boolean; // Schalter, ob die Maus auf der Bühne ist oder nicht…
     
    onMouseMove = function()
    {
     
    predX = _root._xmouse &#8211; oldX;
    predY = _root._ymouse &#8211; oldY;
    oldX = _root._xmouse;
    oldY = _root._ymouse;
    }
     
    onEnterFrame = function()
    {
    if ((_root._xmouse + predX) >= Stage.width-10 || (_root._ymouse + predY) >= Stage.height-10 || _root._xmouse-predX

    Wenn ich das raus kopiere und einfach in eine neue Aktion einfüge, sagt der mir, dass sich in "predX = _root._xmouse – oldX;" und "predY = _root._ymouse – oldY;" Fehler befinden... Muss ich da was anderes für einsetzen? o_o?

    mfg
    Wiz
     

  9. #9
    Psychodelics Psychodelics ist offline Mitglied Gold
    Registriert seit
    Dec 2009
    Ort
    Gießen(Hessen)
    Beiträge
    123
    Hey Wiz,

    Das Minus in Zeile 11 und 12 ist irgendwie komisch.


    EDIT:

    Da waren noch n paar andere Zeichenfehler drinn, hab die mal alle korriegert

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    
    var anzahl_bilder:Number = 3;
     
     
    var radiusX:Number = 250;
    var radiusY:Number = 75;
    var centerX:Number = Stage.width / 2;
    var centerY:Number = Stage.height / 2;
    var speed:Number = 0.01;
     
    for(var i=1;i<=anzahl_bilder;i++)
    {
        var t = this.attachMovie("bild"+i,"b"+i,i+1);
        t.angle = i * ((Math.PI*2)/anzahl_bilder);
        t.onEnterFrame = mover;
    }
     
    function mover()
    {
        this._x = Math.cos(this.angle) * radiusX + centerX;
        this._y = Math.sin(this.angle) * radiusY + centerY;
        var s = this._y /(centerY+radiusY);
        this._xscale = this._yscale = s*100;
        this.angle += this._parent.speed;
        this.swapDepths(Math.round(this._xscale) + 100);
    }
     
    this.onMouseMove = function()
    {
        speed = (this._xmouse-centerX)/15000;
    }
     
    // mouse on stage detection
    var predX:Number // prediction, also Vorhersage der X-Position
    var predY:Number
    var oldX:Number; // alte X-Position
    var oldY:Number;
    var offStage:Boolean; // Schalter, ob die Maus auf der Bühne 
     
    onMouseMove = function()
    {
    if (offStage)
    {
    trace("Maus ist wieder auf der Stage!");
    }
     
    offStage = false;
     
    predX = _root._xmouse - oldX;
    predY = _root._ymouse - oldY;
    oldX = _root._xmouse;
    oldY = _root._ymouse;
    };
     
    onEnterFrame = function ()
    {
    if (_root._xmouse + predX >= Stage.width || _root._ymouse + predY >= Stage.height - 10 || _root._xmouse + predX <= 0 || _root._ymouse + predY <= 0)
    {
    trace("Maus hat die Stage verlassen!");
    predX = 0;
    predY = 0;
    offStage = true;
    }
    };

    Gruß, Adnan
    Geändert von Psychodelics (05.01.10 um 23:24 Uhr)
    Martin287 bedankt sich. 

    --------- Adnan -----------

  10. #10
    Avatar von SCIPIO-AEMILIANUS
    SCIPIO-AEMILIANUS SCIPIO-AEMILIANUS ist offline aka DonMahallem
    Registriert seit
    Mar 2007
    Ort
    Saxonburg(Pa)
    Beiträge
    375
    predX = _root._xmouse oldX;

    predY = _root._ymouse oldY;
    Also bei mir ist zwischen xmouse und oldX und das selbige eine Zeile drunter ein unbekanntes Zeichen, und kein Minus. Schreib die Zeile mal neu und probiers dann mal aus, anderen Fehler kann ich jetzt so nicht feststellen da.

    Edit: War einer schneller:P, diese Zeichen mein ich auch.
     
    MFG Scipio
    Ein Danke für hilfreiche Antworten ist gern gesehen.

  11. #11
    Psychodelics Psychodelics ist offline Mitglied Gold
    Registriert seit
    Dec 2009
    Ort
    Gießen(Hessen)
    Beiträge
    123
    Hey Wiz,

    anbei häng ich dir das fertige Programm an.

    Da habe ich die Animation auch gleich so angepasst, dass sie außerhalb des Fensters stoppt und sich innerhalb des Fensters in die gewünschte Richtung bewegt

    Hoffe, dass es jetzt genau so ist, wie du es haben willst.

    Gruß, Adnan
    Angehängte Dateien Angehängte Dateien
    Geändert von Psychodelics (05.01.10 um 23:44 Uhr)
    Martin287 und Wiz bedanken sich. 

    --------- Adnan -----------

  12. #12
    Wiz Wiz ist offline Mitglied
    Registriert seit
    Dec 2009
    Beiträge
    14
    Bisschen die Zahlen meinen Bedürfnissen angepasst und perfekt! Viiiieeelen, vielen Dank für die Mühe und Geduld!!
     

Ähnliche Themen

  1. Filmabschnitt bestimmt oft wiederholen
    Von munsel im Forum Flash Plattform
    Antworten: 1
    Letzter Beitrag: 18.04.09, 12:06
  2. Datenbankabfrage (bestimmt simpel)
    Von bertonex19 im Forum PHP
    Antworten: 20
    Letzter Beitrag: 04.12.08, 14:43
  3. Ihr wisst bestimmt... [Hintergrund]
    Von 9th Wonder im Forum Photoshop
    Antworten: 3
    Letzter Beitrag: 30.09.05, 21:44
  4. Objekt richtung Maus drehen
    Von KR@SSonkel im Forum Flash Plattform
    Antworten: 9
    Letzter Beitrag: 05.04.04, 17:56
  5. Maus Effekte! Text hinter der Maus
    Von Ultra_Flasher im Forum Flash Plattform
    Antworten: 2
    Letzter Beitrag: 06.09.01, 00:39

Stichworte