Dodecahedron
function Canvas() { const geo = dodecahedron({ radius: 0.5 }) const mat = rotate3dX(iMouse.y.negate()).mul(rotate3dY(iMouse.x)) const gl = useGL({ isWebGL: true, isDepth: true, count: geo.count, vertex: vec4(mat.mul(geo.vertex), 1), fragment: vec4(varying(geo.normal), 1), }) return <canvas ref={gl.ref} /> }
Dodecahedron Props
| radius | The dodecahedron radius. Default is 1. |
|---|---|
| detail | Subdivision level for additional vertices. Higher values increase complexity. Default is 0. |
| needNormal | Calculate surface normals for lighting. Default is true. |
| needIndice | Generate triangle indices array. Default is false. |
Mathematical Foundation
The dodecahedron employs the golden ratio in its construction. This creates twelve regular pentagonal faces arranged in perfect symmetry.
Let represent the reciprocal golden ratio. The twenty vertices distribute across three coordinate planes:
Pentagonal Face Structure
Each pentagonal face connects five vertices through specific angular relationships. The dihedral angle between adjacent faces measures .
The face arrangement follows icosahedral symmetry, creating exactly twelve regular pentagons. Each vertex participates in three faces, forming the characteristic three-dimensional structure.
Golden Ratio Properties
The dodecahedron demonstrates golden ratio relationships throughout its geometry. Edge lengths, face diagonals, and vertex distances all involve powers of .
The circumscribed sphere radius equals times the edge length. The inscribed sphere touches each face at its center, with radius times edge length.
Dual Polyhedron Relationship
The dodecahedron forms a dual relationship with the icosahedron. Each dodecahedron face corresponds to an icosahedron vertex, while each dodecahedron vertex corresponds to an icosahedron face.
This duality creates complementary structures where one polyhedron fits inside the other with perfect geometric correspondence. The transformation involves reciprocal golden ratio scaling and coordinate inversion.