PROCESS & ALEA

28

Transcript of PROCESS & ALEA

Page 1: PROCESS & ALEA
Page 2: PROCESS & ALEA

Western Garden Cities

Page 3: PROCESS & ALEA
Page 4: PROCESS & ALEA

Préservation de la végétation

Relevé des arbres remarquablesdes bosquets et des parterres végétaux.

Page 5: PROCESS & ALEA

implantation

Page 6: PROCESS & ALEA

Implantatio & événements

Page 7: PROCESS & ALEA

Optimisation de l’ensoleillement

Héliodon vue en plan masseCliquez sur l’image

Page 8: PROCESS & ALEA

Intégration des parkings en respectant la végétation Existante, entre les traces du bâti existant.

Permettre la circulation verticale vers les coursives.

Parking paysagé en limite ouest de la parcelle pour desservir le centre commerciale.

Les parkings

Page 9: PROCESS & ALEA

La récupération des gravats inertes de la démolition des bâtiments précédents participent, ainsi que les parkings, au travail du sol.

Ils modèlent le sol.

Un sol artificiel

Page 10: PROCESS & ALEA

Les logements

Les logements

Page 11: PROCESS & ALEA

configurations

Page 12: PROCESS & ALEA

!pr=N_ken=0.9

!..............matrice l[i][j] case libre =0nch=int(A/3.80)

DIM l[100][20]DIM o[100][20]DIM oc[100][20]DIM test[100][20]DIM dcm[100][20]DIM dcn[100][20]DIM MI[100][20]DIM mpb[100][20]DIM meps[100][20]DIM CI[100][20]

for i=1 to nchfor j=1 to net+1l[i][j]=0next jnext i!..............

!..............dÈbut profondeur de calcul5:ncm=ncm-1:if ncm=0 then goto 9000t=0uu=0tt=0for i=1 to nchfor j=1 to net+1test[i][j]=0next jnext i!..............

20:!.............. hi hj point de dÈpart de remplissagehi=int(rnd(nch))+1hj=int(rnd(net))+1

for i=1 to nchfor j=1 to net+1o[i][j]=0next jnext i

pad=1pag=1pavd=1pavg=1ncr=0if l[hi][hj]=1 thengoto 20else o[hi][hj]=1:ncr=ncr+1 !..............

!.............. nombre de case vide alentour=ll

25:if test[hi][hj]=1 then goto 20

ll=1v=0 : gosub 10000v=-1: gosub 10000v=1 : gosub 10000if ll<ncm thentest[hi][hj]=1tt=tt+1if tt>=nch*net then

goto 5goto 20endif!..............

for i=1 to nchfor j=1 to net+1mi[i][j]=0next jnext i

!.............. au dessus ou au dessousif hj=1 thenhv=1else

if hj=net+1 thenhv=-1else

if hj>2 and hj<net+2 then

if rnd(1)>0.5 thenhv=1else hv=-1endif

endifendif!..............

!...................................................................... reservation30:

if rnd(1)>0.5 then!.... si oui en horiz

if rnd(1)>0.5 then !....si oui ‡ droite 50: if hi+pad<=nch and ncr<ncm then

if l[hi+pad][hj]=0 then

if o[hi+pad][hj]=0 then

o[hi+pad][hj]=1

ncr=ncr+1

else pad=pad+1:goto 50endif

endifelse !.... ‡ gauche

60: if hi-pag>0 and ncr<ncm thenif l[hi-pag][hj]=0 then

if o[hi-pag][hj]=0 then

o[hi-pag][hj]=1

ncr=ncr+1

else pag=pag+1:goto 60endif

endifendif

else!.... en verticalif l[hi][hj+hv]=0 and ncr<ncm then

if o[hi][hj+hv]=0 theno[hi][hj+hv]=1ncr=ncr+1

elseif rnd(1)>0.5 then !....si oui ‡ droite70: if hi+pavd<=nch and ncr<ncm then

if l[hi+pavd][hj+hv]=0 then

if o[hi+pavd][hj+hv]=0 then

o[hi+pavd][hj+hv]=1

ncr=ncr+1

else pavd=pavd+1:goto 70endif

endifelse !.... ‡ gauche80: if hi-pavg>0 and ncr<ncm then

if l[hi-pavg][hj+hv]=0 then

if o[hi-pavg][hj+hv]=0 then

o[hi-pavg][hj+hv]=1

ncr=ncr+1

else pavg=pavg+1:goto 80endif

endifendif

endifendif

endift=t+1!......................................................................

!............................test de profondeur de calculif t>pr then

uu=uu+1if uu>pr then goto 5goto 20

endif!............................

Définition d’une matrice

GDL

Page 13: PROCESS & ALEA

!pr=N_ken=0.9

!..............matrice l[i][j] case libre =0nch=int(A/3.80)

DIM l[100][20]DIM o[100][20]DIM oc[100][20]DIM test[100][20]DIM dcm[100][20]DIM dcn[100][20]DIM MI[100][20]DIM mpb[100][20]DIM meps[100][20]DIM CI[100][20]

