Formulación del cálculo de coordenadas en los puntos de la
triangulación de las caras de los poliedros de base para formar las
cúpulas geodésicas:
Triangulo geodesico |
En este ejemplo podemos ver como componer
las fórmulas:
Conocidos los vértices v0, v1 y v2 del
triangulo que forma la cara del poliedro, la triangulación de esa
cara tendrá unos nudos adicionales que son los que tenemos que
calcular.
Esas coordenadas se forman mediante
polinomios de tres términos: por ejemplo el nudo v12 tendra la coordenada x12 = a0*x0 + a1*x1 + a2*x2
los coeficientes a0, a1 y a2 son los
siguientes para particiones V2 hasta V5
ndn=21
|
15
|
10
|
6
|
|
V5
|
V4
|
V3
|
V2
|
|
n
|
a0,a1,a2
|
a0,a1,a2
|
a0,a1,a2
|
a0,a1,a2
|
3
|
4,1,0
|
3,1,0
|
2,1,0
|
1,1,0
|
4
|
4,0,1
|
3,0,1
|
2,0,1
|
1,0,1
|
5
|
3,2,0
|
2,2,0
|
1,2,0
|
0,1,1
|
6
|
3,1,1
|
2,1,1
|
1,1,1
|
|
7
|
3,0,2
|
2,0,2
|
1,0,2
|
|
8
|
2,3,0
|
1,3,0
|
0,2,1
|
|
9
|
2,2,1
|
1,2,1
|
0,1,2
|
|
10
|
2,1,2
|
1,1,2
|
||
11
|
2,0,3
|
1,0,3
|
||
12
|
1,4,0
|
0,3,1
|
||
13
|
1,3,1
|
0,2,2
|
||
14
|
1,2,2
|
0,1,3
|
||
16
|
1,1,3
|
|||
17
|
0,4,1
|
|||
18
|
0,3,2
|
|||
19
|
0,2,3
|
|||
20
|
0,1,4
|
Viendo que estos coeficientes siguen
una secuencia uniforme se puede generalizar su empleo mediante unas
fórmulas sencillas para cualquier tamaño V de la triangulación:
'serie a0
i=0
for nn=V-1 to 0 step -1
ndv=V+1-nn :if nn=0 then ndv=ndv-2
for mm=1 to ndv :i=i+1 :a0(i)=nn :next
next
ndn1=i
'.................
i=0 'serie a1
for nn=1 to V-1
for mm=nn to 0 step -1:i=i+1:a1(i)=mm
:next:next
for mm=V-1 to 1 step -1:i=i+1:a1(i)=mm
:next
'..................
'serie a2
for nn=1 to ndn1
:a2(nn)=V-(a1(nn)+a0(nn)) :next
'....…
Una vez que tenemos los coeficientes,
el cálculo de coordenadas es inmediato:
for n=1 to ca ' 20 caras del icosaedro
for m=3 to ndn-1 'triangulación
a0=a0(m-2)
a1=a1(m-2)
a2=a2(m-2)
x(n,m)=
(a0*x(n,0)+a1*x(n,1)+a2*x(n,2))/V 'coordenadas en el icosaedro
y(n,m)=
(a0*y(n,0)+a1*y(n,1)+a2*y(n,2))/V
z(n,m)=
(a0*z(n,0)+a1*z(n,1)+a2*z(n,2))/V
next
next
Y una vez que tenemos las cordenadas
de los puntos de la triangulación sobre el poliedro, los proyectamos
a la esfera asi:
for n=1 to ca '20
for m=0 to ndn-1
r(n,m)=
sqr(x(n,m)^2+y(n,m)^2+z(n,m)^2) 'distancia al centro desde la cara
del icosaedro
xp(n,m)= x(n,m)/r(n,m)
'coordenadas sobre la esfera
yp(n,m)= y(n,m)/r(n,m)
zp(n,m)= z(n,m)/r(n,m)
next
next
y ya tenemos las coordenadas de la cupula o esfera geodesica xp,yp,zp
Informacion util para la construccion de cupulas geodesicas se puede encontrar en estos dos libros: