<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Geodetic structures in Libraries &amp; objects</title>
    <link>https://community.graphisoft.com/t5/Libraries-objects/Geodetic-structures/m-p/198173#M15301</link>
    <description>&lt;DIV class="actalk-migrated-content"&gt;&lt;T&gt;Geodetic structures.&lt;BR /&gt;
It is possible to subdivide the sphere in geodetic triangles in many ways.&lt;BR /&gt;
We can start with a different platonic bodies and the subdivision depend from the platonic body we choose.&lt;BR /&gt;
I present here some examples of geodetic spheres.&lt;BR /&gt;
&lt;BR /&gt;
!!!Instructions to create the GDL-object in the imagine. Name: “geodetica cubo”&lt;BR /&gt;
&lt;BR /&gt;
!parameters -------------------------------------------------:&lt;BR /&gt;
n=3 !number cube side subdivisons&lt;BR /&gt;
r=1 !radius sphere&lt;BR /&gt;
rs=0.06 !radius junction spheres&lt;BR /&gt;
rc=0.01 !radius cylinders&lt;BR /&gt;
m1=77  !material junction spheres&lt;BR /&gt;
m2=70  !material junction cylinders&lt;BR /&gt;
sf=1   !bit show sphere&lt;BR /&gt;
cu=0   !bit show cube&lt;BR /&gt;
ma=1   !bit show axes&lt;BR /&gt;
!TEXT 3D ----------------------------------------------------:&lt;BR /&gt;
pen 20&lt;BR /&gt;
if ma=1 then lin_ 0,0,0,0,1.2*r,0&lt;BR /&gt;
pen 66&lt;BR /&gt;
if ma=1 then lin_ 0,0,0,1.2*r,0,0&lt;BR /&gt;
pen 24&lt;BR /&gt;
if ma=1 then lin_ 0,0,0,0,0,1.2*r&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
pen 1&lt;BR /&gt;
material 29&lt;BR /&gt;
if sf=1 then sphere r&lt;BR /&gt;
l=2*r/sqr(3)&lt;BR /&gt;
rotz 45&lt;BR /&gt;
add -l/2,-l/2,-l/2&lt;BR /&gt;
if cu=1 then block l,l,l&lt;BR /&gt;
del 2&lt;BR /&gt;
&lt;BR /&gt;
material m1&lt;BR /&gt;
add -sqr(2/3)*r,0,sqr(1/3)*r&lt;BR /&gt;
sphere rs&lt;BR /&gt;
del 1&lt;BR /&gt;
add -sqr(2/3)*r,0,sqr(1/3)*r&lt;BR /&gt;
sphere rs&lt;BR /&gt;
del 1 !le facce di un cubo sono 6, i vertici 8 (aggiunti i 2 vertici manacanti)&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
gosub 1&lt;BR /&gt;
rotz 90&lt;BR /&gt;
gosub 1&lt;BR /&gt;
del 1&lt;BR /&gt;
mul -1,-1,-1&lt;BR /&gt;
gosub 1&lt;BR /&gt;
rotz 90&lt;BR /&gt;
gosub 1&lt;BR /&gt;
del 2&lt;BR /&gt;
rot -1,1,0,-90&lt;BR /&gt;
gosub 1&lt;BR /&gt;
del 1&lt;BR /&gt;
mul -1,-1,-1&lt;BR /&gt;
rot -1,1,0,-90&lt;BR /&gt;
gosub 1&lt;BR /&gt;
del 2&lt;BR /&gt;
&lt;BR /&gt;
end&lt;BR /&gt;
1: material m1&lt;BR /&gt;
for j=0 to n-1&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
ga=(180-2*an)/n*i&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
add r/sqr(2)*(sin(an+ga)*cos(e)+cos(an+ga)),&lt;BR /&gt;
r/sqr(2)*(sin(an+ga)*cos(e)-cos(an+ga)),r*sin(e)*sin(an+ga)&lt;BR /&gt;
sphere rs&lt;BR /&gt;
del 1&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=0 to n-1&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
ga=(180-2*an)/n*(i+1/2)&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
add r/sqr(2)*(sin(an+ga)*cos(e)+cos(an+ga)),&lt;BR /&gt;
r/sqr(2)*(sin(an+ga)*cos(e)-cos(an+ga)),r*sin(e)*sin(an+ga)&lt;BR /&gt;
sphere rs&lt;BR /&gt;
del 1&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
material m2&lt;BR /&gt;
for j=0 to n-1 !orizzontali&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
!inizio verticali&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n)-1 !(1+(-1)^n)=0 se n dispari&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j !verticali tutte comprese in emisfero N&lt;BR /&gt;
&lt;BR /&gt;
for j=n/4*(1+(-1)^n)+((n-1)/4+1/2)*(1-(-1)^n) to n-1 !verticali&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j !verticali tutte comprese in emisfero S&lt;BR /&gt;
&lt;BR /&gt;
j=(n-1)/2 !solo per n dispari: verticali intermedie tagliate dall'equatore //z&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
if (1+(-1)^n)=0 then cylind bz-az,rc&lt;BR /&gt;
del 1&lt;BR /&gt;
next i&lt;BR /&gt;
!fine verticali &lt;BR /&gt;
&lt;BR /&gt;
!inizio oblique&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n)-1 !oblique da alto sin a centro, emisfero N&lt;BR /&gt;
for i=0 to n-1 !per n pari sopra equatore tutte=n/2, per n dispari sopra equatore tutte -1 fila=(n-1)/2&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=acs(( (bx-ax)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n)-1 !oblique da alto dex a centro, emisfero N&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n) to n-1 !oblique da alto sin a centro&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n) to n-1 !oblique da alto dex a centro, emisfero S&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=acs(( (bx-ax)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n) !oblique da centro a basso sin, emisfero N&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n) !oblique da centro a basso dex, emisfero N&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=acs(( (bx-ax)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=(n/4+1/2)*(1+(-1)^n)+(n/4+1/4)*(1-(-1)^n) to n-1 !oblique da centro a basso dex, emisfero S&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=(n/4+1/2)*(1+(-1)^n)+(n/4+1/4)*(1-(-1)^n) to n-1 !oblique da centro a basso sin, emisfero S  (n/4+1/4)*(1-(-1)^n)&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=acs(( (bx-ax)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
return&lt;BR /&gt;
!!!  end Instructions to create the GDL-object in the imagine. Name: “geodetica cubo”&lt;BR /&gt;
&lt;BR /&gt;
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;BR /&gt;
&lt;BR /&gt;
!!!Instructions to create the GDL-object in the imagine. Name: “geodetica icosaedro”&lt;BR /&gt;
&lt;BR /&gt;
!parameters -------------------------------------------------:&lt;BR /&gt;
m=3 !number subdivisons&lt;BR /&gt;
r=1 !radius sphere&lt;BR /&gt;
vv=0.06 !radius junction spheres&lt;BR /&gt;
s=0.01 !radius cylinders&lt;BR /&gt;
l=77  !material junction spheres&lt;BR /&gt;
mm=70  !material junction cylinders&lt;BR /&gt;
tt=210  !material sphere&lt;BR /&gt;
o=1   !bit show sphere&lt;BR /&gt;
jj=100 !offset z % radius r&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
!TEXT 3D ----------------------------------------------------:&lt;BR /&gt;
h=r*( (2*cos(36)-2*cos(72))^0.5)&lt;BR /&gt;
k=r*( (2*sin(36)*sin(36)-cos(72) )^0.5 )&lt;BR /&gt;
f=asn(h/(2*r))&lt;BR /&gt;
&lt;BR /&gt;
group "a"&lt;BR /&gt;
material l&lt;BR /&gt;
xform 1,0,0,0,&lt;BR /&gt;
0,1,0,0,&lt;BR /&gt;
0,0,1,r&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
xform 1,0,0,0,&lt;BR /&gt;
0,1,0,0,&lt;BR /&gt;
0,0,1,-r&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
for hh=0 to m-1   !suddivisioni quadrante xyz&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*hh/m)&lt;BR /&gt;
for w=0 to m-hh-1&lt;BR /&gt;
x=r*(x1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
y=r*(y1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
z=r*(z1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform 1,0,0,x,&lt;BR /&gt;
0,1,0,y,&lt;BR /&gt;
0,0,1,z&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
next w&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-1   !suddivisioni quadrante xy-z&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*hh/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
for w=0 to m-hh-1&lt;BR /&gt;
x=r*(x1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
y=r*(y1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
z=r*(z1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform 1,0,0,x,&lt;BR /&gt;
0,1,0,y,&lt;BR /&gt;
0,0,1,z&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
next w&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-1  !parte intermedia, triangolo con punta in basso&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
for w=0 to m-1-hh&lt;BR /&gt;
x=r*(x1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
y=r*(y1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
z=r*(z1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform 1,0,0,x,&lt;BR /&gt;
0,1,0,y,&lt;BR /&gt;
0,0,1,z&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
next w&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-1  !parte intermedia, triangolo con punta in alto&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
for w=0 to m-1-hh&lt;BR /&gt;
x=r*(x1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
y=r*(y1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
z=r*(z1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform 1,0,0,x,&lt;BR /&gt;
0,1,0,y,&lt;BR /&gt;
0,0,1,z&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
next w&lt;BR /&gt;
next hh&lt;BR /&gt;
endgroup&lt;BR /&gt;
 &lt;BR /&gt;
group "b" &lt;BR /&gt;
material mm&lt;BR /&gt;
i=r*sin((90-f)/m) !asta su polo nord&lt;BR /&gt;
j=0&lt;BR /&gt;
k=r*cos((90-f)/m)&lt;BR /&gt;
u=0&lt;BR /&gt;
v=0&lt;BR /&gt;
w=r&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
i=r*sin((90-f)/m)*cos(36) !asta su polo sud&lt;BR /&gt;
j=r*sin((90-f)/m)*sin(36)&lt;BR /&gt;
k=-r*cos((90-f)/m)&lt;BR /&gt;
u=0&lt;BR /&gt;
v=0&lt;BR /&gt;
w=-r&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
for hh=0 to m-1 !aste orizzontali su quadrante xyz&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*hh/m)&lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
u=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
v=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
w=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-1 !aste orizzontali su quadrante xy-z&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*hh/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
u=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
v=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
w=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=1 to m-1  !aste orizzontali, parte intermedia, triangolo con punta in basso&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
u=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
v=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
w=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=1 to m-1  !aste orizzontali, parte intermedia, triangolo con punta in alto&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
u=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
v=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
w=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !1:aste oblique sinistrorse su triangolo vertice basso: valori di hh sotto 0 aggiungono aste in alto, m-2 è il valore massimo per aste in basso (m-1 dà divisione per 0 )&lt;BR /&gt;
for ww=0 to m-hh-1 !valori sotto 0 aggiungono aste a sinistra, valori sopra m-hh-1 aggiungono a destra&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=(x11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !2:aste oblique destrorse su triangolo vertice basso: valori di hh sotto 0 aggiungono aste in alto, m-2 è il valore massimo per aste in basso (m-1 dà divisione per 0 )&lt;BR /&gt;
for ww=0 to m-hh-1 !valori sotto 0 aggiungono aste a sinistra, valori sopra m-hh-1 aggiungono a destra&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !3:aste oblique destrorse su triangolo vertice alto: valori di hh sotto 0 aggiungono aste in alto, m-2 è il valore massimo per aste in basso (m-1 dà divisione per 0 )&lt;BR /&gt;
for ww=1 to m-hh !valori sotto 0 aggiungono aste a sinistra, valori sopra m-hh-1 aggiungono a destra: sostituisco in u,v,r ww con (ww-1)&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
u=r*(x1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
for hh=0 to m-2 !4:aste oblique destrorse su triangolo vertice alto: valori di hh sotto 0 aggiungono aste in alto, m-2 è il valore massimo per aste in basso (m-1 dà divisione per 0 )&lt;BR /&gt;
for ww=1 to m-hh&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
u=r*(x1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
for hh=0 to m-2 !aste oblique sinistrorse su xyz &lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*hh/m)&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=cos(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
x2=cos(f+(90-f)*(hh+1)/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*(hh+1)/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !aste oblique destrorse su xyz: sostituisco in u,v,r ww con ww-1 &lt;BR /&gt;
for ww=1 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*hh/m)&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=cos(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
x2=cos(f+(90-f)*(hh+1)/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*(hh+1)/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
u=r*(x1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !aste oblique sinistrorse su xy-z &lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*hh/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=cos(f+(90-f)*(hh+1)/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*(hh+1)/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
x2=cos(f+(90-f)*(hh+1)/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*(hh+1)/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !aste oblique destrorse su xy-z: sostituisco in i,j,k ww con ww+1  &lt;BR /&gt;
for ww=0 to m-hh-2&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*hh/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
i=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=cos(f+(90-f)*(hh+1)/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*(hh+1)/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
x2=cos(f+(90-f)*(hh+1)/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*(hh+1)/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
&lt;BR /&gt;
endgroup&lt;BR /&gt;
addz jj/100*r&lt;BR /&gt;
material tt&lt;BR /&gt;
if o=1 then sphere r&lt;BR /&gt;
for i=1 to 5&lt;BR /&gt;
placegroup "a"&lt;BR /&gt;
placegroup "b"&lt;BR /&gt;
rotz 72&lt;BR /&gt;
next i&lt;BR /&gt;
del top&lt;BR /&gt;
&lt;BR /&gt;
!!!  end Instructions to create the GDL-object in the imagine. Name: “geodetica icosaedro”&lt;/T&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;IMG src="http://community.graphisoft.com/t5/image/serverpage/image-id/70964iF2033467C474B9A5/image-size/large?v=v2&amp;amp;px=999" border="0" alt="Senza titolo-1.jpg" title="Senza titolo-1.jpg" /&gt;</description>
    <pubDate>Sun, 23 Sep 2012 22:10:59 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2012-09-23T22:10:59Z</dc:date>
    <item>
      <title>Geodetic structures</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Geodetic-structures/m-p/198173#M15301</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;&lt;T&gt;Geodetic structures.&lt;BR /&gt;
It is possible to subdivide the sphere in geodetic triangles in many ways.&lt;BR /&gt;
We can start with a different platonic bodies and the subdivision depend from the platonic body we choose.&lt;BR /&gt;
I present here some examples of geodetic spheres.&lt;BR /&gt;
&lt;BR /&gt;
!!!Instructions to create the GDL-object in the imagine. Name: “geodetica cubo”&lt;BR /&gt;
&lt;BR /&gt;
!parameters -------------------------------------------------:&lt;BR /&gt;
n=3 !number cube side subdivisons&lt;BR /&gt;
r=1 !radius sphere&lt;BR /&gt;
rs=0.06 !radius junction spheres&lt;BR /&gt;
rc=0.01 !radius cylinders&lt;BR /&gt;
m1=77  !material junction spheres&lt;BR /&gt;
m2=70  !material junction cylinders&lt;BR /&gt;
sf=1   !bit show sphere&lt;BR /&gt;
cu=0   !bit show cube&lt;BR /&gt;
ma=1   !bit show axes&lt;BR /&gt;
!TEXT 3D ----------------------------------------------------:&lt;BR /&gt;
pen 20&lt;BR /&gt;
if ma=1 then lin_ 0,0,0,0,1.2*r,0&lt;BR /&gt;
pen 66&lt;BR /&gt;
if ma=1 then lin_ 0,0,0,1.2*r,0,0&lt;BR /&gt;
pen 24&lt;BR /&gt;
if ma=1 then lin_ 0,0,0,0,0,1.2*r&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
pen 1&lt;BR /&gt;
material 29&lt;BR /&gt;
if sf=1 then sphere r&lt;BR /&gt;
l=2*r/sqr(3)&lt;BR /&gt;
rotz 45&lt;BR /&gt;
add -l/2,-l/2,-l/2&lt;BR /&gt;
if cu=1 then block l,l,l&lt;BR /&gt;
del 2&lt;BR /&gt;
&lt;BR /&gt;
material m1&lt;BR /&gt;
add -sqr(2/3)*r,0,sqr(1/3)*r&lt;BR /&gt;
sphere rs&lt;BR /&gt;
del 1&lt;BR /&gt;
add -sqr(2/3)*r,0,sqr(1/3)*r&lt;BR /&gt;
sphere rs&lt;BR /&gt;
del 1 !le facce di un cubo sono 6, i vertici 8 (aggiunti i 2 vertici manacanti)&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
gosub 1&lt;BR /&gt;
rotz 90&lt;BR /&gt;
gosub 1&lt;BR /&gt;
del 1&lt;BR /&gt;
mul -1,-1,-1&lt;BR /&gt;
gosub 1&lt;BR /&gt;
rotz 90&lt;BR /&gt;
gosub 1&lt;BR /&gt;
del 2&lt;BR /&gt;
rot -1,1,0,-90&lt;BR /&gt;
gosub 1&lt;BR /&gt;
del 1&lt;BR /&gt;
mul -1,-1,-1&lt;BR /&gt;
rot -1,1,0,-90&lt;BR /&gt;
gosub 1&lt;BR /&gt;
del 2&lt;BR /&gt;
&lt;BR /&gt;
end&lt;BR /&gt;
1: material m1&lt;BR /&gt;
for j=0 to n-1&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
ga=(180-2*an)/n*i&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
add r/sqr(2)*(sin(an+ga)*cos(e)+cos(an+ga)),&lt;BR /&gt;
r/sqr(2)*(sin(an+ga)*cos(e)-cos(an+ga)),r*sin(e)*sin(an+ga)&lt;BR /&gt;
sphere rs&lt;BR /&gt;
del 1&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=0 to n-1&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
ga=(180-2*an)/n*(i+1/2)&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
add r/sqr(2)*(sin(an+ga)*cos(e)+cos(an+ga)),&lt;BR /&gt;
r/sqr(2)*(sin(an+ga)*cos(e)-cos(an+ga)),r*sin(e)*sin(an+ga)&lt;BR /&gt;
sphere rs&lt;BR /&gt;
del 1&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
material m2&lt;BR /&gt;
for j=0 to n-1 !orizzontali&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
!inizio verticali&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n)-1 !(1+(-1)^n)=0 se n dispari&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j !verticali tutte comprese in emisfero N&lt;BR /&gt;
&lt;BR /&gt;
for j=n/4*(1+(-1)^n)+((n-1)/4+1/2)*(1-(-1)^n) to n-1 !verticali&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j !verticali tutte comprese in emisfero S&lt;BR /&gt;
&lt;BR /&gt;
j=(n-1)/2 !solo per n dispari: verticali intermedie tagliate dall'equatore //z&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
if (1+(-1)^n)=0 then cylind bz-az,rc&lt;BR /&gt;
del 1&lt;BR /&gt;
next i&lt;BR /&gt;
!fine verticali &lt;BR /&gt;
&lt;BR /&gt;
!inizio oblique&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n)-1 !oblique da alto sin a centro, emisfero N&lt;BR /&gt;
for i=0 to n-1 !per n pari sopra equatore tutte=n/2, per n dispari sopra equatore tutte -1 fila=(n-1)/2&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=acs(( (bx-ax)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n)-1 !oblique da alto dex a centro, emisfero N&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n) to n-1 !oblique da alto sin a centro&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n) to n-1 !oblique da alto dex a centro, emisfero S&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*j)/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*j))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=acs(( (bx-ax)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n) !oblique da centro a basso sin, emisfero N&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=0 to n/4*(1+(-1)^n)+(n-1)/4*(1-(-1)^n) !oblique da centro a basso dex, emisfero N&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=acs(( (bx-ax)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=(n/4+1/2)*(1+(-1)^n)+(n/4+1/4)*(1-(-1)^n) to n-1 !oblique da centro a basso dex, emisfero S&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)+cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1)))*cos(e)-cos(an+((180-2*an)/n*(i+1))))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*(i+1)))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=asn(( (by-ay)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
&lt;BR /&gt;
for j=(n/4+1/2)*(1+(-1)^n)+(n/4+1/4)*(1-(-1)^n) to n-1 !oblique da centro a basso sin, emisfero S  (n/4+1/4)*(1-(-1)^n)&lt;BR /&gt;
for i=0 to n-1&lt;BR /&gt;
g=180-2*acs(1/sqr(3))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1)))&lt;BR /&gt;
ax=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)+cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
ay=r/sqr(2)*(sin(an+((180-2*an)/n*i))*cos(e)-cos(an+((180-2*an)/n*i)))&lt;BR /&gt;
az=r*sin(e)*sin(an+((180-2*an)/n*i))&lt;BR /&gt;
an=(acs(cos(g/2-g/n*(j+1/2))/sqr(2)))&lt;BR /&gt;
e=atn(sqr(2)*tan(g/2-g/n*(j+1/2)))&lt;BR /&gt;
bx=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)+cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
by=r/sqr(2)*(sin(an+((180-2*an)/n*(i+1/2)))*cos(e)-cos(an+((180-2*an)/n*(i+1/2))))&lt;BR /&gt;
bz=r*sin(e)*sin(an+((180-2*an)/n*(i+1/2)))&lt;BR /&gt;
bt=asn(( (bz-az)/sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2) ))&lt;BR /&gt;
af=acs(( (bx-ax)/sqr((bx-ax)^2+(by-ay)^2) ) )&lt;BR /&gt;
add ax,ay,az&lt;BR /&gt;
rotz af&lt;BR /&gt;
roty (90-bt)&lt;BR /&gt;
cylind sqr((bx-ax)^2+(by-ay)^2+(bz-az)^2),rc&lt;BR /&gt;
del 3&lt;BR /&gt;
next i&lt;BR /&gt;
next j&lt;BR /&gt;
return&lt;BR /&gt;
!!!  end Instructions to create the GDL-object in the imagine. Name: “geodetica cubo”&lt;BR /&gt;
&lt;BR /&gt;
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!&lt;BR /&gt;
&lt;BR /&gt;
!!!Instructions to create the GDL-object in the imagine. Name: “geodetica icosaedro”&lt;BR /&gt;
&lt;BR /&gt;
!parameters -------------------------------------------------:&lt;BR /&gt;
m=3 !number subdivisons&lt;BR /&gt;
r=1 !radius sphere&lt;BR /&gt;
vv=0.06 !radius junction spheres&lt;BR /&gt;
s=0.01 !radius cylinders&lt;BR /&gt;
l=77  !material junction spheres&lt;BR /&gt;
mm=70  !material junction cylinders&lt;BR /&gt;
tt=210  !material sphere&lt;BR /&gt;
o=1   !bit show sphere&lt;BR /&gt;
jj=100 !offset z % radius r&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
!TEXT 3D ----------------------------------------------------:&lt;BR /&gt;
h=r*( (2*cos(36)-2*cos(72))^0.5)&lt;BR /&gt;
k=r*( (2*sin(36)*sin(36)-cos(72) )^0.5 )&lt;BR /&gt;
f=asn(h/(2*r))&lt;BR /&gt;
&lt;BR /&gt;
group "a"&lt;BR /&gt;
material l&lt;BR /&gt;
xform 1,0,0,0,&lt;BR /&gt;
0,1,0,0,&lt;BR /&gt;
0,0,1,r&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
xform 1,0,0,0,&lt;BR /&gt;
0,1,0,0,&lt;BR /&gt;
0,0,1,-r&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
for hh=0 to m-1   !suddivisioni quadrante xyz&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*hh/m)&lt;BR /&gt;
for w=0 to m-hh-1&lt;BR /&gt;
x=r*(x1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
y=r*(y1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
z=r*(z1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform 1,0,0,x,&lt;BR /&gt;
0,1,0,y,&lt;BR /&gt;
0,0,1,z&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
next w&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-1   !suddivisioni quadrante xy-z&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*hh/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
for w=0 to m-hh-1&lt;BR /&gt;
x=r*(x1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
y=r*(y1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
z=r*(z1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform 1,0,0,x,&lt;BR /&gt;
0,1,0,y,&lt;BR /&gt;
0,0,1,z&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
next w&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-1  !parte intermedia, triangolo con punta in basso&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
for w=0 to m-1-hh&lt;BR /&gt;
x=r*(x1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
y=r*(y1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
z=r*(z1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform 1,0,0,x,&lt;BR /&gt;
0,1,0,y,&lt;BR /&gt;
0,0,1,z&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
next w&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-1  !parte intermedia, triangolo con punta in alto&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
for w=0 to m-1-hh&lt;BR /&gt;
x=r*(x1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
y=r*(y1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
z=r*(z1*cos(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(w*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform 1,0,0,x,&lt;BR /&gt;
0,1,0,y,&lt;BR /&gt;
0,0,1,z&lt;BR /&gt;
sphere vv&lt;BR /&gt;
del 1&lt;BR /&gt;
next w&lt;BR /&gt;
next hh&lt;BR /&gt;
endgroup&lt;BR /&gt;
 &lt;BR /&gt;
group "b" &lt;BR /&gt;
material mm&lt;BR /&gt;
i=r*sin((90-f)/m) !asta su polo nord&lt;BR /&gt;
j=0&lt;BR /&gt;
k=r*cos((90-f)/m)&lt;BR /&gt;
u=0&lt;BR /&gt;
v=0&lt;BR /&gt;
w=r&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
i=r*sin((90-f)/m)*cos(36) !asta su polo sud&lt;BR /&gt;
j=r*sin((90-f)/m)*sin(36)&lt;BR /&gt;
k=-r*cos((90-f)/m)&lt;BR /&gt;
u=0&lt;BR /&gt;
v=0&lt;BR /&gt;
w=-r&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
for hh=0 to m-1 !aste orizzontali su quadrante xyz&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*hh/m)&lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
u=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
v=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
w=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-1 !aste orizzontali su quadrante xy-z&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*hh/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
u=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
v=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
w=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=1 to m-1  !aste orizzontali, parte intermedia, triangolo con punta in basso&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
u=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
v=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
w=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=1 to m-1  !aste orizzontali, parte intermedia, triangolo con punta in alto&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
u=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
v=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
w=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !1:aste oblique sinistrorse su triangolo vertice basso: valori di hh sotto 0 aggiungono aste in alto, m-2 è il valore massimo per aste in basso (m-1 dà divisione per 0 )&lt;BR /&gt;
for ww=0 to m-hh-1 !valori sotto 0 aggiungono aste a sinistra, valori sopra m-hh-1 aggiungono a destra&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=(x11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !2:aste oblique destrorse su triangolo vertice basso: valori di hh sotto 0 aggiungono aste in alto, m-2 è il valore massimo per aste in basso (m-1 dà divisione per 0 )&lt;BR /&gt;
for ww=0 to m-hh-1 !valori sotto 0 aggiungono aste a sinistra, valori sopra m-hh-1 aggiungono a destra&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !3:aste oblique destrorse su triangolo vertice alto: valori di hh sotto 0 aggiungono aste in alto, m-2 è il valore massimo per aste in basso (m-1 dà divisione per 0 )&lt;BR /&gt;
for ww=1 to m-hh !valori sotto 0 aggiungono aste a sinistra, valori sopra m-hh-1 aggiungono a destra: sostituisco in u,v,r ww con (ww-1)&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x11=cos(f)*cos(-36)&lt;BR /&gt;
y11=cos(f)*sin(-36)&lt;BR /&gt;
z11=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x31=cos(f)*cos(36)&lt;BR /&gt;
y31=cos(f)*sin(36)&lt;BR /&gt;
z31=-sin(f)&lt;BR /&gt;
x21=cos(f)&lt;BR /&gt;
y21=0&lt;BR /&gt;
z21=sin(f)&lt;BR /&gt;
x1=(x11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
u=r*(x1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
for hh=0 to m-2 !4:aste oblique destrorse su triangolo vertice alto: valori di hh sotto 0 aggiungono aste in alto, m-2 è il valore massimo per aste in basso (m-1 dà divisione per 0 )&lt;BR /&gt;
for ww=1 to m-hh&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos(hh*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin(hh*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos(hh*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin(hh*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x11=cos(f)&lt;BR /&gt;
y11=0&lt;BR /&gt;
z11=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x31=cos(f)*cos(72)&lt;BR /&gt;
y31=cos(f)*sin(72)&lt;BR /&gt;
z31=sin(f)&lt;BR /&gt;
x21=cos(f)*cos(36)&lt;BR /&gt;
y21=cos(f)*sin(36)&lt;BR /&gt;
z21=-sin(f)&lt;BR /&gt;
x1=(x11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(y11*(x11*y21-x21*y11)-z11*(z11*x21-z21*x11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
y1=(y11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(z11*(y11*z21-y21*z11)-x11*(x11*y21-x21*y11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
z1=(z11*cos((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m)-(x11*(z11*x21-z21*x11)-y11*(y11*z21-y21*z11))/sin(acs(x11*x21+y11*y21+z11*z21))*sin((hh+1)*acs(x11*x21+y11*y21+z11*z21)/m))&lt;BR /&gt;
x2=(x31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(y31*(x31*y21-x21*y31)-z31*(z31*x21-z21*x31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
y2=(y31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(z31*(y31*z21-y21*z31)-x31*(x31*y21-x21*y31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
z2=(z31*cos((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m)-(x31*(z31*x21-z21*x31)-y31*(y31*z21-y21*z31))/sin(acs(x31*x21+y31*y21+z31*z21))*sin((hh+1)*acs(x31*x21+y31*y21+z31*z21)/m))&lt;BR /&gt;
u=r*(x1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
for hh=0 to m-2 !aste oblique sinistrorse su xyz &lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*hh/m)&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=cos(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
x2=cos(f+(90-f)*(hh+1)/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*(hh+1)/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !aste oblique destrorse su xyz: sostituisco in u,v,r ww con ww-1 &lt;BR /&gt;
for ww=1 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*hh/m)&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=cos(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
y1=0&lt;BR /&gt;
z1=sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
x2=cos(f+(90-f)*(hh+1)/m)*cos(72)&lt;BR /&gt;
y2=cos(f+(90-f)*(hh+1)/m)*sin(72)&lt;BR /&gt;
z2=sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
u=r*(x1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww-1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !aste oblique sinistrorse su xy-z &lt;BR /&gt;
for ww=0 to m-hh-1&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*hh/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
i=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=cos(f+(90-f)*(hh+1)/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*(hh+1)/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
x2=cos(f+(90-f)*(hh+1)/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*(hh+1)/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
for hh=0 to m-2 !aste oblique destrorse su xy-z: sostituisco in i,j,k ww con ww+1  &lt;BR /&gt;
for ww=0 to m-hh-2&lt;BR /&gt;
!cylind sul vettore B-A:A=(i,j,k),B=(u,v,w),A origine vettore,AB vettore,rotazione con asse y su xy&lt;BR /&gt;
x1=cos(f+(90-f)*hh/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*hh/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
x2=cos(f+(90-f)*hh/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*hh/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*hh/m)&lt;BR /&gt;
i=r*(x1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
j=r*(y1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
k=r*(z1*cos((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin((ww+1)*acs(x1*x2+y1*y2+z1*z2)/(m-hh)))&lt;BR /&gt;
x1=cos(f+(90-f)*(hh+1)/m)*cos(-36)&lt;BR /&gt;
y1=cos(f+(90-f)*(hh+1)/m)*sin(-36)&lt;BR /&gt;
z1=-sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
x2=cos(f+(90-f)*(hh+1)/m)*cos(36)&lt;BR /&gt;
y2=cos(f+(90-f)*(hh+1)/m)*sin(36)&lt;BR /&gt;
z2=-sin(f+(90-f)*(hh+1)/m)&lt;BR /&gt;
u=r*(x1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(y1*(x1*y2-x2*y1)-z1*(z1*x2-z2*x1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
v=r*(y1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(z1*(y1*z2-y2*z1)-x1*(x1*y2-x2*y1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
w=r*(z1*cos(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1))-(x1*(z1*x2-z2*x1)-y1*(y1*z2-y2*z1))/sin(acs(x1*x2+y1*y2+z1*z2))*sin(ww*acs(x1*x2+y1*y2+z1*z2)/(m-hh-1)))&lt;BR /&gt;
xform ((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
-((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2),i,&lt;BR /&gt;
((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))*((w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))/sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
(v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2),j,&lt;BR /&gt;
-sqr(((u-i)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2+((v-j)/sqr((u-i)^2+(v-j)^2+(w-k)^2))^2),&lt;BR /&gt;
0,(w-k)/sqr((u-i)^2+(v-j)^2+(w-k)^2),k&lt;BR /&gt;
cylind sqr((u-i)^2+(v-j)^2+(w-k)^2),s&lt;BR /&gt;
del 1&lt;BR /&gt;
next ww&lt;BR /&gt;
next hh&lt;BR /&gt;
&lt;BR /&gt;
endgroup&lt;BR /&gt;
addz jj/100*r&lt;BR /&gt;
material tt&lt;BR /&gt;
if o=1 then sphere r&lt;BR /&gt;
for i=1 to 5&lt;BR /&gt;
placegroup "a"&lt;BR /&gt;
placegroup "b"&lt;BR /&gt;
rotz 72&lt;BR /&gt;
next i&lt;BR /&gt;
del top&lt;BR /&gt;
&lt;BR /&gt;
!!!  end Instructions to create the GDL-object in the imagine. Name: “geodetica icosaedro”&lt;/T&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;IMG src="http://community.graphisoft.com/t5/image/serverpage/image-id/70964iF2033467C474B9A5/image-size/large?v=v2&amp;amp;px=999" border="0" alt="Senza titolo-1.jpg" title="Senza titolo-1.jpg" /&gt;</description>
      <pubDate>Sun, 23 Sep 2012 22:10:59 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Geodetic-structures/m-p/198173#M15301</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-09-23T22:10:59Z</dc:date>
    </item>
  </channel>
</rss>