for i=1 to nchfor j=1 to net+1l[i][j]=0next jnext i!..............

!..............dÈbut profondeur de calcul5:ncm=ncm-1:if ncm=0 then goto 9000t=0uu=0tt=0for i=1 to nchfor j=1 to net+1test[i][j]=0next jnext i!..............

20:!.............. hi hj point de dÈpart de remplissagehi=int(rnd(nch))+1hj=int(rnd(net))+1

for i=1 to nchfor j=1 to net+1o[i][j]=0next jnext i

pad=1pag=1pavd=1pavg=1ncr=0if l[hi][hj]=1 thengoto 20else o[hi][hj]=1:ncr=ncr+1 !..............

!.............. nombre de case vide alentour=ll

25:if test[hi][hj]=1 then goto 20

ll=1v=0 : gosub 10000v=-1: gosub 10000v=1 : gosub 10000if ll<ncm thentest[hi][hj]=1tt=tt+1if tt>=nch*net then

goto 5goto 20endif!..............

for i=1 to nchfor j=1 to net+1mi[i][j]=0next j

recherche d’une cellule d’ancrage à partir de laquelle peut se développer un logement

GDL gdl

Page 14: PROCESS & ALEA

!pr=N_ken=0.9

!..............matrice l[i][j] case libre =0nch=int(A/3.80)

DIM l[100][20]DIM o[100][20]DIM oc[100][20]DIM test[100][20]DIM dcm[100][20]DIM dcn[100][20]DIM MI[100][20]DIM mpb[100][20]DIM meps[100][20]DIM CI[100][20]

for i=1 to nchfor j=1 to net+1l[i][j]=0next jnext i!..............

!..............dÈbut profondeur de calcul5:ncm=ncm-1:if ncm=0 then goto 9000t=0uu=0tt=0for i=1 to nchfor j=1 to net+1test[i][j]=0next jnext i!..............

20:!.............. hi hj point de dÈpart de remplissagehi=int(rnd(nch))+1hj=int(rnd(net))+1

for i=1 to nchfor j=1 to net+1o[i][j]=0next jnext i

pad=1pag=1pavd=1pavg=1ncr=0if l[hi][hj]=1 thengoto 20else o[hi][hj]=1:ncr=ncr+1 !..............

!.............. nombre de case vide alentour=ll

25:if test[hi][hj]=1 then goto 20

ll=1v=0 : gosub 10000v=-1: gosub 10000v=1 : gosub 10000if ll<ncm thentest[hi][hj]=1tt=tt+1if tt>=nch*net then

goto 5goto 20endif!..............

for i=1 to nchfor j=1 to net+1mi[i][j]=0next jnext i

!.............. au dessus ou au dessousif hj=1 thenhv=1else

if hj=net+1 thenhv=-1else

if hj>2 and hj<net+2 then

if rnd(1)>0.5 thenhv=1else hv=-1endif

endifendif!..............

!...................................................................... reservation30:

if rnd(1)>0.5 then!.... si oui en horiz

if rnd(1)>0.5 then !....si oui ‡ droite 50: if hi+pad<=nch and ncr<ncm then

if l[hi+pad][hj]=0 then

if o[hi+pad][hj]=0 then

o[hi+pad][hj]=1

ncr=ncr+1

else pad=pad+1:goto 50endif

endifelse !.... ‡ gauche

60: if hi-pag>0 and ncr<ncm thenif l[hi-pag][hj]=0 then

if o[hi-pag][hj]=0 then

o[hi-pag][hj]=1

ncr=ncr+1

else pag=pag+1:goto 60endif

endifendif

else!.... en verticalif l[hi][hj+hv]=0 and ncr<ncm then

if o[hi][hj+hv]=0 theno[hi][hj+hv]=1ncr=ncr+1

elseif rnd(1)>0.5 then !....si oui ‡ droite70: if hi+pavd<=nch and ncr<ncm then

if l[hi+pavd][hj+hv]=0 then

if o[hi+pavd][hj+hv]=0 then

o[hi+pavd][hj+hv]=1

ncr=ncr+1

else pavd=pavd+1:goto 70endif

endifelse !.... ‡ gauche80: if hi-pavg>0 and ncr<ncm then

if l[hi-pavg][hj+hv]=0 then

if o[hi-pavg][hj+hv]=0 then

o[hi-pavg][hj+hv]=1

ncr=ncr+1

else pavg=pavg+1:goto 80endif

endifendif

endifendif

endift=t+1!......................................................................

!............................test de profondeur de calculif t>pr then

uu=uu+1if uu>pr then goto 5goto 20

endif!............................

cherche si le développement est possible sur les cellules libre & voisines

choisi le développement au dessus ou en dessous de la cellule d’ancrage

GDL

Page 15: PROCESS & ALEA

!...................................................................... reservation30:

