Vos actions : Créer un document, voir la page générale.

Cultures numériques

Cours de Bachelor 1

Atelier 1

2 octobre

Visite de quelques projets de notations, performances installation à la croisée entre corps et dessin programmatique.

→ Raphaël Bastide
Installations versionnées https://raphaelbastide.com/workshops/esad2014/
Branch https://raphaelbastide.com/branch/
→ Anne Teresa De Keersmaeker / Rosas & Ictus, Drumming, http://www.rosas.be/fr/productions/355-drumming

Introduction aux langages LOGO, HPGL et Metapost autour d’un même dessin de l’une capitale géométrique

LOGO
— Seymour Papert, « Talking Turtle », documentaire vidéo → https://youtu.be/bOf4EMN6-XA?list=PLlUr-fJyB7_jbEOS0sgQ9HutBN3LUJLa7
Logo est né en 1966. C’est une méthode pédagogique / une philosophie de l’éducation et un langage de programmation qui la met en pratique.
Le langage est développé comme une initiation à la la programmation et aux logiques numériques. [https://fr.wikipedia.org/wiki/Logo_(langage)] Il passe par le dessin pour expliquer les concept d’unité, d’échelle et de récursivité. Ce qui nous intéresse en particulier avec Logo c’est la “Tortue” ; sorte de robot traçant piloté par de simples commandes comme Pen Up, Pen Down, Forward & Rotate.
Seymour Papert est un mathématicien, informaticien et éducateur au Massachusetts Institute of Technology (MIT). Il est l’un des pionniers de l’intelligence artificielle. C’est lui qui a mis au point le langage de programmation Logo.
Localiser Seymour dans la ligne du temps des langages de programmation → http://www.computerhistory.org/timeline/software-languages/#169ebbe2ad45559efbc6eb35720bbd23
Commandes LOGO http://derrel.net/ep/logo/logo_com.htm
Ici un interprète de Logo en ligne http://www.calormen.com/jslogo/

Quelques commande logo
PU Short for "pen up," it lifts the "pen" from the screen so that moving the turtle doesn’t draw a line.
PD Puts the pen down so that moving the turtle draws a line
SetPenSize [n n]
Sets the width of the pen to n pixels. Note that it is necessary to put in two numbers.
Example : SetPenSize [5 5]
Penerase
Sets the pen to down and sets the mode to erase. When the pen is moved, it will erase whatever is under it. An abbreviation is pe.
Pennormal
Sets the pen back to normal mode and cancels erase mode.
FD x
Move forward x pixels
Example : FD 100
BK x
Move Backward x pixels
Example : BK 100
LT x
Rotate the turtle x degrees left
Example : LT 45
RT x
Rotate the turtle x degrees right.
Example : RT 45
ARC a r
Draw an arc with an included angle of a degrees and radius of r. However, the turtle remains at the center of the arc.
Example : ARC 45 100
ARC2 a r
Draw an arc with an included angle of a degrees and radius of r. However, the turtle ends up at the end of the arc.
Example : ARC 45 100

tentative de dessin d’un R avec LOGO
PD % Pen down
FD 1000 % Forward 1000 units
RT 90 % Rotate right (clockwise) 90 degrees
FD 500 % Forward 500 units
ARC2 180 250 % Draw an arc with a radius of 250 units, for 180 degrees
FD 500 % Forward 500 units
PU % Pen up
BK 500 % Back 500 units
LT 153.44 % Rotate left (anti-clockwise) 153.44 degrees
FD 559 % Forward 559 units

HPGL (Hewlett Packard Graphic Language)
protocole d’impression informatique développé par HP, qui est devenu un standard de l’industrie
Les machines primitives que sont les plotters permettent d’incarner les mouvements de lecture du code qu’ils reçoivent. Ils sont d’électrisantes interfaces d’apprentissages. Leurs trajectoires rendent lisible une séries de notions de géométrie et mettent en évidence les différences avec la souplesse du corps organique.
Manuel HPGL http://music.columbia.edu/cmc/chiplotle/manual/chapters/tutorial/shapes.html/

Quelques commandes hpgl
IN →initialize, start a plotting job
IP → set the initial point (origin), in this case the default 0,0
SC0,40,0,40 → allows scaling in millimeters since 1 mm = 40 plotter units. Each user-unit is 1 millimeter, in both X and Y directions
SP1 → select pen 1
PU0,0 → lift Pen Up and move to starting point for next action
PD100,0,100,100,0,100,0,0 →put Pen Down and move to the following locations (draw a box around the page)
PU50,50 → Pen Up and move to X,Y coordinates 50,50 (in this case mm, after the SC command)
CI25 → draw a circle with radius 25 (mm)
SS → select the standard font
DT*,1 →set the text delimiter to the asterisk, and do not print them (the 1, meaning "true")
PU20,80 → lift the pen and move to 20,80
LBHello World* → draw a label
LTlinetype,length → set line type and its repetition length
CSxx → set character set (e.g. 33 is German)
DIx,y → set direction of text given as the catheti
SIww,hh →set character width and height

Ici le dessin de notre R
SP1 ; % Select pen 1 : sélection de stylo numéro 1
PR ; % Pen relative : le système de coordonnées est définit comme relatif
PD0,1000,500,0 ; % Pen down : le style vient de poser sur la surface de dessin et effectue un déplacement de 0 unité sur l’axe des x, 1000 unités en y, puis déplacement de 500 uités en x et de 0 en y
AR0,-250,-180 ; % Arc Relative : dessin d’un arc dont le centre est placé à 0 unité de distance en x et 250 unités en y
PR-500,0 ; % Pen relative : déplacement du stylo de 500 unités en x, 0 en y
PU500,0 ; % Pen up : le stylo remonte et se déplace (sans toucher la surface de dessin) de 500 unités en x et 0 unité en y
PD250,-500 ; % Pen Down : le stylo se pose à nouveau sur la surface et se déplace de 250 unités sur l’axe x, de -500 sur l’axe des y
PU ; % Pen up : le stylo repasse en position haute

Metapost
http://tex.loria.fr/prod-graph/zoonekynd/metapost/metapost.html
Ici une version de notre R avec Metapost :

prologues := 3 ; % Nous pointons le format de sortie, ici avec l’option 3 pour du postscript
beginfig(1) % début du dessin, sachant qu’un fichier Metapost peut contenir plusieurs figures = dessins
draw (0,0)—(0,1000)—(500,1000)..(750,750)..(500,500)—(0,500) ; % description des coordonnées du premier tracé
draw (500,500)—(750,0) ; % dessin du jambage du R
endfig ; % fin de la figure
end %fin du document

Autres langages et projets rendant jouant sur l’articulation code/dessin/langage

svg
Hektor → http://etat.augmenter-partager.ensad.fr/content/01-home/03-jurg_lehni/10-script.png
INkML→ https://www.w3.org/TR/InkML/https://www.w3.org/TR/InkML/hello.png
GML : Graffiti Markup Language → http://www.graffitimarkuplanguage.com/g-m-l-spec/ )
css font https://yusugomori.com/projects/css-sans/fonts

— François Chastanet, « Dishu : Ground Calligraphy in China » → http://vimeo.com/album/1877116
Ici le corps trouve une extension dans l’outil pinceaux calligraphique custom. Pour notre projet le corps devient l’outil. L’épaisseur de sa “plume” est dépendante des éléments du corps qui les dessine.

Ressources

Donald Knuth, « The Concept of a Meta-Font », in Visible Language, issue 16.1, January 1982 ; traduction « Le concept de métafonte », in Communication et langages, n°55, 1983, pp. 40–53,](http://www.persee.fr/web/revues/home/prescript/article/colan_0336-1500_1983_num_55_1_1549 )

Par Ludi Loiseau, 4 octobre 2017