line line line
School of Engineering Home PageCentre for Engineering Materials & Structures
Civil Engineering Undergraduate Page Civil Engineering Postgraduate Page Civil Engineering Research Page Civil Engineering Staff Directory Civil Engineering Intranet
Formulations
Introduction
Dome
Double layer
Barrel vaults
Novation
Pellevation
Polymation
Research Group Home page Research Group Home pageResearch Group Home page
line
line

Introduction

You can copy the codes given in this section and paste them in the textpad of formian.

Once the copy and paste is done, you just need to execute the formulations.

You can also modify the formulations, as you like.

Some formulation are quite complex. In order to modify them you will need a very good knowledge of Formian.

 


 
 

 

Dome

Copy and paste this formulation into the textpad of formian.

(*) Dome 1 (*) clear; ny=12; nz=8; rd=100; a=2; t=50; e=[1,0,a;1,1,1+a]; f1=bs(rd,180/ny,t/(2*nz+a))|rinit(ny,nz,2,2)|rosat(1,1+a)|e; f2=bs(rd,180/ny,t/(2*nz+a))|rinit(ny,2,2,2*nz)|[1,0,a;1,2,a]; f=f1#f2; use&,vt(1),vm(2),vh(10,10,20,0,0,0,0,0,1); draw f;

Execute by clicking on the red E button.

 


 
 

top of page
Double layers

 

(*) Double Layer (*) clear; n=10; a=2/3; d=1/n; e1={[0,0,d;2,0,d],[2,0,d;1,1,d],[1,1,d;0,0,d]}; e2={[0,0,d;1,1-a,0],[2,0,d;1,1-a,0],[1,1,d;1,1-a,0]}; e4=bb(1/(2*n),1/(2*n)/tan|30)|genid(n,n,2,1,1,-1)|e1; e5=bb(1/(2*n),1/(2*n)/tan|30)|(tranix(1,1-a,-d)|genid(n-1,n-1,2,1,1,-1)|e1); e6=bb(1/(2*n),1/(2*n)/tan|30)|genid(n,n,2,1,1,-1)|e2; e=tran(3,-d)|(e4#e5#e6); use &,vm(2),vh(10,6,1000,0,0,0,0,0,1); draw e; mape=1.0;

 


top of page
Barrel vaults

 

(*) Barrel Vault 1 (*) clear; m=10; n=10; r=10; e1=[r,0,0;r,1,1]; e2=rinic(2,3,m,n,2,2)|lamic(2,3,1,1)|e1; e3=lam(3,n)|rin(2,2*m,1)|[r,0,0;r,1,0]; e4=rinic(2,3,2*m+1,n,1,2)|[r,0,0;r,0,2]; ee=e1#e2#e3#e4; ee=bc(1,90/m,1)|ee; use vm(2),vt(1),vh(10,10,10,0,0,0,0,1,0); draw ee;

 


top of page
Novation function

(*) Original (*) clear; n=40;r=-8;c=1; e=rinid(n,n,1,1)|[0,0,0;1,0,0;1,1,0;0,1,0]; (*)e=rinid(n,n,1,1)|rosad(.5,.5)|[0,0,0;1,0,0];(*) use &,c(3,45),c(4,25),vm(2),vt(2),vh(2*n,-2*n,2*n,n/2,n/2,0,n/2,n/2,1); draw e; (*) Novation (Spots) (*) clear; m=4;h=12;c=7; r=tic|(n/m); a1=lib(i=2,tic|(n/r))|lib(j=2,tic|(n/r))|[r*(i-1),r*(j-1),0]; a2=lib(i=2,tic|(n/r))|lib(j=2,tic|(n/r))|[r*(i-1),r*(j-1),h]; en=nnov(2,c,a1,a2)|e; use &,c(3,45),c(4,25),vm(2),vt(2),vh(2*n,-2*n,2*n,n/2,n/2,0,n/2,n/2,1); draw en;

 

top of page
Pellevation

>

(*) Baumkuchen Pavillion (*) clear; a1=rinid(13,36,1,1)|[0,0,0;0,1,0]#rinid(12,37,1,1)|[0,0,0;1,0,0]; a2=bapel(3,6,0,6,36,12,4,4)|a1; a3=bapel(2,0,18,12,18,36,24,28)|a2; a4=rin(1,5,12)|a3; use &,vm(2),vt(1),vh(-5,-5,12,0,0,0,0,0,1); draw a4;


top of page
Polymation

The polymation function allows the user to create polyhedric configurations

First start with a flat configuration

clear; m=5; n=5; v=(sqrt|3)*0.5; a={[0,0,0;1,0,0;0.5,v,0;0,0,0]}; aa={[1,0,0;0.5,v,0;1.5,v,0;1,0,0]}; d=genid(m,n,1,v,0.5,-1)|a; dd=genid(m-1,n-1,1,v,0.5,-1)|aa; e=rosad(m*0.5,n*v,6,60)|(d#dd); use vm(2); draw e;

Map it on the face of a polyhedra

clear; g12=pol(1,5,'[1-5]',10,[0,0;m,0])|(d#dd); struct=g12; clear; use vm(2), vh(10,50,50,1,10,0,1,1,1); draw struct;

 

To build a geodesic dome copy the second part.

clear; H=trac(1,[0,0,0,20],1,[0,0,0],13)|g12; draw H;


 

Top of page  
line
Last revised 23 February 2002 Contacts:
line