J’ai eu quelques problèmes au début mais j’ai finalement réussi à les résoudre et à terminer l’exercice complètement!

Étape 1
J’ai téléchargé le fichier inhérent au British Museum et j’ai inséré le composant Python qui avait été chargé sur la page. J’ai copié ce composant Python sur la page Grasshopper du fichier de couverture du British Museum et j’ai ajouté un paramètre Curve (Params/Geometry) que j’ai lié à l’entrée L (Line) du composant Python. J’ai inséré deux curseurs que j’ai reliés aux deux entrées restantes pour vérifier le nombre de côtés des faces (choisi le numéro 3 pour créer des triangles) et pour vérifier la tolérance de coïncidence des sommets.

Étape 2 – Création des contraintes
1. Tous les points du filet de la structure doivent se trouver à la surface du toit.
Je connecte la sortie du composant Python au composant Deconstruct Mesh (Mesh/Analysis) qui est chargé de diviser le maillage en ses composants. Afin de lier tous les points du réseau de la structure à la surface du toit, j’utilise le paramètre OnMesh (Kangaroo/Goals-on). Comme entrée P, j’utilise les points de maillage et comme entrée M le maillage de la surface du toit. Pour insérer le maillage de la surface du toit comme paramètre d’entrée, j’insère un paramètre Surface (Params/Geometry) et je lui associe le maillage au niveau Default de Rhino. Ensuite, je connecte cette surface au paramètre Mesh Brep (Mesh/Util) pour transformer la surface en un maillage et pouvoir l’insérer comme entrée M.

1

2. Les points du gabarit de la structure doivent être ancrés aux limites de la cour : le rectangle et le cercle.
J’insère le paramètre Mesh Edge (Mesh/Analysis) qui permet de récupérer les bords du contour du maillage afin de pouvoir les ancrer soit au cercle, soit au rectangle. Nous associons les bords à deux polylignes à l’aide du paramètre Join Curves (Curve/Util). Ensuite, nous utilisons la longueur pour distinguer les deux polylignes, celle du rectangle sera plus longue que celle du cercle. Pour ce faire, nous connectons les polylignes au composant Lenght (Curve/Analysis) et Sort List (Sets/List) auquel nous connectons ensuite le composant List Item (Sets/List) et à la sortie « i » nous ramènera la plus courte polyligne et donc le cercle et à la sortie + 1 la plus longue polyligne et donc le rectangle.

2

Récupérez les points sur la polyligne du cercle des rectangles en insérant deux composants Esplodes (Courbes/Util). J’insère deux composants Courbes reliés l’un au cercle de base et l’autre au rectangle de base dans Rhino. Je relie les points sur les bords de la jante et la courbe de la jante au composant On Curve (Kangaroo/Goals-on) et ajuste sa force avec un curseur. Je fais pareil pour le rectangle.
3. Ajoutez une contrainte pour étirer tous les bords du maillage
J’insère ensuite le paramètre Lenght Line (Kangaroo/Goals-line) et je connecte toutes les lignes de maillage à partir de la sortie E2 du composant Deconstruct Mesh en tant qu’entrée et j’insère un curseur pour ajuster sa longueur. Je saisis le paramètre Show (Kangaroo/Main) pour voir le résultat de mon travail sur le maillage.

Étape 3
Enfin, j’insère le composant Solver (Kangaroo/Main). Je connecte à l’entrée Goal Objects la sortie de l’On Mesh, des deux On Curve, de la Lenght Line et du Show. J’insère le composant Boolean Toggle (Params/Input) pour voir la différence entre relaxation effectuée et non. Placez un composant list item (Sets/List) à la sortie O du Solveur, en prenant soin d’aplatir la liste (Flatten) et connectez un composant MeshEdges pour afficher le maillage résultant de la relaxation.

3

4

5

Je remarque que le maillage n’est pas bien fixé aux 4 coins du rectangle. Nous insérons une contrainte pour remédier à ce problème. Je sélectionne les points sur les bords grâce au composant Mesh Corners (Kangaroo/Mesh) et l’ancre au rectangle grâce au composant Anchor (Kangaroo/Goals-Pt). J’ajoute cette contrainte à l’entrée du Solver.

6

EXERCISE

Pour effectuer l’exercice, j’ai suivi la liste de points donnée par le professeur et je n’ai pas rencontré de difficultés dans la réalisation. J’ai utilisé:

  • un composant NakedVertices (Kangaroo/Mesh/NakedVertices) permettant de récupérer tous les sommets des contours du maillage,
  • un composant Anchor (Kangaroo/Goals-Pt/Anchor) pour fixer ces sommets,
  • un composant Length(Line)  (Kangaroo/Goals-Lin/Length (Line)) pour tendre les arêtes du maillage,
  • un composant Vertex Loads (Kangaroo/Goals-Mesh/VertexLoads) pour affecter une charge aux sommets du maillage dont la valeur sera contrôlée par un slider.
  • un composant Show afin que le Solver de Kangaroo produise le maillage dans sa sortie O. En mettant à plat liste produite en sortie O (Cliquez avec le bouton droit de la souris sur la sortie O et choisir l’option flatten), le maillage se trouve être le premier élément de la liste. On peut l’obtenir avec le composant List Item (Sets/List/List Item)

7

8

9