Trouver la largeur de la partie visible d'un displayObject

Résolu
cs_ourso Messages postés 92 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 5 décembre 2010 - 31 janv. 2009 à 17:56
0001julien Messages postés 4 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 1 avril 2010 - 1 avril 2010 à 07:21
Bonjour à tous,

Une belle question me pose problème.
Je met au pont un système de redimenssionnement pour mon site. Je me base en principe sur la taille de mon container principal pour diriger le centrage et le redimensionnement.
Seulement j'ai un souci dans la partie galerie du site. Elle contient une bande de movie clips masqués pour un diaporama. Et la longueur de mon container se trouve affectée par la partie masquée.
J'essaie de trouver une solution avec les objet géometriques, mais en fait je cherche une methode soit pour qu'un clip me renvoie un Rectangle ne prenant en compte que sa partie visible. quleque chose comme un getVisibleBounds (on se dépèche mr Adobe !) soit de pouvoir sans changer le fonctionnement de base du slider tromper le container sur la partie masquée ... Est-ce qu'un clip.scrollRect a la place d'un clip.mask, par exemple, peut influer ?
Est-ce que quelqu'un pourrait me donner une idée de la piste la plus pertinente à suivre afin que je ne perde pas de temps à tout essayer.
Merci d'avance d'avoir pris le temps de me lire.
Steph

3 réponses

cs_ourso Messages postés 92 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 5 décembre 2010
31 janv. 2009 à 21:26
Je me reponds au cas ou cela pourrait rendre service à ceux qui pourrait se trouver dans le même cas que le mien.

La bonne piste de celles évoquées plus haut c'est scrollRect
qui croppe le displayObject visé ! donc ma bande de MovieClip qui faisait plus de 1500 pixels et decalait tout le clip
container qui au lieu de faire les 900 pixels attendus, se retrouvait à en faire 1900...

dans le contexte de ma classe (extends MovieClip)

J'ai donc remplacé cette ligne là
            //layer_images.mask = layer_masque;

Par celles-ci
            var rectMasque:Rectangle = layer_masque.getBounds(this);
            this.scrollRect = rectMasque;

Sans rien changer aux interpolations et cela fonctionne parfaitement !

Conclusion : à moins d'avoir une forme autre que parallelepipédique à masquer, scrollRect c'est mieux si on a une fonction de resizing qui opère !

Steph
3
cs_ourso Messages postés 92 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 5 décembre 2010
31 janv. 2009 à 21:32
sans oublier bien sur de desactiver le masque aux actions souris

layer_masque.mouseEnabled = false;

(ça marche mieux !)

Steph
3
0001julien Messages postés 4 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 1 avril 2010
1 avril 2010 à 07:21
Merci Steph.
Je sais pas où t'as trouvé ça, mais chapeau.

J'ai presque envie de chialer tellement c'est beau.

Merci Steph.
0