Domes and frame structures

Hesperia dome

The Hesperia dome is a enormous construction made of glass on top of a hotel in Barcelona. With pyFormex, a parametric 3D model of this dome was created which allowed to evaluate geometric variations changing one or more parameters (e.g. the span or height of a dome, the amount of secondary triangles, etc.) as shown in the figure below. As illustrated, geometries can be displayed in several ways (e.g. wireframe, flat, smooth, transparent). Automated generation of finite element input files can be incorporated in pyFormex.

../_images/hesperia3.jpg ../_images/hesperia_var.png

Hyparcap

A space frame in the form of a five-pointed star of hypars.

../_images/Hyparcap.png

Scallop dome

Example showing the parametric capabilities of pyFormex. Both domes are createdby the same small script, by only changing two parameters.

../_images/scallop8.png ../_images/scallop12.png

SpaceTrussRoof

A space truss used for the roof of an industrial building.

../_images/SpaceTrussRoof.png

Geodesic Dome

This example illustrates the use of surface elements. It shows four steps in the creation of a geodesic dome.

../_images/Geodesic-1.png

First we create two triangles. We give them different colors so that they are easy to distinguish:

v=0.5*sqrt(3.)
a = Formex([[[0,0],[1,0],[0.5,v]]],1)
aa = Formex([[[1,0],[1.5,v],[0.5,v]]],2)
../_images/Geodesic-2.png

Next we copy the triangles a number of times in two directions, generating the triangular pattern at the left:

m=5; n=5
d = a.replic2(m,min(m,n),1.,v,bias=0.5,taper=-1)
dd = aa.replic2(m-1,min(m-1,n),1.,v,bias=0.5,taper=-1)
../_images/Geodesic-3.png

Then we copy-rotate the pattern into a hexagon:

e = (d+dd).rosette(6,60,point=[m*0.5,m*v,0])
../_images/Geodesic-4.png

Lastly the pattern is mapped on a sphere, resulting in a geodesic dome from which we give a perspective view:

f = e.mapd(2,lambda d:0.8*sqrt((m+1)**2-d**2),e.center(),[0,1])