Alhambra de Grenade : une solution

De bonnes pratiques ...

Dès qu'un programme est un tant soit peu complexe, il est vivement conseillé de le décomposer en tâches plus simples. C'est ce que nous allons faire ici en procédant dans cet ordre :

  • programmer la construction du polygone intérieur ; transformer ce programme en fonction à deux paramètres, les deux points à partir desquels le polygone sera construit.

  • programmer la construction d'un seul arc de cercle, puis par "copie" celui de l'arc suivant. Le tout sera transformé en fonction avec une sortie : celle d'un point où accrocher le polygone

  • utiliser les deux fonctions précédentes pour construire la cocotte en papier et y ajouter l'hexagone ; transformer le tout en une seule fonction.

1- Construire la fonction hexagone (deux paramètres)

Encore une boîte noire à résoudre

Ci-contre, une simple image pour le travail à effectuer : construire, en mode tortue depuis le point C, un hexagone régulier passant par D. Un curseur propose un coup de pouce.

En effet les méthodes sont nombreuses :

  • celles qui utilisent de la trigonométrie donc non accessibles aux plus jeunes élèves

  • celle qui utilise le coup de pouce. La tortue effectue d'abord un parcours préliminaire simple : se rendre au centre de gravité du triangle. Grâce au bloc position de la tortue cette position est mémorisée, et le côté de l'hexagone facilement récupérable.

On trouvera ici la figure de travail.

MéthodeUne solution et complément

Ci-dessous une solution de script, mais surtout la méthode pour le transformer en une fonction, ici à deux paramètres.

Et on trouvera ici la figure solution.

2- Construire un arc

Etude des angles

DGPad, comme bien d'autres "tortues" ne construit pas directement des cercles ou des arc de cercle. On remédie au problème en construisant des lignes polygonales avec un grand nombre de côtés.

Ce qu'on aimerait ici : construire des arcs de cercle de 120° et d'extrémités imposées : A et M1 (pour le premier) puis M1 et B pour le second.

On remplace ces arcs de cercle remplacés par des lignes polygonales à 20 côtés (par exemple). Comment ?

En créant la figure ci-dessous qui donne le premier "pas" de tortue :

Ce pas pourrait se calculer avec des formules de trigonométrie. Mais il y a une solution beaucoup plus simple, comme le montre la vidéo ci-dessous : le faire calculer par la calculatrice de DGPad en créant l'expression d(A,Aux). Comme les DGBlocks communiquent très facilement avec les éléments de la figure déjà existants le pas créé s'intégrera tout naturellement dans le DGBlocks : A

Un script solution

Ce pourrait-être celui-ci :

ou mieux encore celui-là : la 15ème position de la tortue a été mise en mémoire (dans le but de la récupérer comme l'un des sommets de l'hexagone inscrit)

La figure finale

On copie la fonction hexagone du DGBlocks : C de la première figure (eh oui, il est tout à fait possible de copier des blocks d'une figure à l'autre)

On applique trois fois la fonction chemin.

Les sommets obtenus comme "retours" de cette fonction chemin sont utilisés pour la construction de l'hexagone inscrit.

Ci-dessus : une simple image.

La figure dynamique est ici

ComplémentPour aller plus loin

À vous de jouer !

Et de fabriquer frises et pavages e utilisant le script précédent.

  • soit en transformant la construction précédente en macro (attention il faut d'abord désactiver "objet inerte" pour la cocotte, via l'inspecteur d'objet)

  • soit en transformant le script en fonction