Discussion: Dimensionner une animation [Flash Pascal]

  1. #1
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Inscrit en
    décembre 2011
    Messages
    1 962
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : décembre 2011
    Messages : 1 962
    Points : 5 730
    Points
    5 730
    Billets dans le blog
    1

    Par défaut Dimensionner une animation

    Bonsoir !

    Soit une animation contenue dans un seul MovieClip. L'animation est de taille fixe, et elle a sa propre couleur de fond.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    program MovieClip01;
     
    {$FRAME_WIDTH 200}
    {$FRAME_HEIGHT 200}
    {$BACKGROUND $909090}
     
    uses
      Flash8;
     
    var
      anim: MovieClip;
     
    begin
      anim := MovieClip.Create(_root, 'mc', 0);
     
      anim.MoveTo(0,0);
      anim.LineTo(200,200);
     
      //anim._width := 200;
      //anim._height := 200;
     
      anim.LineStyle(3, $0000ff);
      anim.MoveTo(50,50);
      anim.LineTo(150,150);
     
      anim.opaqueBackground := $c0c0c0;
      stage.scaleMode := 'noScale';
    end.
    J'ai observé que les bords de l'animation s'ajustaient sur le dessin, de sorte que le carré n'est pas toujours parfait (quand le dessin n'atteint pas le bord de l'animation). J'espère que c'est clair.

    La solution que j'ai trouvée est de tracer une ligne invisible d'un coin du carré à l'autre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      anim.MoveTo(0,0);
      anim.LineTo(200,200);
    Quelle est la façon correcte de faire ? Pourquoi le code que j'ai mis en commentaire ne fonctionne-t-il pas ?
    Fichiers attachés Fichiers attachés
    L'Art est long et le Temps est court.

  2. #2
    Membre Expert
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    avril 2005
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : avril 2005
    Messages : 1 223
    Points : 1 313
    Points
    1 313

    Par défaut

    Bonsoir,
    c'est effectivement la forme que tu mets dans ton movieclip qui définit la dimension de celui-ci. Soit tu dessines un carré avec un beginfill spécifique ou ta diagonale sans préciser de linestyle et ton opaquebackground.
    En effet le _width et le _height n'ont pas d'effet pour fixer les dimensions.

    _width et _height sont apparemment en lecture seule et pas en écriture...

    exemple as2 :
    L'exemple de code suivant affiche la hauteur et la largeur d'un clip dans le panneau de sortie :
    Code c : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
    var image_mcl:MovieClipLoader = new MovieClipLoader();
    var mclListener:Object = new Object();
    mclListener.onLoadInit = function(target_mc:MovieClip) {
    trace(target_mc._name+" = "+target_mc._width+" X "+target_mc._height+"
    pixels");
    };
    image_mcl.addListener(mclListener);
    image_mcl.loadClip("example.jpg", image_mc);

  3. #3
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Inscrit en
    décembre 2011
    Messages
    1 962
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : décembre 2011
    Messages : 1 962
    Points : 5 730
    Points
    5 730
    Billets dans le blog
    1

    Par défaut

    Merci pour la réponse, Anthony. Donc je garde ma diagonale.
    L'Art est long et le Temps est court.

+ Répondre à la discussion
Cette discussion est résolue.

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo