On 10 Oct 2004 23:41:33 -0700, martinus <martin.ankerl / gmail.com> wrote:

> Here is my solution:
> http://martinus.geekisp.com/files/geodesic.zip
> unzip and start depthcue.rb for a simple opengl visualization.
>
> geodesic.rb contains the subsampling code,
> geodesic-data.rb contains the data as published in the quiz, and
> depthcue.rb is a simple opengl visualization (a modified opengl
> sample).
>
> This quiz was real fun to solve :-)

A nice and short solution (I wasn't even aware of the Vector class in the  
standard lib), you only forgot to normalize the vertices of the resulting  
triangles.
Changing the line:

ab.push b*x + a*(1.0-x)

in GeoDesicDome::split to:

v = b*x + a*(1.0-x)
ab.push v * (1 / Math.sqrt(v.inner_product(v)))

produces the correct result.

-- 
exoticorn/farbrausch