TOP
tetris Programmez un Tetris en Java
360 pages PDF pour apprendre à votre rythme.
Développez des jeux vidéo en Java.
www.jdevmaker.com
Gimp 2.4
Documentation
Tutoriels
Ressources
Divers

Dernière mise à jour le 07 avr 2008
consultée 3032 fois
Apprendre  ›  Écrire un script-fu  ›  cond

 

Scheme : cond

Ce document est sous un contrat Creative Commons.

 

Pour effectuer des choix multiples, nous utilisons la forme cond :

(cond (condition1 expressions …)
         (condition2 expressions …))
         ...

L'évaluation commence par la première clause jusqu'à la dernière. Les expressions sont évaluées si les conditions sont vraies. Si une condition est le mot clef 'else elle est considérée comme vraie.

Par ce moyen, nous pouvons par exemple, attribuer une valeur à une variable suivant la valeur d'une autre :

Admettons que test = à une valeur :

(set! variable
   (cond
       ((eqv? test 0) valeur1) ;; si test=0 alors variable=valeur1
       ((eqv? test 1) valeur2) ;; si test=1 alors variable=valeur2
       ((eqv? test 2) valeur3) ;; si test=2 alors variable=valeur3
        ...
       ('else valeur4) ;; dans les autres cas variable=valeur4
   )
)

Le script ci-dessous affiche le contenu de la variable variable dans la console d'erreur. Changez la valeur de la variable test et relancez le script.

(define (script-fu-exemple img drw)
   (set! variable "coucou")
   (set! test 0) ;; attribuez une valeur a la variable test
   (set! variable
       (cond
           ((eqv? test 0) "zero") ;; test=0 alors variable="zero"
           ((eqv? test 1) "un") ;; test=1 alors variable="un"
           ('else "test est different de 0 ou 1") ;; test différent de 0 et 1
       )
   )
   (gimp-message variable)
)

(script-fu-register "script-fu-exemple"
  "<Image>/Script-Fu/exemple"
  ""
  ""
  ""
  ""
  ""
  SF-IMAGE "Image" 0
  SF-DRAWABLE "Drawable" 0
)

Note : en aucun cas variable ne sera égale à "coucou".

 

Valide XHTML 1.0 Strict
Valide CSS 2.0
Valide Accessibilité
Creative Commons License

Tous les documents et ressources sont sous un contrat Creative Commons.