« Programmation objet et géométrie/Objets géométriques de DrGeoII » : différence entre les versions

Contenu supprimé Contenu ajouté
m orthographe de Smalltalk
Ligne 227 :
C color: Color blue.
 
p:=figure point: p.
p:=C mathItem closestPointTo: (O mathItem point).
point: [:prts | prts first closestPointTo: prts second point]
p:=figure point: p.
parents: {C. O}.
p color: Color cyan.
</source>
 
Quelques explications sur cette figure (où le projeté orthogonal est dynamique, au sens où on peut déplacer les éléments de la figure et voir le point le plus proche évoluer):
 
La fonction ''fonction'' est un bloc de ''Smalltalk'', c'est-à-dire une sorte d'algorithme créé à la volée et qui ne se met en route que lorsqu'on en a besoin. Sa définition est formée de deux parties, séparées par un trait vertical: La première partie est la liste des variables du bloc, ici la seule variable ''x''; et la seconde partie décrit ce qui se passe lorsqu'on réveille le bloc en le chatouillant (et il est très chatouilleux!). En fait la boucle sur ''x'' dans la création du polygone est aussi un bloc, où il n'y a encore que la variable ''x'' mais où il se passe plusieurs choses (création d'un point, dissimulation de celui-ci, et ajout du point à la liste des sommets).
 
Et bien depuis mars 2011, les coordonnées d'un point peuvent aussi être définies par un bloc! Ici le bloc a une seule variable ''prts'' et produit le point du premier élément de ''prts'' qui soit le plus proche du second élément de ''prts'' (un point en l'occurence). Ce bloc est appliqués aux parents de ''prts'' qui sont définis somme ''C'' (la courbe) et ''O'' (l'origine du repère).
 
[[Catégorie:Programmation objet et géométrie (livre)|Programmation avec DrGeoII]]