Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 10-03-2005, 13:51   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: MC-Pomm
Beiträge: 87
mathe-script-nachhilfe

hallo erst mal,

ich habe ein problem mit folgendem script
PHP-Code:
 MovieClip.prototype.goTo = function(x,y){
    
this.onEnterFrame = function(){
            
this._x=Math.round(this._x+(this._x)/2);
            
this._y=Math.round(this._y+(this._y)/2);
    }
}
MovieClip.prototype.Zoom = function() {
    var 
maxZoom 200;
    var 
xMitte 100;
    var 
yMitte 70;
    if (
this._xscale<maxZoom) {
        
trace("werde größer");
        
this._xscale this._xscale+maxZoom;
        
trace("xscale"+this._xscale);
        
this._yscale this._yscale+maxZoom;
        
this.goTo(xMitte,yMitte);
    } else if (
this._xscale>maxZoom) {
        
trace("werde kleiner");
        
delete this.onEnterFrame;
        
this._xscale this._xscale-maxZoom;
        
this._yscale this._yscale-maxZoom;
        
this._x _root[this._name+"xpos"];
        
this._y _root[this._name+"ypos"];
    }
};
function 
setBtn(){
    for(
i=0;i!=_root.arrBilder.length;i++){
            
_root[_root.arrBilder[i]].onRelease = function() {
            
this.Zoom();
        };
        
_root[_root.arrBilder[i]+"xpos"] = _root[_root.arrBilder[i]]._x;
        
_root[_root.arrBilder[i]+"ypos"] = _root[_root.arrBilder[i]]._y;
    }
}
_root.arrBilder=["bild1","bild2","bild3","bild4"];
setBtn(); 
soweit funktioniert alles aber ich möchte jetzt den Teil ändern indem
der vergrößerte mc auf Originalgröße gebracht wird
PHP-Code:
else if (this._xscale>maxZoom) {
        
trace("werde kleiner");
        
delete this.onEnterFrame;
        
this._xscale this._xscale-maxZoom;
        
this._yscale this._yscale-maxZoom;
        
this._x _root[this._name+"xpos"];
        
this._y _root[this._name+"ypos"];
    }
}; 
was für eine Formel kann ich anstatt maxZoom einsetzen damit der mc
nicht so "hart" auf originalgröße zoomt

mfg Totty
totty38 ist offline   Mit Zitat antworten
Alt 10-03-2005, 13:52   #2 (permalink)
Neuer User
 
Registriert seit: Apr 2003
Beiträge: 644
Was meinst du mit "hart"?
Meinst du das er nicht von jetzt auf gleich sich ändern soll?
jonny-noob ist offline   Mit Zitat antworten
Alt 10-03-2005, 14:02   #3 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: MC-Pomm
Beiträge: 87
jo
ich habe es schon mit
this._xscale=Math.round(this._xscale+(x - this._xscale)/2);
dieser Änderung der funktion versucht aber dann komme ich nicht mehr auf den exakten wert von maxZoom

mfg totty
totty38 ist offline   Mit Zitat antworten
Alt 10-03-2005, 16:14   #4 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: MC-Pomm
Beiträge: 87
hallo an alle keiner hier der mir helfen kann.

mfg totty
totty38 ist offline   Mit Zitat antworten
Alt 10-03-2005, 17:03   #5 (permalink)
muh
 
Benutzerbild von Janoscharlipp
 
Registriert seit: Apr 2002
Ort: Freiburg / Stuttgart
Beiträge: 4.338
dafür bräuchtest du wieder ein onEnterFrame.
Du schreibst dir also am besten wieder eine Funktion zum Rauszoomen, in dieser wird der MC kleiner, und danach überprüfst du, ob das Auszoomen fertig ist. Wenn ja, löschst du das onEnterFrame.
__________________
»Carpe diem«, sagte der Graf. (Terry Pratchett: Ruhig Blut!)
Janoscharlipp ist offline   Mit Zitat antworten
Alt 10-03-2005, 17:43   #6 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: MC-Pomm
Beiträge: 87
habe ich schon versucht aber irgendwie bekomme ich das nicht hin
wie muß ich die ojnEnterFrame funktion in das vorhanden script einbinden
ohne das die vorhandenen funtionen in denen maxZoom verwendet wird
nicht alle "in der Luft" hängen???

