Forums Développement Multimédia

Aller au contenu

(the stage).bgColor dans une MIAW

Director

3 réponses à ce sujet

#1 LingoSag

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 78 messages

Posté 15 December 2009 - 04:27 AM

Bonjour à tous,

j'ai remarquer que l'utilisation de

(the stage).bgColor

afin de modifier la couleur de la scene (en RGB),
ne fonctionne pas, lorsqu'utiliser dans une animation lancer en MIAW (Movies in a Window).

Il y bien the stageColor qui fonctionne
mais on est limité à l'index d'une palette de 256 couleurs.

J'ai tenter:

tell window

à partir de l'animation qui lance la MIAW
mais ça ne fonctionne pas plus.

Ma question est donc:

Comment modifier dynamiquement la couleur de la scène en RGB
lorsque l'animation est destinée à être lancer en MIAW.

Je travaille avec Director 8.5

Merci!

PS: Prière SVP de me proposer une solution style:
"Utilise une forme en arrière-plan et donne lui la couleur que tu veut"

Ça je sais... C'est ce que je ne sais pas qui m'intéresse...

#2 sebastien.portebois

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 3876 messages

Posté 15 December 2009 - 10:26 AM

Salut

Le moyen le plus simple de modifier l'arrière plan d'une miaw (enfin d'une fenetre en général) est de faire

Lingo


(the activeWindow).bgColor = color(rr,gg,bb)
avec rr, gg, bb les valeurs red grren blue entre 0 et 255. (Bien entendu je suppose que ce code est executé dans le contexte de la fenetre pour que the activeWindow soit défini, sinon il faudra utiliser window("laFenetre").bgColor = color(r,g,b)

Ci joint un exemple pour faire fonctionner ca avec une miaw et quelques boutons de test. (en mx2004, de mémoire ca pourra s'ouvrir sous 8.5, la syntaxe d'ouverture de la miaw devra peut etre être un peu ajustée... désolé mais je n'ai plus 8.5 sur ce pc).


Pour en revenir au problème initial, j'opterai néanmoins pour l'utilisation d'un bmp de 2x2 pixel étendu à toute la fenetre dans lequel je dessine la couleur d'arrière plan souhaité. Pourquoi? J'avais eu des cas sur des écrans 16 bits où les approximations de couleurs non affichables n'étaient pas les même entre les éléments de base (fond de fenetre, shape simple de Director) et des swf importés. En passant par du dessin dans des images on retrouvait les meme approximations que flash, et donc plus d'erreur visuelle.
Les configurations avec les écrans en 16 bits ont tendance à disparaitre aussi ce n'est sans doute plus nécessaire, mais j'en profite pour le mentionner car j'avais un peu tourné à l'époque pour trouver l'origine du soucis... si ca peut etre utile pour d'autres qui rencontreront le même problème.

Bonne journée,
Séb

#3 LingoSag

    Ceinture Bleue

  • Members
  • PipPipPipPipPip
  • 78 messages

Posté 15 December 2009 - 15:57 PM

Bravo sebastien

Fonctionne très bien

je m'en veut de ne pas y avoir penser et tester.

Pour ma part je préfère

window("animation").bgColor

à

(the activeWindow).bgColor

Ça me semble plus prudent pour le même résultat et le même
prix (Une ligne de code)

De plus, j'ai tester:

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

on prepareMovie

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

gcBgColor = value(baReadIni("Config","cBgColor","rgb(0,0,0)",the moviePath & "anx.ini"))

if the runMode = "Projector" then

window("configuration").bgColor = gcBgColor

end if

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

end prepareMovie

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

La question était de savoir si on remarquerait

le passage de la couleur de la scene (lors de l'enregistrement du fichier)

et celle du fichier .ini à l'ouverture de la fenêtre.

Et bien non et ça fait mon affaire...

Merci Beaucoup et vive les forums

PS: baReadIni (Buddy API Xtra)

#4 sebastien.portebois

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 3876 messages

Posté 15 December 2009 - 16:06 PM

Salut

Citation

Pour ma part je préfère

window("animation").bgColor

à

(the activeWindow).bgColor

C'est une simple affaire de conception. Pour ma part j'évite comme la peste l'ajout d'une contrainte (ici le nom en dur de la fenetre) dans mon code. Si pour une raison d'évolution quelqu'elle soit du projet la gestion des miaw change, alors il faudra rechercher ce nom partout et le modifier.
Après peu importe, ce n'est qu'une question d'organisation .... chacun peut choisir la sienne et avoir ses (bonnes) raisons, tant que ca permet de réaliser efficacement le projet tant mieux ;) (le tout étant d'avoir une méthode et d'être organisé.... mais on arrive dans un autre débat ;D )


Bonne journée,
Séb



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP