CAAD.HBT.ETHZ.CH . Caad0506st . AiTeamEMP

ETH Zuerich - Startseite
Professur für CAAD

 


caad d-arch

Edit | Attach | Backlinks: Web All webs | Printable | History: r22 < r21 < r20 < r19 < r18 More
-- AiFabianTroxler - 31 Oct 2005
-- AiAndreasAeschbacher - 31 Oct 2005




*E.M.P*

electro magnetic peanuts




CNC Verpackung

AiTeamEMP?rev=1;filename=verpackung_1.jpg

AiTeamEMP?rev=1;filename=verpackung_2.jpg


giesskanne:
giesskanne.jpg

palme:
palme.jpg

tischlein:
tischlein.jpg

gesamtkomposition:
rendering.jpg


Link: VektorWorksFile? des Schnittmusters



VectorScript: Pharao's Death

AiTeamEMP?rev=1;filename=valley.jpg

Procedure PharaosDeath;

VAR
   {   x= Bodenkante der Pyramide, h= höhe der Pyramide
      i= influence, Einfluss des Pharaos
      m= masstab
      d= Anzahl Tote für die eine Pyramide gebaut werden muss
      s= Anzahl Sklaven die an der Pyramide bauen müssen
      t= Zeit die für die Pyramide gebraucht wird
      ds= dead slaves, Sklaven die beim Bau umkommen
      dsm= dead slave mausoleums
      idsm= zähler für mausoleums
      q=
      h= höhe der pyramiden
      hk= ausgangshöhe
   }

   x,h,q,nx,ny,hk,q1,x1: Real;
   d,p,s,i,m,dx,ds,dsm, idsm: integer;
   
BEGIN
{
Parameter zum Einstellen
   Anzahl Pyramiden, wovon die des Pharaos grösser wird,
   Einfluss des Pharaos
   Massstabs mit dem das ganz gezeichnet wird
}

   d:=PPYRAMIDEN;
   i:=PEINFLUSS;
   m:=PMASSSTAB;
   s:=ROUND(i*RANDOM*100)+1;
   
   
   FOR dx:=1 TO d DO BEGIN


      {
      Wenn dx=1 dann ist es die Pyramide des Pharaos, die natürlich grösser ist.
      }

      IF (dx=1) THEN BEGIN
         hk:=s*i*(1/m)/100;
         h:=hk;
         x:=h;
         q:=sqrt(h^2+(x/2)^2);
         nx:=0;
         ny:=0;
      END;
      {
      Pyramide der Verwandten, Angestellten usw. 
      }
      IF NOT (dx=1) THEN BEGIN
         q1:=q;
         x1:=x;
         h:=hk*((RANDOM*0.3)+0.4);
         x:=h;
         q:=sqrt(h^2+(x/2)^2);
         ny:=ny+x1+q1+q;
         nx:=nx+x1/2;
         
      END;


      {
      zeichnen der Pyramiden, schwarz sind die gerizzten Linien, blau die geschnittenen
      }

      PenFore(255);
      moveto(nx,ny);
      lineto(nx,(ny+x));
      lineto((nx+x),(ny+x));
      lineto((nx+x),ny);
      lineto(nx,ny);
      PenFore(2);
      lineto((nx-q),ny+x/2);
      lineto(nx,(ny+x));
      lineto((nx+x/2),(ny+x+q));
      lineto(nx+x,ny+x);
      lineto((nx+x+q),(ny+x/2));
      lineto(nx+x,ny);
      lineto((nx+x/2),(ny-q));
      lineto(nx,ny);
      lineto((nx-q),(ny+x/2));
   END;


   {
   Je mehr Sklaven beim Bau tätig desto kleiner ist die Sterberrate, da bei wenigen Sklaven diese mehr schuften müssen
   }   

   IF (s<=10000) THEN BEGIN
      ds:=s*((RANDOM*0.2)+0.2);
   IF (s<=1000) THEN BEGIN
      ds:=s*((RANDOM*0.2)+0.3);
   END;
   IF (s<=100) THEN BEGIN
      ds:=s*((RANDOM*0.2)+0.4);
   END;
   hk:=hk+300/m;


   {
   Die Gräber der Sklaven müssen natürlich auch gebaut werden, pro 500
   Arbeiter ein Grab (5*4*3m)
   }

   dsm:=ROUND(ds/500);
   
   FOR idsm:=0 TO (dsm-1) DO BEGIN

      penfore(255);
      moveto((-(hk*1.5)),0+idsm*1100/m);
      lineto((-(hk*1.5)-500/m),0+idsm*1100/m);
      lineto((-(hk*1.5)-500/m),(400/m)+idsm*1100/m);
      lineto((-(hk*1.5)),(400/m)+idsm*1100/m);
      lineto((-(hk*1.5)),0+idsm*1100/m);
      penfore(2);
      lineto((-(hk*1.5)),(-300/m)+idsm*1100/m);
      lineto((-(hk*1.5)-500/m),(-300/m)+idsm*1100/m);
      lineto((-(hk*1.5)-500/m),0+idsm*1100/m);
      lineto((-(hk*1.5)-800/m),0+idsm*1100/m);
      lineto((-(hk*1.5)-800/m),(400/m)+idsm*1100/m);
      lineto((-(hk*1.5)-500/m),(400/m)+idsm*1100/m);
      lineto((-(hk*1.5)-500/m),(700/m)+idsm*1100/m);
      lineto((-(hk*1.5)),(700/m)+idsm*1100/m);
      lineto((-(hk*1.5)),(400/m)+idsm*1100/m);
      lineto((-(hk*1.5)+300/m),(400/m)+idsm*1100/m);
      lineto((-(hk*1.5)+300/m),0+idsm*1100/m);
      lineto((-(hk*1.5)),0+idsm*1100/m);
      END;
   
   
   END;

END;

run(PharaosDeath);


Flash animation:


Link: CAAD übung Homepage



Attachment sort Action Size Date Who Comment
jpg giesskanne.jpg manage 46.0 K 26 Jun 2006 - 07:32 AiAndreasAeschbacher giesskanne
jpg emp.jpg manage 36.7 K 03 Nov 2005 - 16:34 AiFabianTroxler  
jpg tischlein.jpg manage 50.3 K 26 Jun 2006 - 07:33 AiAndreasAeschbacher tischlein
jpg Insecure_by_Reusol.jpg manage 523.1 K 03 Nov 2005 - 08:49 AiAndreasAeschbacher  
else verpacken1.mcd manage 95.3 K 21 Jun 2006 - 16:04 AiFabianTroxler CNC_VektorWorks_file
else film_endversion.swf manage 3136.4 K 29 Jan 2006 - 19:00 AiFabianTroxler  
jpg 3DStudiomax.jpg manage 281.0 K 31 Oct 2005 - 15:45 AiFabianTroxler  
jpg valley.jpg manage 215.4 K 19 May 2006 - 12:56 AiAndreasAeschbacher  
jpg verpackung_2.jpg manage 95.1 K 21 Jun 2006 - 14:48 AiFabianTroxler CNC_Verpackung_2
jpg palme.jpg manage 87.7 K 26 Jun 2006 - 07:33 AiAndreasAeschbacher palme
jpg verpackung_1.jpg manage 87.3 K 21 Jun 2006 - 14:48 AiFabianTroxler CNC_Verpackung_1
jpg rendering.jpg manage 15.9 K 26 Jun 2006 - 07:35 AiFabianTroxler gesamtkomposition

Edit | Attach | Backlinks: Web All webs | Printable | History: r22 < r21 < r20 < r19 < r18 More

Revision r22 - 26 Jun 2006 - 07:36 - AiFabianTroxler
Parents: TWikiUsers > AiFabianTroxler

This website has been archived and is no longer maintained.