nicht wundern ich bin scriptanfänger mfg totty
totty38 ist offline   Mit Zitat antworten
Alt 10-03-2005, 17:55   #7 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: MC-Pomm
Beiträge: 87
Hallo ,

ich habe mal meine fla als Anhang dabei vieleicht ist es dann für euch leichter
zu erkennen was ich mit meinen Fragen weiter oben gemeint habe.
Ich wollte jetzt zu den einzelnen mc in einen dyn. Textfeld den Namen
und eine Beschreibung einblenden das habe ih ja auch noch geschafft.

Jetzt wollte ich aber beide Textfelder beim zurückzoomen wieder verschwinden
lassen mit _root.name:_visible = false; aber das haut bei mir nicht hin

das ist bestimmt nur ein einfacher fehler aber für mich eben eingroßes Problem

mfg totty
Angehängte Dateien
Dateityp: zip heute_die_erste.zip (3,8 KB, 5x aufgerufen)
totty38 ist offline   Mit Zitat antworten
Alt 10-03-2005, 19:11   #8 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Da wo Du die Prototypes drinne hast fügst Du noch oben folgendes ein:
PHP-Code:
name "";
besch ""
Und auf Deine Buttons musst Du dann soetwas legen:
PHP-Code:
on (Press) {
    if( 
_root.name == "" )
    {
        
_root.name "koralle1";
        
_root.besch "beschvbnsfgns fgnsfgnsf  öbkd";
    }
    else
    {
        
_root.name ="";
        
_root.besch ="";
    }

Würde Dir aber empfehlen Deine Variable name in etwas anderes zu ändern, da diese schon "an Flash vergeben ist", sieht man daran das sie blau ist.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 10-03-2005, 19:49   #9 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: MC-Pomm
Beiträge: 87
hi rendner,

erst mal danke für deinen Tip ich habe aber ein wenig "probiert" und
die textfelder in eine mc umgewandelt und den kann ich jetzt ohne
priobleme ein und ausblenden(_visible).
Noch eine Frage : Wenn man einem dyn. Textfeld einen instanznamen zugewiesen hat kann man dann diesen nicht genau so wie bei einem movieclip
in as benutzen???
Laut dem Buch Flash MX und ActionScript kann man _visible auch bei einem
Textfeld benutzen.
Gibt es hier einen der sich damit auskennt???

mfg totty
totty38 ist offline   Mit Zitat antworten
Alt 10-03-2005, 20:10   #10 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Wieso immer unsichtbar machen, machs doch indem Du halt immer wenn es nix anzeigen soll das Du ihm einen leeren String zuweist.
PHP-Code:
meinTextfeld.text ""
Ja, und man kann auch ein Textfeld unsichtbar machen.
meinTextfeld wäre in diesem Beispiel der Instanzname, von Deinem dynamischen Textfeld.
PHP-Code:
meinTextfeld._visible false
__________________
ERROR: Signature is too large

Geändert von rendner[i] (10-03-2005 um 20:14 Uhr)
rendner[i] ist offline   Mit Zitat antworten
Alt 10-03-2005, 20:34   #11 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: MC-Pomm
Beiträge: 87
Ich habe deinen Vorschlag mal ausprobiert und es ist die elegantere Lösung
Danke erst mal für deine Hilfe.
Hast du noch einen Vorschlag für das zurückzoomen die Lösung wie in der anghängten fla ist zu abgehackt.
Frage dazu steht schon weiter oben .Ich habe jetzt die ganze Zeit schon versucht das ganze zu verbessern aber ich komme nicht weiter.
mfg totty

Geändert von totty38 (10-03-2005 um 20:40 Uhr)
totty38 ist offline   Mit Zitat antworten
Alt 11-03-2005, 10:32   #12 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Mit Deinem zommDings weis ich nicht was Du willst.
Kann das sein das Du den Button zwar vergrössern willst dies aber langsam, so das er anwächst???

smooth zoomen ???
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 11-03-2005, 17:43   #13 (permalink)
Neuer User
 
Registriert seit: Sep 2003
Ort: MC-Pomm
Beiträge: 87
Guten Abend,

ich brauche mal wieder etwas Hilfe bei meinem Script.
Es geht dabei immer noch um meine mcs .Ich habe es soweit erst mal zum laufen gebracht aber mit dem script bin ich nicht so zufrieden
PHP-Code:
titel "";
besch ""

movieclip.prototype.fading = function(blendblendfaktor) {
    
this.onEnterFrame = function() {
            
this._alpha this._alpha+(blend-this._alpha)/blendfaktor;
    }
}
MovieClip.prototype.skalieren =function(vGx,vGy,vGFaktor,xmitte,ymitte,vMax){
    
this.onEnterFrame = function(){
        
this._xscale=Math.round(this._xscale+(vGx-this._xscale)/vGFaktor);
        
this._yscale=Math.round(this._yscale+(vGy-this._yscale)/vGFaktor);
        
this._x=Math.round(this._x+(xmitte this._x)/vMax);
            
this._y=Math.round(this._y+(ymitte this._y)/vMax);
    }
}
MovieClip.prototype.Zoom = function() {
    var 
xMitte 300;
    var 
yMitte 250;
    var 
vGx200;
    
trace("x"+this._x);
     
trace("xscale"+this._xscale);
    
//den Wert 302 habe ich der Ausgabe trace("x"+this._x)übernommen 
    //Versuch Irrtum Methode denn Sie wissen nicht was sie tun ;)
    
if (this._x<>302)
    {
      
trace("xmitte"+xmitte);
      
trace("werde größer");
         
this.skalieren(1000,1000,3,300,250,4);
    for (var 
16x++)
          {
this._parent["bild"+x]._visible false;//alle inaktiven ausblenden
            
}   
         
this._visible true;
        
_root.hgbild.fading(0,5);//hintergrund ausblenden
        //den Wert 300 habe ich der Ausgabe trace("x"+this._x)übernommen 
        //Versuch Irrtum Methode denn Sie wissen nicht was sie tun ;)
    
} else if (this._x>300) {
       
trace("xscale"+this._xscale);
        
trace("werde kleiner");
                
delete this.onEnterFrame;
    
//hintergrund einblenden
    
_root.hgbild.fading(100,10);
            for (var 
16x++)
            {
this._parent["bild"+x]._visible true;
                    }   
        
this.skalieren(100,100,2,_root[this._name+"xpos"],_root[this._name+"ypos"],2);
    }
};
function 
setBtn(){
    for(
i=0;i!=_root.arrBilder.length;i++){
            
_root[_root.arrBilder[i]].onRelease = function() {
            
this.Zoom();
        };
           
_root[_root.arrBilder[i]+"xpos"] = _root[_root.arrBilder[i]]._x;
        
_root[_root.arrBilder[i]+"ypos"] = _root[_root.arrBilder[i]]._y;
    }
}
_root.arrBilder=["bild1","bild2","bild3","bild4"];
setBtn(); 
den wert 302 habe ich mit trace("x"+this._xscale)ausgelesen
Wie kann ich für den Zahlenwert eine sinnvolle Formel einsetzen
und dann habe ich noch das problem das mc dessen _x kleiner 300 ist
nicht mehr zoomen
hört sich einwenig kaotisch an aber wenn ihr euch die fla anseht ist es bestimmt leichter zu verstehen.
Wäre nett wenn sich jemand das mal ansehen könnte.
mfg totty
Angehängte Dateien
Dateityp: zip jenstest.zip (3,6 KB, 4x aufgerufen)
totty38 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:52 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele