- CaRMetal
-
CaRMetal Développeurs Éric Hakenholz, Pierre-Marc Mazat, Alain Busser Dernière version 3.7.2 (12 octobre 2011) [+/−] Environnement avec Java 1.6.* Type Géométrie dynamique Licence GNU GPL Site web [1] modifier CaRMetal est un logiciel de géométrie dynamique, créé par Éric Hakenholz en 2006, à partir du moteur de C.a.R., de René Grothmann. Le logiciel est en Java (langage), libre (placé sous GPL) et multiplateforme. Il tire son nom de la finition « métal brossé » de l'interface Swing (Java).
Sommaire
Description
Engagement direct
Basé sur l'a-modalité des boîtes de dialogue, CaRMetal est conçu pour que l'utilisateur soit le plus possible en engagement direct. Le fil à la patte en est l'aboutissement ultime, ce qui donne à CaRMetal un intérêt même pour l'enseignement de la géométrie à l'école primaire! Les élèves du collège, quant à eux, ont droit à une préhension immédiate de l'outil grâce à l'a-modalité mais aussi à des icônes idéographiques et pas textuelles pour représenter les outils.
Outils
La création de macros est assez conviviale, et CaRMetal est fourni avec une bibliothèque de macros assez achalandée. Outre les outils classiques de création de points, cercles, droites et polygones, on peut aussi construire des coniques, des représentations graphiques de fonctions, des lieux de points ou enveloppes de droites, et même de lignes de niveau. Le repère étant systématiquement orthonormé, la représentation graphique de certaines fonctions est parfois difficile à voir. Lorsqu'une transformation a été définie pour un point, on peut l'appliquer à un ensemble de points. Un point peut être fixé à une courbe mais aussi à l'intérieur d'un cercle ou d'un polygone.
Formats de fichier
CaRMetal exporte aux formats png, svg, encapsulated PostScript, pdf et html. Le format de fichier (extension "zir") est d'ailleurs une description de la figure au format xml. Les propriétés des objets (comme leur couleur ou leur numéro de calque) peuvent être rendues dépendantes de grandeurs numériques via des expressions booléennes. Les textes, y compris le nom des objets, peuvent être écrits en LaTeX avec des expressions dynamiques. Ce sont les bibliothèques HotEqn et JLatexMath qui gèrent le LaTeX.
Géométrie dans l'espace
CaRMetal est décrit comme un logiciel "2,5D" ; en effet, s'il paraît exagéré de considérer CaRMetal comme un logiciel de géométrie dans l'espace, il s'en rapproche tout de même un peu, avec des figures en perspective cavalière, que l'on peut faire pivoter à l'écran, non par les méthodes classiques en 3D que sont les angles d'Euler et les quaternions, mais en faisant glisser un point (invisible) sur l'écran. De cette manière, les mouvements de la figure sont plus réversibles qu'avec les quaternions. En effet, la multiplication des quaternions n'est pas commutative, ce qui implique qu'en refaisant les mouvements de la souris à l'envers, on ne revient pas tout-à-fait à la configuration initiale (avec un logiciel comme Géoplan-GéoSpace). Le mouvement réversible de CaRMetal paraît plus facile à contrôler pour certains utilisateurs.
Particularités de CaRMetal
Dans CaRMetal, les objets peuvent être munis de magnétisme, qui leur permet d'être attirés vers des objets ou des endroits particulièrement dignes d'intérêt de la figure. Les animations peuvent être multiples (plusieurs points peuvent bouger en même temps sur des objets auxquels ils sont liés). Les animations ne sont pas bloquantes, on peut continuer la figure pendant les animations, ce qui autorise des types d'investigation spécifiques. Un outil appelé Monkey fait bouger tous les points mobiles d'une figure en suivant une marche aléatoire bornée. Il permet de vérifier la solidité de la construction (résistance au mouvement) ou encore de tester des conjectures. Son utilisation dans les exerciciels leur confère la possibilité de donner une note de qualité à la construction de l'élève. Les figures peuvent être regroupées en classeurs, où elles sont repérées par des onglets.
JavaScript
CaRMetal est aussi doté d'un langage de script : JavaScript (avec l'interpréteur rhino de la fondation Mozilla). Cette fonctionnalité qui permet de construire des objets complexes comme des fractales ou des tableaux de fils, a pour conséquence d'extraire CaRMetal du contexte de la géométrie dynamique, et d'en faire un outil d'enseignement de l'algorithmique. Deux néologismes sont apparus: Un CaRScript est un script écrit en JavaScript sous CaRMetal, et un carscripticiel est un exerciciel dont le but n'est pas une construction géométrique mais l'évaluation d'un CaRScript. Le concept d'exerciciel d'algorithmique semble inédit.
Intérêt didactique
L'anticipation des constructions
Les logiciels de géométrie dynamique utilisent fortement l'engagement direct, cette impression que le logiciel interprète correctement ce que l'on veut faire (on pointe l'intersection de deux objets, le logiciel construit cette intersection). Plus généralement l'engagement direct est un comportement général du logiciel qui reconnait l'utilisateur comme sujet cognitif ayant une intention : si un élève pointe l'intersection de deux droites, c'est qu'il veut construire cette intersection ... Avec l'anticipation des constructions, l'engagement direct franchit une étape supplémentaire. L'objet est préconstruit dès qu'il ne reste plus qu'un point à cliquer. Parfois, l'objet est construit et est alors déplacé avec la souris (parallèle, perpendiculaire, transformations ponctuelles). Ce déplacement participe alors à l'apprentissage de l'utilisateur par la perception qu'il donne du mouvement euclidien possible de l'objet. L'utilisateur se forge des représentations du concept qu'il manipule qui tiennent déjà compte de ces premières observations. L'anticipation des constructions permet à l'engagement direct d'aller plus loin que sans elle : il reconnait l'utilisateur aussi dans son statut d'apprenant et l'accompagne dans son apprentissage. Cet accompagnement dans l'apprentissage des concepts n'est pas le propre des classes de fin de l'école primaire ou de début de collège. Dans un autre registre, pour forger rapidement de bonnes représentations, on retrouve la même efficacité dans des micromondes non euclidiens avec des étudiants comme pour le parallélisme non arguésien du plan de Moulton ou l'orthogonalité dans cette même géométrie.
Instrumentalisation de l’anticipation
L’anticipation des constructions, s’appliquant à tout outil, y compris les macro-constructions, on peut l’utiliser pour structurer autrement des situations d’investigation. En particulier, il n’est plus nécessaire de finaliser une construction pour infirmer une conjecture, ou encore des constructions partielles – anticipées - peuvent renforcer des conjectures. Plus généralement, cette pratique, qu’il convient d’organiser dans un premier temps, favorise une réflexion métacognitive sur ce que l’on fait en analysant la rétroaction du logiciel en cours d’utilisation, pendant la manipulation directe. Là encore, selon le contexte, cela peut se faire sur des situations euclidiennes élémentaires ou dans des géométries moins standard.
Réalité mathématique augmentée
En géométrie dynamique, la manipulation directe permet, en introduction à la démarche hypothético-déductive, de revisiter la notion de propriété géométrique comme invariant, et plus spécifiquement comme le résultat d’une construction qui résiste au mouvement (l’orthocentre, l’intersection des médianes, etc.).
Malgré son efficacité, il y a une situation importante en mathématique où la manipulation directe perd de sa pertinence. C’est le cas quand, dans une figure de géométrie ou d’analyse, un point particulier, mathématiquement significatif, est a priori inaccessible à la manipulation directe. Le simple tiers d’un segment n’est généralement pas atteignable à la souris.
L’aimantation pondérée permet de placer un point sur un objet (pondération forte) tout en le faisant passer par un point particulier de cet objet, significatif pour la figure (pondération minimale qui maintient l’illusion de la continuité du mouvement). La manipulation directe ainsi pondérée, passant par un point significatif, rend le réalisme de la situation augmenté du sens mathématique contenu dans le cas particulier.
Déterminisme enrichi
Réaliser un logiciel de géométrie dynamique c’est choisir, entre autres, en permanence le déterminisme (la figure reprend la même instance quand les objets initiaux reviennent à leur position initiale) plutôt que la continuité (dont le suivi continu des intersections) tout en respectant le plus possible cette continuité qui fait sens à l’utilisateur. On sait que les deux concepts ne sont pas totalement compatibles et ce fut un travail important des pionniers en géométrie dynamique (l’équipe de Cabri Géomètre en France et de Cinderella (logiciel) en Allemagne) de dégager ce qui était réalisable ou non dans cette antinomie et de le traduire par des algorithmes.
CaRMetal a hérité du moteur de C.a.R. de la récursivité des points et des expressions. Cette récursivité permet de s’affranchir du déterminisme de manière contrôlée, mathématiquement significative, et donc prévisible (ce qui n’est pas toujours le cas de la continuité). Par ailleurs, en y ajoutant l’aimantation, on peut maintenir le déterminisme général d’une figure tout en lui autorisant des ilots de non déterminisme qui renforcent, d’une autre façon que ci-dessus, l’efficacité – ou le sens - mathématique de la simulation ou du micromonde que l’on propose à l’investigation des élèves ou des étudiants. Ce contexte nécessite d’être préparé et s’adresse donc à des enseignants qui veulent engager une ingénierie particulière. Quelques exemples simples sont téléchargeables sur les sites utilisant le logiciel, mais il ne semble pas que de véritables projets significatifs aient été développés.
Géométrie repérée dynamique
Avec l’arrivée des scripts dans le logiciel, un nouveau champ d’investigation apparaît dans les sites d’utilisateurs. D’une manière générale, le principe est d’utiliser les aspects élémentaires de la programmation et la sortie dynamique de la figure produite par script comme processus d’intermédiation entre le numérique et l’algèbre : on perçoit du numérique (en géométrie sur quadrillage, ou en analyse dans un repère) on infère les propriétés observées de manière numérique, par une écriture algébrique qui est aussitôt testée et infirmée ou confirmée. Dans ce dernier cas on dispose d’une expression algébrique dont la validité est renforcée par l’exploration en manipulation directe : d’où l’expression de géométrie repérée dynamique (les autres pratiques de programmation étant par essence généralement statiques). Cette démarche fait le pari d’un outil intermédiaire vers l’algèbre (comme l'est aussi le tableur) tout en restant résolument du côté de l’algèbre, pas que n’a pas franchi l’usage du tableur.
La pratique est encore trop récente pour savoir si elle a véritablement l’effet qu’elle décrit.
Système de classeurs
CaRMetal possède un système d'onglet (informatique)s, permettant de regrouper plusieurs figures en un seul classeur de figures. La navigation est très analogue à celle des tableurs, en faisant défiler les onglets et en cliquant sur celui qu'on a choisi. Un seul fichier CaRMetal peut donc contenir des dizaines de figures.
Magnétisme
Le centre du cercle circonscrit à ABC est à l'intérieur ou à l'extérieur du triangle selon que l'angle en A est aigu ou obtus. Logiquement, on s'attend donc à ce qu'il soit sur l'hypoténuse lorsque le triangle est rectangle. CaRMetal possède bien une batterie de tests dont un sur l'alignement de points mais il est difficile avec la souris de placer A exactement sur le cercle de diamètre [BC], et donc le centre est presque aligné avec B et C mais pas affiché comme aligné, l'alignement n'étant pas suffisant pour être indiqué par le test.
Pour y remédier, il est possible, après avoir créé le cercle de diamètre [BC], de le rendre magnétique, en conférant à A la propriété de magnétisme, avec deux paramètres:
- le rayon d'action du champ magnétique, exprimé en pixels;
- la liste des objets auxquels A peut être attaché par le magnétisme.
Dans le cas présent, on n'a besoin que d'un seul objet, le cercle de diamètre [BC]. Avec un rayon d'action de quelques pixels, dès que A est proche du cercle, il devient momentanément un point lié au cercle, et l'alignement est affiché comme exact.
Lorsqu'un point est attiré magnétiquement vers un ensemble fini de points, dont les coordonnées sont fixes, il évolue dans une géométrie discrète.
Récursivité
En créant un point M et en lui donnant comme coordonnées round(x(M)) et round(y(M)), le point est assujetti à garder des coordonnées entières (le point est un entier de Gauss). Ses coordonnées sont définies à partir d'elles-mêmes! Cette récursivité est possible (elle ne boucle pas) car créer un point l'initialise, ce qui permet de lui donner ensuite une définition récursive de ses coordonnées. Les expressions aussi sont récursives, mais leur création n'est pas une initialisation, même si elles sont initialisées à 0.
Le Monkey
Le bouton représentant un macaque est en haut de la fenêtre; en cliquant dessus, les points mobiles de la figure entrent dans une danse effrénée sans quitter la fenêtre, et lorsqu'on lâche le bouton, ils reviennent à leur place. Cet outil permet de vérifier les invariants des constructions: Par exemple si trois droites semblent concourantes, le Monkey permet de vérifier qu'elles le restent dans de nombreux cas de figures. Si un point est attaché à une courbe, le Monkey le fait bouger de telle manière qu'il reste attaché à la courbe.
Le Monkey permet d'évaluer la qualité d'une construction, de façon invisible, en effectuant une statistique sur le nombre de cas de figure où la construction reste correcte. La construction d'un milieu au pifomètre est donc (à juste titre) annoncée comme fausse par le Monkey.
JavaScript
Les CaRScripts sont une fonctionnalité qui fait de CaRMetal un peu plus qu'un logiciel de géométrie dynamique, et même un outil d'enseignement de l'algorithmique. La programmation se fait dans un contexte géométrique plutôt que numérique. Depuis la version 3.6, un CaRScript peut être lancé à l'occasion d'un évènement comme le mouvement d'un point, ce qui amène à la programmation événementielle. Cette fonctionnalité permet (entre autres) de rendre réversibles certaines constructions.
Notes et références
Annexes
Articles connexes
Liens externes
- Le site de CaRMetal : [2]
- L'IREM de l'île de la Réunion fourmille de ressources sur CaRMetal : [3], en particulier
- Cet article de prise en mains : [4]
- La distribution libre Clef Agreg, consacrée aux mathématiques, comprend (entre autres) CaRMetal : [5]
Bibliographie
- Vers des spécifications formelles : Fondements Mathématiques et Informatiques pour la Géométrie Dynamique, Bernard Genevès (thèse à l'UJF) PDF
- JavaScript, David Flanagan, éditions O'Reilly
Géométrie dynamique Logiciels C.a.R. - Cabri Géomètre - GeoGebra - CaRMetal - DrGeo - Kig - GéoPlan - GéoSpace - GEONExT - TracenPoche Catégories :- Logiciel libre sous licence GPL
- Plateforme Java
- Logiciel de géométrie
Wikimedia Foundation. 2010.
Contenu soumis à la licence CC-BY-SA. Source : Article CaRMetal de Wikipédia en français (auteurs)
Regardez d'autres dictionnaires:
CaRScript — Un CaRScript est un script pour CaRMetal. Le terme est un néologisme obtenu par apocope et aphérèse sur l expression CaRMetal JavaScript . Le langage des CaRScripts est donc JavaScript. Mais des instructions spécifiques à la géométrie dynamique… … Wikipédia en Français
Zirkel und Lineal — Entwickler René Grothmann Aktuelle Version 9.5 Betriebssystem plattformunabhängig Programmiersprache Java Kategorie … Deutsch Wikipedia
List of interactive geometry software — Interactive geometry software (IGS, or dynamic geometry environments, DGEs) are computer programs which allow one to create and then manipulate geometric constructions, primarily in plane geometry. In most IGS, one starts construction by putting… … Wikipedia
Список систем интерактивной геометрии — Содержание 1 Сравнение интерактивных геометрических систем 1.1 Лицензиро … Википедия
C.a.R. — C.a.R. – Compass and Ruler (also known as Z.u.L., which stands for the German Zirkel und Lineal ) – is a free and open source interactive geometry software that can do geometrical constructions in Euclidean and non Euclidean geometry. The… … Wikipedia
Coordonnées parallèles — Les coordonnées parallèles sont une technique permettant de visualiser un nombre important d informations de façon non ambiguë. Exemple de tracé en coordonnées parallèles Sommaire 1 Principe … Wikipédia en Français
GeoGebra — Manipulation des objets géométriques euclidiens dans le plan … Wikipédia en Français
Géométrie dynamique — Le terme géométrie dynamique (ou géométrie interactive) désigne à la fois l environnement géométrique et l ensemble des outils qui permettent d explorer de façon interactive les propriétés des objets géométriques en effectuant des opérations de… … Wikipédia en Français
DrGeoII — Développeur Hilaire Fernandes Dernière version 10.12 (5 3 2011) [ … Wikipédia en Français
OpenDisc — This article is about the open source software distribution. For the Enhanced Music CD software, see Opendisc. OpenDisc Stable release 10.12 / December 7, 2010; 11 months ago (2010 12 07) … Wikipedia