Retour

Lundi 20/ Mardi 21 Octobre 2014 Rennes

Pol Guezennec à l’invitation de Alain Bourges

LUNDI
Outil, code source, API, coordonnées spatiales, couleur, formats de fichiers, variables, utilisation, boucle, double boucle, incrémentation, random, instruction conditionnelle.
  1. Processing: auteurs, finalités, domaine d’application. Les moyens de la programmation à la portée des artistes et designers. La compréhension de la syntaxe de processing rend possible l’étude et la compréhension ultérieure d’autres langages de programmation: beaucoup ont en commun les mêmes structures de base.
  2. Domaine d’utilisation: « generative design », programme autonomes, applications, interfaces diverses pour dispositifs artistiques, intégrant toutes données (texte, images pixels, dessins vectoriels, importés ou créés dans l’application, le son, la video); dispositifs communiquant avec d’autres langages. L’initiation à Processing est une initiation partielle à Arduino (vers dispositifs de captation/réponses par capteurs électroniques divers).
  3. Interface: logiciel sans boutons, formulation en code (connaître, comprendre…) syntaxe, camelCase. API: toutes les variables et fonctions de l’application. Comment l’utiliser.
    1. Dessiner avec les formes vectorielles de base
    2. taille de la fenêtre du programme
    3. couleur : formuler en rvb, couleurs du web wikipedia
    4. Formuler en rgba.
    5. fill & stroke pour les formes vectorielles
    6. coordonnées x-y
    7. Mise en oeuvre
    8. Intégration images matricielles: jpg, gif, png; vectorielles: .svg.
    9. Déclarer les variables d’images, loadImage et affichage d’image (boucles avec images…)
    10. Mini module sur les formats d’images: .jpg, .gif, .png, taille physique de l’image: sur quel matériau travaillons-nous.
  4. Qu’est-ce qu’une variable?
    Une variable locale dans une boucle: faire parcourir ou créer par le programme une liste de valeurs, de positions, de fichiers…
    Une boucle pour une ligne de formes (incrémentation)
    Une double boucle imbriquée pour une grille de motifs
    [fichiers LargePagePdf, SaveTiff, AfficheImage]
  5. Faire bouger des éléments.
    Structure dynamique. void setup(), void draw()
    Vibreur avec fonction random pour les formes
    Déplacement de forme par incrémentation d’une variable de position.
    -> instruction conditionnelle (if) et comportement de la forme.
    [fichier « bougeotteEtTremblotte »]
MARDI
Variables, incrémentation, décompte ordinateur depuis 0, tableau[] (Array), boucles, liaisons, framCount, frameRate, Modulo...
  1. Révision de « bougeotteEtTremblotte », variables, incrémentation.
  2. Utiliser draw comme moteur. Afficher les variables pour les comprendre.
  3. Préparation d’une série d’images pour un diaporama: format, noms de fichiers.
  4. Un tableau[] pour stocker les références d’images.
  5. Une boucle parcourt le tableau pour load
  6. Une boucle parcourt le tableau pour affichage physique (le dossier data doit être à la bonne place).
  7. Contrôle « à la main » de la bonne liaison avec le dossier data.
  8. Réfléchir à une variable pour faire défiler le diaporama.
  9. Démonstration de création d’une variable pour faire défiler le diaporama.
  10. mise en oeuvre
  11. La variable « maison » frameCount, à diviser pour contrôler la vitesse et calmer le jeu.
  12. Introduction du modulo de frameCount pour prendre en charge la vitesse du diaporama.
  13. Réfléchir à une nouvelle variable pour régler manuellement la vitesse (mouseX…) [fichier « tableauImages »]

Présentation de l’instruction « saveFrame » pour sauvegarder des images fixes du fonctionnement pour faire une video ( Utiliser ensuite l'outil Tools/movieMaker de Processing, que j'ai oublié de présenter. Il est simple, vous le comprendrez).


  1. Programmation orientée objet:
  2. Une classe pour définir l’objet… avec des variables et du random.
  3. Super modèle pour création/prise en charge de formes.
  4. [Dossier orientéObjet/« oo1rectanglesBougent », un fichier long et répétitif pour tout écrire et tout voir
  5. « oo1rectanglesBougentAvecBoucles » compacte la formulation et le code à l'aide de boucles
  6. Test d’augmentation de la charge à partir des 19 occurrences d’origine; 190 ok,
  7. 1 900 ok, 19 000 occurrences: l’ordinateur peine.
  8. Affichage de la variable frameRate pour se rendre compte de l’effort de la machine et de l’incidence sur la vitesse de rendu des frames passée de 60 à 6/seconde.
  9. Comment augmenter l’allocation mémoire de l’application, bonnes pratiques.

  1. Rapide démonstration video avec les fichiers d’exemples disponibles dans Processing
  2. Distribution du pack avec les fichiers de démonstration.Fin du workshop.
Retour