Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Problemi con Rgb

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2000
    Messaggi
    230

    Problemi con Rgb

    Ciao,

    non riesco a capire perchè questa cosa non funziona, mi spiego...

    ad un bottone associo questo comando:
    -------------------------------------------------------------
    incognita_colore = new Color(_level0.movex.sfondettino);
    incognita_colore.setRGB(0x689966);
    -------------------------------------------------------------

    e flash cambia il colore dell'istanza (_level0.movex.sfondettino)


    ma se invece voglio far mutare il valore con una variabile, pur ritornando a schermo lo stesso incognita_colore.setRGB(0x689966);

    non mi funziona! qualcuna sa perchè? Grazie

    ecco come ho scritto l'espressione:

    "incognita_colore.setRGB(0x" +"689966)";

    è chiaro che il valore 6899666 sarà il valore di una variabile.

  2. #2

    soluzione parziale

    ciao

    anch'io come te mi diletto in esperimenti in AS

    la soluzione parziale che ho trovato al tuo problema è questa:

    //il codice è posizionato sulla timeline principale
    //l'oggetto bottone si chiama btn
    btn.onRelease=function()
    {
    num=random(999999);
    colore= new Color(palla);
    colore.setRGB("0x"+num);
    }

    oppure se vuoi scrivere il codice direttamente sul tasto
    on(release)
    {
    num=random(999999);
    colore= new Color(palla);
    colore.setRGB("0x"+num);
    }
    la spiegazione:
    al rilascio del tassto sinistro del mouse viene estratto un numero a caso tra 0 e 999999 e viene re3gistrato nella variabile num.
    la proprietà dell'oggetto "colore" viene composta dalle lettere "0x" e dal valore di num

    ti dicevo che la soluzione è parziale perchè stiamo parlando di colore espresso in esadecimale....estraendo un numero a caso con questi valori escludiamo la possibilità di avere i colori con delle lettere nel codice , per esempio AAFFED

    continuamo a cercare lo stesso una soluzione più valida

    ciao

  3. #3

    Re: Problemi con Rgb

    Originariamente inviato da gerrix
    ecco come ho scritto l'espressione:

    "incognita_colore.setRGB(0x" +"689966)";
    casomai

    incognita_colore.setRGB("0x" + nomeVariabile);
    "...non è detto che sia tardi se non guardi che ora è..."

  4. #4

    altra soluzione

    cercando un po' nella guida di flash MX
    ho trovato anche questa soluzione: usare il metodo setTransform.

    ho fatto così:

    btn.onRelease=function()
    {
    RossoA=random(100);
    RossoB=random(255);
    VerdeA=random(100);
    VerdeB=random(255);
    BluA=random(100);
    BluB=random(255);

    colore = new Color(palla);
    //al posto di palla devi inserire il nome del tuo mc
    trasformatore = new Object();
    //il valore ra è la trasparenza della componente rosso
    trasformatore.ra=RossoA;
    //il valore rb è la componente rosso del colore
    trasformatore.rb=RossoB;
    // g sta per green , a trasparenza, b componente
    trasformatore.ga=VerdeA;
    trasformatore.gb=VerdeB;
    //b per blu, a trasparenza, b componente
    trasformatore.ba=BluA;
    trasformatore.bb=BluB;
    colore.setTransform(trasformatore);
    }


    in realtà i valori di trasparenza possono variare da -100 a +100, e valori del colore da -255 a +255. con questo codice si considerano solo i valori positivi

    ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2000
    Messaggi
    230

    Re: Re: Problemi con Rgb

    Originariamente inviato da Raffa62
    casomai

    incognita_colore.setRGB("0x" + nomeVariabile);

    Sorry ,

    Ma nnon funge neanche così

    grazie lo stesso Raffa 62

    Gerrix

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2000
    Messaggi
    230

    Re: altra soluzione



    Ok grazie Isa ora sperimento un po poi ti faccio sapere.

    Gerrix


    Originariamente inviato da isabella.girola
    cercando un po' nella guida di flash MX
    ho trovato anche questa soluzione: usare il metodo setTransform.

    ho fatto così:

    btn.onRelease=function()
    {
    RossoA=random(100);
    RossoB=random(255);
    VerdeA=random(100);
    VerdeB=random(255);
    BluA=random(100);
    BluB=random(255);

    colore = new Color(palla);
    //al posto di palla devi inserire il nome del tuo mc
    trasformatore = new Object();
    //il valore ra è la trasparenza della componente rosso
    trasformatore.ra=RossoA;
    //il valore rb è la componente rosso del colore
    trasformatore.rb=RossoB;
    // g sta per green , a trasparenza, b componente
    trasformatore.ga=VerdeA;
    trasformatore.gb=VerdeB;
    //b per blu, a trasparenza, b componente
    trasformatore.ba=BluA;
    trasformatore.bb=BluB;
    colore.setTransform(trasformatore);
    }


    in realtà i valori di trasparenza possono variare da -100 a +100, e valori del colore da -255 a +255. con questo codice si considerano solo i valori positivi

    ciao

  7. #7
    Utente di HTML.it L'avatar di Stormy
    Registrato dal
    Dec 2000
    Messaggi
    2,701
    su layer51 ho trovato questo prototipo di Madokan, non l'ho provato ma visto che stai sperimentando prova pure questo

    MovieClip.prototype.zufallsFarbe = function (rW,gW,bW,rK,gK,bK)
    {
    r = Math.floor(Math.random()*rW);
    g = Math.floor(Math.random()*gW);
    b = Math.floor(Math.random()*bW);
    obj = new Color(this);
    obj.setRGB(((r << rK) | (g << gK)) | (b << bK));
    }

    poi si usa così

    incognita_colore = _level0.movex.sfondettino;
    incognita_colore.zufallsFarbe(255,255,255,16,8,1);

    l'oggetto colore è creato direttamente dentro il prototipo quindi devi associarlo ad un movie clip, volendo potresti anche scrivere così

    _level0.movex.sfondettino.zufallsFarbe(255,255,255 ,16,8,1);

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.