Frises

Téléchargement Fichier Zip # 46 Koctets 

    Vous avez besoin de trois choses pour définir des frises :
        . Le fichier bandes.js, bibliothèque javascript
        . Un sprite de frises 40 x 40 pixels, j'ai joint quelques exemplaires au fichier .zip.
        . Une fonction Init contenant entre autres la définition des frises.

    Insertion de la bibliothèque
<title>Bandes / Strips 3</title>
<SCRIPT LANGUAGE="JavaScript1.2" SRC=bandes.js></SCRIPT>
    Après le titre.

    Définition des frises
 
        Exemple de fichier Init :
function Init() {
 
 xorig = -20
 yorig = 0
 
 imgPath = "images/split0.jpg"
 LELayer= new DessineLayer(imgPath)
 
 LELayer.prog[0] = new Array(12, 1, 0, null, null)
 LELayer.prog[1] = new Array(6, 0, 1, null, null)
 LELayer.prog[2] = new Array(15, 1, 0, null, null)
 LELayer.prog[3] = new Array(6, 0, -1, null, null)
 LELayer.prog[4] = new Array(12, 1, 0, null, null)

 LELayer.ProgLayer()
}
    Ce qui donne :


Exemple 1
    Vous devez définir, l'image graphique de la frise et créer l'objet qui va dessiner les frises :
 imgPath = "images/split0.jpg"
 LELayer= new DessineLayer(imgPath)

    Dans cet exemple l'origine de la première frise est définie par :
 xorig = -20
 yorig = 0
    les frises ici se suivent, la suivante commençant où finit la précédente, (ce n'est pas obligatoire).
    Chaque élément de la frise, ici il y en a 4, est définit par une array comme :
 LELayer.prog[0] = new Array(12, 1, 0, null, null)
 LELayer.prog[0]  le nom (LELayer) doit correspondre à l'objet créé précédemment. prog[0]  le numéro de l'élément de l'array fixe l'ordre dans lequel les frises seront dessinées.

    Définition des segments de frises :
new Array(12, 1, 0, null, null)
new Array(Nombre d'images, direction horizontale, direction verticale, origine X, origine Y)
    Nombre d'images : nombre d'images dans ce segment de la frise, ici 12. Les éléments font 40 par 40 pixels mais ce recouvrent de 50 %, la longueur de ce segment sera donc de 20 x 12 = 240 pixels.
    Direction horizontale : elle peut prendre des valeurs comprisent entre 1 et -1
        1  la frise est dessinée de la gauche vers la droite.
        0  la frise n'est pas dessinée dans le sens horizontal
        -1 la frise est dessinée de la droite vers la gauche.
    Direction verticale : elle peut prendre des valeurs comprisent entre 1 et -1
        1  la frise est dessinée du haut en bas.
        0  la frise n'est pas dessinée dans le sens vertical
        -1 la frise est dessinée de bas en haut.
    Si les deux directions sont à zéro, cet élément de la frise n'est pas dessiné. Les valeurs peuvent être fractionnaire, (exemple 2).
    Origine X et Origine Y, permettent de changer l'origine du segment, si ces valeurs sont a null le segment commence où le précédent finissait. On peut ne définir qu'une de deux valeurs en laissant l'autre à null, dan ce cas la valeur laissée à null gardera la valeur de la fin du segment précédent, (voir exemple 3).

    Pente des frises :
 LELayer.prog[0] = new Array(12, 1, 0.5, -20, 0)
 LELayer.prog[1] = new Array(6, 1, 0.5, 100, 0)
 LELayer.prog[2] = new Array(6, 1, -0.5, 520, 60)
 LELayer.prog[3] = new Array(12, 1, -0.5, 520, 120)
  Ce qui donne :


Exemple 2
    Dans cet exemple la direction verticale est fractionnaire, (0.5), pour tous les segments.
    Pour les arrays 2 et 3, on voit que la direction verticale est négative, le segment remonte.

    Modification de l'origine des segments.
 LELayer.prog[0] = new Array(12, 1, 0, -20, 60)
 LELayer.prog[1] = new Array(6, 0, 1, null, 0)
 LELayer.prog[2] = new Array(6, 0, 1, 520, 0)
 LELayer.prog[3] = new Array(12, 1, 0, null, 60)
 Ce qui donne :


Exemple 3
    Le deuxième segment, (indice 1), démarre à la fin du premier segment pour la direction horizontale, (null), mais à la valeur 0 pour la direction verticale.
    Le troisième segment, (indice 2), nécessite la définition des deux origines.

    Lancement du dessin
        Par la commande de l'objet DessineLayer(),
                LELayer.ProgLayer()

    Lancement de la fonction Init()
        Par la commande onload
<body background="images/fond.jpg" onload="Init()">

    Contenu de la page.
        Après le tag body, insérer le contenu de la page comme ceci, (à l'intérieur de la frise de l'exemple 1 par exemple) :
<div id="Bonjour" class="clsBonjour" style="position: absolute; left: 300; top: 40; width: 440; height: 44; visibility:visible; z-index:14;">
  Bonjour
</div>
        et pour le reste de la page, en Dhtml ou en Html normal, enclos dans un layer tel que :
<div id="Nav" style="position: absolute; left: 0; top: 300; width: 800; height: 800; visibility:visible; z-index:14;">
      ....... Contenu .......
</div>

        Vous pouvez me joindre à :

Jean-Pierre Le Pichon


Téléchargement Fichier Zip # 46 Koctets 

Sommaire
Previous