home *** CD-ROM | disk | FTP | other *** search
/ ftp.dds.no / ftp.dds.no.tar / ftp.dds.no / pub / Customers / sys-js.txt / TroxPegasusB.js < prev    next >
Text File  |  2014-05-06  |  4KB  |  106 lines

  1. function DdsScript.Draw()
  2.   {
  3.   var 
  4.   dTwist = GdpVariable.Get(5),
  5.   HorizontalDir = GdpVariable.Get(6),
  6.     VerticalDir = GdpVariable.Get(7),
  7.   i_Medium = parseInt(GdpVariable.Get(8)),
  8.   i_mmDuctW = (GdpVariable.Get(9) * 1000),
  9.     i_mmDuctH = (GdpVariable.Get(10) * 1000),
  10.   i_mDuctW = GdpVariable.Get(9),
  11.   i_mDuctH = GdpVariable.Get(10),
  12.     i_mPlenumX = GdpVariable.Get(12),
  13.   i_mPlenumY = GdpVariable.Get(13),
  14.   i_mPlenumZ = GdpVariable.Get(14),
  15.   i_mTerminalX = GdpVariable.Get(16),
  16.   i_mTerminalY = GdpVariable.Get(17),
  17.   i_mTerminalZ = GdpVariable.Get(21),
  18.   d_mSleeveZ = GdpVariable.Get(15),
  19.   i_FloodFill = GdpVariable.Get(18),
  20.   i_TypeJunction = GdpVariable.Get(29),
  21.   d_DistToFloor = GdpVariable.Get(31),
  22.   i_Country = GdpVariable.Get(54),
  23.     i_ViewState = GdpVariable.Get(55),
  24.     a_Angle = GdpVariable.Get(25),
  25.   r_Angle = GdpVariable.Get(25) * (Math.PI / 180),
  26.     d_Radius = GdpVariable.Get(11),
  27.   d_DZ = d_mSleeveZ-.5*i_mPlenumZ,
  28.     boTopConnect = GdpVariable.Get(30),
  29.     boTerminalOnly = false,
  30.     boTerminalRect = false,
  31.     boPlenumRect = false,
  32.   boFloodFill = false,
  33.   boUseIP = true,
  34.   boLouvre = false,
  35.   boTrox = false,
  36.   boNor = false,
  37.   boSupply = false,
  38.   boVentistaal = false,
  39.   iDetailLevel = DdsDraw.DetailLevel().DetailLevel(),
  40.   dCurL = new DdsCurvedLine2d(),
  41.   pointlist = new DdsPoint2dList(),
  42.   endVar;
  43.  with(GdpCommand){
  44.     Process("MO", 0, 0, 0);
  45.     Process("MO", -i_mPlenumX, 0, i_mPlenumZ*.5);
  46.     Process("IP", 10, i_mmDuctW, 180, 0);
  47.     Process("MO", 0, 0, 0);
  48.     }
  49.     with(DdsDraw){
  50.       switch(Type()){
  51.         case 1:
  52.         TransfPush();
  53.         TranslateXYZ(0, -i_mPlenumY*.5, 0);
  54.         Rect(-i_mPlenumX, i_mPlenumY);
  55.         RotateX(Math.PI*.5);
  56.         Rect(-i_mPlenumX, i_mPlenumZ);
  57.         RotateX(-Math.PI*.5);
  58.         RotateY(Math.PI*.5);
  59.         Rect(-i_mPlenumZ, i_mPlenumY);
  60.         RotateY(-Math.PI*.5);
  61.         TranslateXYZ(0, -(i_mTerminalY*.5 - i_mPlenumY*.5), -(i_mTerminalX - i_mPlenumZ)*.5);
  62.         Box(.01, i_mTerminalY, i_mTerminalX);
  63.         TransfPop();
  64.         TranslateXYZ(-i_mPlenumX, -i_mDuctW*.5, 0);
  65.         Rect(-i_mDuctW*.2, i_mDuctW);
  66.         TranslateXYZ(0, i_mDuctW*.5, i_mPlenumZ*.5);
  67.         RotateY(Math.PI*.5);
  68.         Circle(i_mDuctW*.5);
  69.         break;
  70.         default:
  71.         TransfPush();
  72.         TranslateXYZ(0, -i_mPlenumY*.5, 0);
  73.         Box(-i_mPlenumX, i_mPlenumY, i_mPlenumZ);
  74.         TranslateXYZ(0, -(i_mTerminalY*.5 - i_mPlenumY*.5), -(i_mTerminalX - i_mPlenumZ)*.5);
  75.         Box(.01, i_mTerminalY, i_mTerminalX);
  76.         TranslateXYZ(.01, 0, 0);
  77.         RotateX(Math.PI*.5);
  78.         RotateY(Math.PI*.5);
  79.         if(iDetailLevel > 2)
  80.         fGrille(i_mTerminalY, i_mTerminalX)
  81.         TransfPop();
  82.         function fGrille(i_mTerminalY, i_mTerminalX){
  83.           with(DdsDraw){
  84.             var 
  85.             negFactor = 1,
  86.             hole = .01,
  87.             holehalf = .005,
  88.             iNumHoleX = (i_mTerminalY / hole)-1,
  89.             iNumHoleY = (i_mTerminalX / hole)-1;
  90.             TranslateXYZ(hole, hole, 0);
  91.             for(j = 1; j < iNumHoleY; ++j)
  92.                 {
  93.                 for(i = 0; i < iNumHoleX-1; ++i){
  94.                   ConeCutOnTop(holehalf, holehalf*.8, holehalf*.4, false, false);
  95.                   TranslateXYZ(hole * negFactor, 0, 0);
  96.                 }
  97.                 negFactor = negFactor * -1;
  98.                 TranslateXYZ(0, hole, 0);
  99.               }
  100.           }
  101.         }
  102.         break;
  103.       }
  104.     }
  105.   }
  106.