""" Page 94 3v Icosa Alternate "The Dome Builder's Handbook" John Prenis, 1973 Kirby messing around with Trevor at Fine Grind, see blog: http://mybizmo.blogspot.com/2008/11/geeking-out.html """ from rbf import Icosa import math o = Icosa() o.volume = 0 o.radius = o.vertices['X1'].mag newo = (1/o.radius) * o newradius = newo.vertices['X1'].mag print "New Icosa radius = ", newradius X1U1 = newo.vertices['U1'] - newo.vertices['X1'] X1Q1 = newo.vertices['Q1'] - newo.vertices['X1'] u = (1./3) * X1U1 a1 = newo.vertices['X1'] + u print "flat a1 radius = ", a1.mag aradius = a1.mag a1sph = (1/aradius) * a1 print "Spherical a1 = ", a1sph.mag u = (1./3) * X1Q1 a2 = newo.vertices['X1'] + u a2sph = (1/aradius) * a2 print "Spherical a2 = ", a2sph.mag A = newo.vertices['X1'] - a1sph print "A length = ", A.mag B = a1sph - a2sph print "B length = ", B.mag a3 = (1/3.) * (newo.vertices['X1'] + newo.vertices['U1'] + newo.vertices['Q1']) a3radius = a3.mag a3sph = (1/a3radius) * a3 C = a1sph - a3sph print "C length = ", C.mag e1 = a1sph - newo.vertices['X1'] e2 = a2sph - newo.vertices['X1'] e3 = a3sph - a1sph e4 = a3sph - a2sph print e1.mag print e2.mag print "Angle AA = ", math.degrees(e1.diff_angle(e2)) print "Angle CC = ", math.degrees(e3.diff_angle(e4)) """ Figure the other angles using the fact that they're isoceles and angles add to 180 """