Dôme Géodésique
La curiosité n’est pas un vilain défaut mais une qualité fondamentale.
Page en construction
- desertdomes
- lewebpedagogique PDF
Via ChapGPT 3.5:
// Fonction pour projeter un point 3D en 2D
function project_point(p) = [p[0], p[1]];
// Fonction utilitaire pour créer les triangles d'un icosaèdre
module icosahedron() {
// Sommets de l'icosaèdre
vertices = [
[0, 1, 1.618], [0, 1, -1.618], [0, -1, 1.618], [0, -1, -1.618],
[1, 1.618, 0], [1, -1.618, 0], [-1, 1.618, 0], [-1, -1.618, 0],
[1.618, 0, 1], [1.618, 0, -1], [-1.618, 0, 1], [-1.618, 0, -1]
];
// Faces de l'icosaèdre (indices des sommets)
faces = [
[0, 8, 4], [0, 5, 10], [2, 4, 9], [2, 11, 5], [1, 6, 8], [1, 10, 7],
[3, 9, 6], [3, 7, 11], [0, 10, 8], [1, 8, 10], [2, 9, 11], [3, 11, 9],
[4, 2, 0], [5, 0, 2], [6, 1, 3], [7, 3, 1], [8, 6, 4], [9, 4, 6],
[10, 5, 7], [11, 7, 5]
];
// Parcourir les faces pour créer des triangles projetés en 2D
for (face = faces) {
polygon(points = [project_point(vertices[face[0]]), project_point(vertices[face[1]]), project_point(vertices[face[2]])]);
translate([50, 0]) // Espacement entre les triangles projetés
}
}
// Fonction principale pour afficher le patron de la sphère
module sphere_pattern() {
icosahedron();
}
// Afficher le patron de sphère
sphere_pattern();