if rnd(1)>0.5 then!.... si oui en horiz

if rnd(1)>0.5 then !....si oui ‡ droite 50: if hi+pad<=nch and ncr<ncm then

if l[hi+pad][hj]=0 then

if o[hi+pad][hj]=0 then

o[hi+pad][hj]=1

ncr=ncr+1

else pad=pad+1:goto 50endif

endifelse !.... ‡ gauche

60: if hi-pag>0 and ncr<ncm thenif l[hi-pag][hj]=0 then

if o[hi-pag][hj]=0 then

o[hi-pag][hj]=1

ncr=ncr+1

else pag=pag+1:goto 60endif

endifendif

else!.... en verticalif l[hi][hj+hv]=0 and ncr<ncm then

if o[hi][hj+hv]=0 theno[hi][hj+hv]=1ncr=ncr+1

elseif rnd(1)>0.5 then !....si oui ‡ droite70: if hi+pavd<=nch and ncr<ncm then

if l[hi+pavd][hj+hv]=0 then

if o[hi+pavd][hj+hv]=0 then

o[hi+pavd][hj+hv]=1

ncr=ncr+1

else pavd=pavd+1:goto 70endif

endifelse !.... ‡ gauche80: if hi-pavg>0 and ncr<ncm then

if l[hi-pavg][hj+hv]=0 then

if o[hi-pavg][hj+hv]=0 then

o[hi-pavg][hj+hv]=1

ncr=ncr+1

else pavg=pavg+1:goto 80endif

endifendif

endifendif

endift=t+1!......................................................................

GDL

fixe une configuration valide

Page 16: PROCESS & ALEA

cellules

Page 17: PROCESS & ALEA

gdl!............................test de profondeur de calculif t>pr then

uu=uu+1if uu>pr then goto 5goto 20

endif!............................!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! pose des lgtsif ncr>ncm then goto 20if ncm>ncr then goto 30uu=uu+1if uu>pr then goto 5rp1=0:rp2=0

for i=1 to nchfor j=1 to net+1if o[i][j]=1 then

MI[i][j]=1endif

next jnext i

!____________________________________________________________________________________________ contoursscl=rnd(90)DEFINE MATERIAL "aleab" 1,!0.2,0.3,0.4min(sin(scl),1), min(sin(scl+45),1), min(sin(scl+90),1),!! surface RGB [0.0..1.0]1-0.3*rnd(1)^2, 1-0.3*rnd(1)^2, 1-0.3*rnd(1)^2, 0,! ambient, diffuse, specular, transparent! coefficients [0.0..1.0]rnd(16)+4,! shining [0.0..100.0]max((rnd(2)^3)/2,0.3)!! transparency attenuation [0.0..4.0]material aleab

limite la recherche de configuration pour

passer à une surface de logement inférieur et

plus facile à placer

commence la pose d’une configuration valide,

en créant une apparence (matière numérique

paramétrée) spécifique au logement

Page 18: PROCESS & ALEA

gdlCI[i][j]="aleab"eps=int(rnd(3)+1)*ken!______________________bande humidelb=3.60-eps!______________________servi

dcm[i][j]=int(rnd(2))*ken!.................................................................DECALAGE GROSSES BOITES/COURSIVE

dcn[i][j]=int(rnd(2))*ken!.................................................................DECALAGE PETITES BOITES/COURSIVE

if o[i][j]=1 then if l[i][j]=0 then

add (i-1)*(lb+eps+epc),0,(j-1)*(hb+epc)-0.0if rp1=0 then

add -epc,dcm[i][j],-epcblock epc,2.7-dcm[i][j],hb+0.4:rp1=1!pignonaddy 2.7-dcm[i][j]

material verreaddx 0.18block 0.02,4.5,hb+0.2del 1

material "Lavis Blanc"

for jj=0 to 4

addy jj*0.9

alh=int(rnd(2))*(hb+0.4)

if alh>0 then

block 0.2,0.9,alh

endif

del 1

next jjaddy +4.5block epc,8-2.7+dcm[i][j]-4.5,hb+0.4del 1

del 1del 1

endif

if MI[i+1][j]=0 thenif

rp2=0 then

add lb+eps,dcn[i][j],-epc

divise les cellule en deux partie égale ou non pour moduler leur position par

rapport à la coursive

Page 19: PROCESS & ALEA

décalage des fractions de cellules

Page 20: PROCESS & ALEA

balcon

Page 21: PROCESS & ALEA

plan

Page 22: PROCESS & ALEA

façades

Page 23: PROCESS & ALEA

façade coursive

Page 24: PROCESS & ALEA

façade balcon

Page 25: PROCESS & ALEA

entropie synchrone

Page 26: PROCESS & ALEA

paysage vivant

Page 27: PROCESS & ALEA

Constitution des cheminements piétons et cyclistes

Page 28: PROCESS & ALEA

les cheminements supplémentaires se dessinent par l’usage.Cliquez sur l’image

Une fois le projet installé, …