| |||||||
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: Aug 2006
Beiträge: 491
|
Liebe Freunde, zurzeit kann ich leider nur an der linken oberen Ecke eines MovieClips drehen. Ich möchte aber den Mittelpunkt (oder einen eigenen) verwenden. Mein Script (der nur an der linken oberen Ecke drehen kann) sieht so aus: Code: function rotateContent(mc, degree, duration){
new Tween(mc, "_rotation", Elastic.easeOut, 0, degree, duration);
trace("Rotating...");
} By the way - Das Vergrößerungsscript vergrößert nicht "vom Mittelpunkt" aus sondern von der linken oberen Ecke, was mich sehr stört. Code: function vergroesern(mc,width,height,speed)
{
mc.tween("_width",width,speed,"easeInOutExpo");
mc.tween("_height",height,speed,"easeInOutExpo");
}; Ich danke euch! MfG Firemice |
| | |
| | #2 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.326
| http://www.seibsprogrammladen.de/fra...ispiele/flash6 -> bewegen ... mc um beliebigen Punkt drehen vergrössern geht immer vom nullpunkt aus. offensichtlich liegt der nullpunkt von deinem mc nicht in der mite. also entweder die grafik im mc verschieben oder entsprechend _x und _y vom mc rücken.
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (11-03-2007 um 15:03 Uhr) |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Aug 2006
Beiträge: 491
| Code: fRotAdd = function (mitte, addWinkel) { var a = {x:mitte.x, y:mitte.y};this.globalToLocal(a);this._rotation += addWinkel;this.localToGlobal(a);this._x += mitte.x-a.x;this._y += mitte.y-a.y;};
//
fMitte = function (_ary) { var xmax = ymax=Number.MIN_VALUE;var xmin = ymin=Number.MAX_VALUE;for (var i in _ary) {xmax = Math.max(_ary[i]._x, xmax);xmin = Math.min(_ary[i]._x, xmin);ymax = Math.max(_ary[i]._y, ymax);ymin = Math.min(_ary[i]._y, ymin);}return {x:(xmax+xmin)/2, y:(ymax+ymin)/2};};
//
var _ary = [a_mc, b_mc, c_mc, d_mc];
mitte = fMitte(_ary);
_root.onEnterFrame = function() {
for (var i in _ary) {
fRotAdd.call(_ary[i], mitte, 10);
}
}; Wozu ein Array? Wie mache ich daraus eine simple Funktion (mc, winkel, dauer) ? Danke Euch! MfG Firemice |
| | |
| | #4 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.326
|
array: in dem beispiel werden 4 _mc's gedreht. fix und fettig gibts nur in der frittenbude - hier muss man selber denken ;-) fRotAdd.call(dein_mc, {x:deine_mitte_x, y:deine_mitte_y}, drehwinkel); eine dauer kannst du selbst ergänzen. einfach eine zahl herunter zählen.
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |