designcoding
About Table of Contents Keywords Monthly Archive
Support designcoding!

Icosahedron by Code

April 5, 2012 | Algorithms
#grasshopper #icosahedron #platonic-solid #polyhedra #vbnet

I tried different approaches to drawing platonic solids using Grasshopper’s native components. However, it seems impossible now. In geometric definition, a platonic solid is a set of points, distributed on a sphere with equal distances. If the set contains 12 points, then it’s an icosahedron. I found lots of information about these objects and mathematicians seem to love analyzing them. They created different approaches to building an icosahedron. One of them is very suitable to implement on Grasshopper’s VB component. They defined the exact relative coordinates of each point. This was a good experiment for me to remember the good old days of coding. I didn’t prefer using codes to define algorithms for almost three years. Maybe there are still very good reasons to return to it.

Dim pi, R, H1, H2, Z1, Z2, H, Cx, Cy As Double
Dim po(11) As Point3d
Dim ed(31) As line

pi = 4 * System.Math.atan(1)
R = (S / 2) / System.Math.Sin(pi / 5)
H = System.Math.Cos(pi / 5) * R
H1 = System.Math.Sqrt(S * S - R * R)
H2 = System.Math.Sqrt((H + R) * (H + R) - H * H)
Z2 = (H2 - H1) / 2
Z1 = Z2 + H1
Cx = R * System.Math.Cos(pi / 10)
Cy = R * System.Math.Sin(pi / 10)

po(0) = New Point3d(0, 0, Z1)
po(1) = New Point3d(0, R, Z2)
po(2) = New point3d(Cx, Cy, Z2)
po(3) = New point3d(S / 2, -H, Z2)
po(4) = New point3d(-S / 2, -H, Z2)
po(5) = New point3d(-Cx, Cy, Z2)
po(6) = New point3d(0, -R, -Z2)
po(7) = New point3d(-Cx, -Cy, -Z2)
po(8) = New point3d(-S / 2, H, -Z2)
po(9) = New point3d(S / 2, H, -Z2)
po(10) = New point3d(Cx, -Cy, -Z2)
po(11) = New point3d(0, 0, -Z1)

V = po
Grasshopper definition (GHX)Download
Grasshopper definition (GH)Download

Cite this post

Yazar, T. (2012, April 5). Icosahedron by Code. designcoding. Retrieved August 24, 2026, from https://www.designcoding.net/icosahedron-by-code/

Related Posts

Icosahedron Study

May 27, 2012

I have come across several high school topics I was afraid of. While I was searching for a geodesic dome definition in Grasshopper, it was quite surprising that I found an easier way of modeling an approximation of icosahedron, the famous platonic solid. Icosahedron was a research topic of this website at various posts before (here, here, and here). In order to generate geodesic spheres, first I had to solve icosahedron. My first experiment was partially successful. I knew icosahedron’s…

Modeling Dual of Dodecahedron

December 14, 2024

A dual polyhedron is a concept in geometry where two polyhedra are related in such a way that the vertices of one polyhedron correspond to the faces of the other, and the faces of the first polyhedron correspond to the vertices of the second. The process of creating a dual polyhedron is called duality, and it applies to many regular, semi-regular, and some irregular polyhedra. In the case of Platonic solids, the cube and octahedron are duals of each other….

Modeling and Unrolling Icosahedron

December 12, 2024

An icosahedron is a three-dimensional polyhedron with twenty triangular faces, twelve vertices, and thirty edges. It is one of the five Platonic solids and is highly symmetrical, with all faces being equilateral triangles. A regular icosahedron has equal edge lengths and angles between its faces, making it one of the most symmetrical shapes in three-dimensional space. In this short tutorial video, I am modeling and unrolling an icosahedron. I studied this beautiful solid here, here, and here before. The Icosahedron…

Modeling an Icosahedron

December 21, 2011

Today’s polyhedra is the beautiful icosahedron. It is one of the five Platonic Solids with twenty equilateral triangular faces. Its dual is the dodecahedron, which has pentagonal faces. Here, I explained the process of modeling an icosahedron. After creating a regular pentagon, you should find the “tip” point of the Icosahedron by intersecting spheres from at least three of the corner points with a radius of the pentagon’s edges. You can exercise Tetrahedron to understand how we find a point…

Space-filling Rhombic Dodecahedra

February 10, 2024

The rhombic dodecahedron is a polyhedron with twelve rhombus-shaped faces, where each face has four sides of equal length. It is possible to construct the space-filling variant of the rhombic dodecahedron by arranging multiple such rhombic dodecahedra in a regular pattern so that they fill space without leaving any gaps. In his 1611 work on snowflakes titled “Strena seu de Nive Sexangula,” Johannes Kepler observed that honey bees utilize the geometric structure of rhombic dodecahedra to construct honeycombs. These honeycombs…

  • Chapters

    • Algorithms
    • Discourses
    • Fabrications
    • Studios
  • Explore

    • All Keywords
    • Table of Contents
    • Monthly Archive
    • #tutorial
    • #rhinoceros
    • #archimedean-solid
    • #unrolling
    • #rhino-python
    • #parametric-surface
    • #kuka-prc
    • #robot
    • #tessellation
    • #dodecahedron
    • #truncated
    • #folding
    • #terrain
    • #sandblasting
    • #stone
    • #parametric-curve
    • #animation
    • #dual
    • #icosidodecahedron
    • #stellated-solid
  • Search

  • Support designcoding!

  • Enjoying designcoding? Support me on Patreon to keep it growing. Thank you!

  • copyright 2026 designcoding.net | about | privacy policy | end user license agreement