OVH Cloud OVH Cloud

Ajouter une forme vectorielle en Lingo

2 réponses
Avatar
Yoniga
Bonjour,

J'essaye d?sesp?r?ment de cr?er des formes vectorielles en Lingo. J'ai bien
r?ussi ? le faire en utilisant (the frame).image, mais j'aimerai pouvoir
affecter des ?v?nements (on mouse over) sur mes formes vectorielles. J'essaye
donc de cr?er des acteurs avec _movie.newMember(#shape). Mais rien ne se passe,
et l'aide de Director ne m'aide pas du tout ? comprendre ce que je devrais
faire pour qu'au moins la forme s'affiche ? la position que je d?sire.

Merci pour votre aide les copains.

2 réponses

Avatar
Bubarnet
Yoniga wrote:
Bonjour,

J'essaye d?sesp?r?ment de cr?er des formes vectorielles en Lingo.
J'ai bien r?ussi ? le faire en utilisant (the frame).image, mais
j'aimerai pouvoir affecter des ?v?nements (on mouse over) sur mes
formes vectorielles. J'essaye donc de cr?er des acteurs avec
_movie.newMember(#shape). Mais rien ne se passe, et l'aide de
Director ne m'aide pas du tout ? comprendre ce que je devrais faire
pour qu'au moins la forme s'affiche ? la position que je d?sire.


C'est normal que rien ne s'affiche car tu crèes un membre. Un membre est un
élément d'une librairie. Il faut positionner ce membre sur le scénario pour
qu'il "devienne" un sprite. Seuls les sprites sont visibles et interactifs
Une fois le membre associé à un sprite, tu peux ajouter des scripts
(comportement) _au sprite_, pas au membre.
Tu peux faire tout cela manuellement dans director, ou par programmation
--Création d'un membre
theMember=_movie.newMember(#shape)
--association du membre et d'un sprite (X est la piste du scénario)
sprite(X).member=theMember
--positionnememnt du sprite à l'écran (x,y : coordonnées en pixels)
sprite(X).loc=point(x,y)
--ajout d'un comportement au sprite
sprite(X).scriptinstancelist.add(script("nom_du_script").new())
--le comportement n'est pas obligé de posséder une fonction new()
--il est quand même possible de le faire, cette fonction étant appelée lors
de l'ajout du script au sprite
--cela permet d'exécuter du code à la création
--dans ce cas, il est impératif que la fonction new() se termine par
--return me

Un détail malgré tout
newMember(#shape) ne crèe pas vraiment un acteur vectoriel, mais un acteur
vectoriel de type outils. Ce type d'acteur est très limité. Tellement limité
que je ne les ai jamais utilisé comme cela.
Si tu désires un véritable acteur vectoriel que tu puisses controler à 100%,
utilise plutôt
newMember(#vectorshape)
Là, tu pourras controler les points du vecteur, les
modifier/supprimer/ajouter/...


--
Bubar
Freelance Multimédia - internet
Création de logiciels multimédia et sites web
http://www.wapitistudio.com
Avatar
Yoniga
Merci beaucoup pour cette r?ponse, j'essaye ?a tout de suite !