home *** CD-ROM | disk | FTP | other *** search
/ The Best of Windows 95.com 1996 December / WIN95_DEC_1996_1.ISO / vrml / cp2b2x.exe / DATA.Z / buggy.java < prev    next >
Text File  |  1996-06-21  |  27KB  |  729 lines

  1. import vs.*;
  2. import vrml.*;
  3.  
  4. public class buggy extends Script{
  5.  
  6.     float aRad = (float) (Math.PI/180.0) ;
  7.  
  8.     // get the reference to the buggy.
  9.     SFRotation buggyRt = (SFRotation)getEventOut("buggyRt");
  10.     SFVec3f buggyTr = (SFVec3f)getEventOut("buggyTr");
  11.  
  12.     int count;
  13.     boolean ride = false;
  14.     float[] positionX;
  15.     float[] positionY;
  16.     float[] positionZ;
  17.     float[] angle;
  18.     float[] translation;
  19.     float[] rotation;
  20.  
  21.     float   rotkeep = 0.0f ;
  22.  
  23.     // initialize
  24.     public buggy()
  25.     {
  26.  
  27.         positionX = new float[156];
  28.         positionY = new float[156];
  29.         positionZ = new float[156];
  30.         angle = new float[156];
  31.         translation = new float[3];
  32.         rotation = new float[4];
  33.  
  34.         positionX[0] = 0f;
  35.         positionY[0] = 0f;
  36.         positionZ[0] = 0f;
  37.         angle[0] = 8f;
  38.         positionX[1] = 1.6860041666666667f;
  39.         positionY[1] = 0f;
  40.         positionZ[1] = 0.66982366666666671f;
  41.         angle[1] = 8f;
  42.         positionX[2] = 3.3720083333333335f;
  43.         positionY[2] = 0f;
  44.         positionZ[2] = 1.3396473333333334f;
  45.         angle[2] = 8f;
  46.         positionX[3] = 5.0580125000000002f;
  47.         positionY[3] = 0f;
  48.         positionZ[3] = 2.009471f;
  49.         angle[3] = 8f;
  50.         positionX[4] = 6.744016666666667f;
  51.         positionY[4] = 0f;
  52.         positionZ[4] = 2.6792946666666668f;
  53.         angle[4] = 8f;
  54.         positionX[5] = 8.4300208333333337f;
  55.         positionY[5] = 0f;
  56.         positionZ[5] = 3.3491183333333336f;
  57.         angle[5] = 8f;
  58.         positionX[6] = 10.116025f;
  59.         positionY[6] = 0f;
  60.         positionZ[6] = 4.018942f;
  61.         angle[6] = -0.16666666666666666f;
  62.         positionX[7] = 12.606768166666667f;
  63.         positionY[7] = 0f;
  64.         positionZ[7] = 3.8301841666666667f;
  65.         angle[7] = -0.16666666666666666f;
  66.         positionX[8] = 15.097511333333333f;
  67.         positionY[8] = 0f;
  68.         positionZ[8] = 3.6414263333333334f;
  69.         angle[8] = -0.16666666666666666f;
  70.         positionX[9] = 17.588254499999998f;
  71.         positionY[9] = 0f;
  72.         positionZ[9] = 3.4526684999999997f;
  73.         angle[9] = -0.16666666666666666f;
  74.         positionX[10] = 20.078997666666666f;
  75.         positionY[10] = 0f;
  76.         positionZ[10] = 3.2639106666666664f;
  77.         angle[10] = -0.16666666666666666f;
  78.         positionX[11] = 22.569740833333334f;
  79.         positionY[11] = 0f;
  80.         positionZ[11] = 3.0751528333333331f;
  81.         angle[11] = -0.16666666666666666f;
  82.         positionX[12] = 25.060483999999999f;
  83.         positionY[12] = 0f;
  84.         positionZ[12] = 2.8863949999999998f;
  85.         angle[12] = -4.333333333333333f;
  86.         positionX[13] = 26.392081333333334f;
  87.         positionY[13] = 0f;
  88.         positionZ[13] = 3.2848861666666664f;
  89.         angle[13] = -4.333333333333333f;
  90.         positionX[14] = 27.723678666666668f;
  91.         positionY[14] = 0f;
  92.         positionZ[14] = 3.6833773333333331f;
  93.         angle[14] = -4.333333333333333f;
  94.         positionX[15] = 29.055275999999999f;
  95.         positionY[15] = 0f;
  96.         positionZ[15] = 4.0818684999999997f;
  97.         angle[15] = -4.333333333333333f;
  98.         positionX[16] = 30.386873333333334f;
  99.         positionY[16] = 0f;
  100.         positionZ[16] = 4.4803596666666667f;
  101.         angle[16] = -4.333333333333333f;
  102.         positionX[17] = 31.718470666666668f;
  103.         positionY[17] = 0f;
  104.         positionZ[17] = 4.8788508333333329f;
  105.         angle[17] = -4.333333333333333f;
  106.         positionX[18] = 33.050068000000003f;
  107.         positionY[18] = 0f;
  108.         positionZ[18] = 5.277342f;
  109.         angle[18] = -4.166666666666667f;
  110.         positionX[19] = 33.72726766666667f;
  111.         positionY[19] = 0f;
  112.         positionZ[19] = 5.9348884999999996f;
  113.         angle[19] = -4.166666666666667f;
  114.         positionX[20] = 34.404467333333336f;
  115.         positionY[20] = 0f;
  116.         positionZ[20] = 6.592435f;
  117.         angle[20] = -4.166666666666667f;
  118.         positionX[21] = 35.081667000000003f;
  119.         positionY[21] = 0f;
  120.         positionZ[21] = 7.2499815000000005f;
  121.         angle[21] = -4.166666666666667f;
  122.         positionX[22] = 35.75886666666667f;
  123.         positionY[22] = 0f;
  124.         positionZ[22] = 7.9075280000000001f;
  125.         angle[22] = -4.166666666666667f;
  126.         positionX[23] = 36.436066333333336f;
  127.         positionY[23] = 0f;
  128.         positionZ[23] = 8.5650744999999997f;
  129.         angle[23] = -4.166666666666667f;
  130.         positionX[24] = 37.113266000000003f;
  131.         positionY[24] = 0f;
  132.         positionZ[24] = 9.2226210000000002f;
  133.         angle[24] = -6.5f;
  134.         positionX[25] = 37.227214833333335f;
  135.         positionY[25] = 0f;
  136.         positionZ[25] = 9.9868858333333339f;
  137.         angle[25] = -6.5f;
  138.         positionX[26] = 37.341163666666667f;
  139.         positionY[26] = 0f;
  140.         positionZ[26] = 10.751150666666668f;
  141.         angle[26] = -6.5f;
  142.         positionX[27] = 37.455112499999998f;
  143.         positionY[27] = 0f;
  144.         positionZ[27] = 11.5154155f;
  145.         angle[27] = -6.5f;
  146.         positionX[28] = 37.569061333333337f;
  147.         positionY[28] = 0f;
  148.         positionZ[28] = 12.279680333333333f;
  149.         angle[28] = -6.5f;
  150.         positionX[29] = 37.683010166666669f;
  151.         positionY[29] = 0f;
  152.         positionZ[29] = 13.043945166666667f;
  153.         angle[29] = -6.5f;
  154.         positionX[30] = 37.796959000000001f;
  155.         positionY[30] = 0f;
  156.         positionZ[30] = 13.808210000000001f;
  157.         angle[30] = -2.6666666666666665f;
  158.         positionX[31] = 37.622388833333332f;
  159.         positionY[31] = 0f;
  160.         positionZ[31] = 14.417009f;
  161.         angle[31] = -2.6666666666666665f;
  162.         positionX[32] = 37.44781866666667f;
  163.         positionY[32] = 0f;
  164.         positionZ[32] = 15.025808f;
  165.         angle[32] = -2.6666666666666665f;
  166.         positionX[33] = 37.273248500000001f;
  167.         positionY[33] = 0f;
  168.         positionZ[33] = 15.634606999999999f;
  169.         angle[33] = -2.6666666666666665f;
  170.         positionX[34] = 37.098678333333332f;
  171.         positionY[34] = 0f;
  172.         positionZ[34] = 16.243406f;
  173.         angle[34] = -2.6666666666666665f;
  174.         positionX[35] = 36.92410816666667f;
  175.         positionY[35] = 0f;
  176.         positionZ[35] = 16.852204999999998f;
  177.         angle[35] = -2.6666666666666665f;
  178.         positionX[36] = 36.749538000000001f;
  179.         positionY[36] = 0f;
  180.         positionZ[36] = 17.461003999999999f;
  181.         angle[36] = -12.333333333333334f;
  182.         positionX[37] = 36.094400666666665f;
  183.         positionY[37] = 0f;
  184.         positionZ[37] = 18.360226999999998f;
  185.         angle[37] = -12.333333333333334f;
  186.         positionX[38] = 35.439263333333336f;
  187.         positionY[38] = 0f;
  188.         positionZ[38] = 19.259450000000001f;
  189.         angle[38] = -12.333333333333334f;
  190.         positionX[39] = 34.784126000000001f;
  191.         positionY[39] = 0f;
  192.         positionZ[39] = 20.158673f;
  193.         angle[39] = -12.333333333333334f;
  194.         positionX[40] = 34.128988666666665f;
  195.         positionY[40] = 0f;
  196.         positionZ[40] = 21.057896f;
  197.         angle[40] = -12.333333333333334f;
  198.         positionX[41] = 33.473851333333336f;
  199.         positionY[41] = 0f;
  200.         positionZ[41] = 21.957119000000002f;
  201.         angle[41] = -12.333333333333334f;
  202.         positionX[42] = 32.818714f;
  203.         positionY[42] = 0f;
  204.         positionZ[42] = 22.856342000000001f;
  205.         angle[42] = 0f;
  206.         positionX[43] = 30.710616333333334f;
  207.         positionY[43] = 0f;
  208.         positionZ[43] = 23.214181333333336f;
  209.         angle[43] = 0f;
  210.         positionX[44] = 28.602518666666665f;
  211.         positionY[44] = 0f;
  212.         positionZ[44] = 23.572020666666667f;
  213.         angle[44] = 0f;
  214.         positionX[45] = 26.494420999999999f;
  215.         positionY[45] = 0f;
  216.         positionZ[45] = 23.929860000000001f;
  217.         angle[45] = 0f;
  218.         positionX[46] = 24.38632333333333f;
  219.         positionY[46] = 0f;
  220.         positionZ[46] = 24.287699333333336f;
  221.         angle[46] = 0f;
  222.         positionX[47] = 22.278225666666664f;
  223.         positionY[47] = 0f;
  224.         positionZ[47] = 24.645538666666667f;
  225.         angle[47] = 0f;
  226.         positionX[48] = 20.170127999999998f;
  227.         positionY[48] = 0f;
  228.         positionZ[48] = 25.003378000000001f;
  229.         angle[48] = 0f;
  230.         positionX[49] = 15.837429166666666f;
  231.         positionY[49] = 0f;
  232.         positionZ[49] = 25.097327f;
  233.         angle[49] = 0f;
  234.         positionX[50] = 11.504730333333333f;
  235.         positionY[50] = 0f;
  236.         positionZ[50] = 25.191276000000002f;
  237.         angle[50] = 0f;
  238.         positionX[51] = 7.1720314999999992f;
  239.         positionY[51] = 0f;
  240.         positionZ[51] = 25.285225000000001f;
  241.         angle[51] = 0f;
  242.         positionX[52] = 2.8393326666666674f;
  243.         positionY[52] = 0f;
  244.         positionZ[52] = 25.379173999999999f;
  245.         angle[52] = 0f;
  246.         positionX[53] = -1.4933661666666644f;
  247.         positionY[53] = 0f;
  248.         positionZ[53] = 25.473123000000001f;
  249.         angle[53] = 0f;
  250.         positionX[54] = -5.8260649999999998f;
  251.         positionY[54] = 0f;
  252.         positionZ[54] = 25.567072f;
  253.         angle[54] = 0f;
  254.         positionX[55] = -8.4927316666666659f;
  255.         positionY[55] = 0f;
  256.         positionZ[55] = 25.400405333333332f;
  257.         angle[55] = 0f;
  258.         positionX[56] = -11.159398333333332f;
  259.         positionY[56] = 0f;
  260.         positionZ[56] = 25.233738666666667f;
  261.         angle[56] = 0f;
  262.         positionX[57] = -13.826065f;
  263.         positionY[57] = 0f;
  264.         positionZ[57] = 25.067072f;
  265.         angle[57] = 0f;
  266.         positionX[58] = -16.492731666666664f;
  267.         positionY[58] = 0f;
  268.         positionZ[58] = 24.900405333333332f;
  269.         angle[58] = 0f;
  270.         positionX[59] = -19.159398333333332f;
  271.         positionY[59] = 0f;
  272.         positionZ[59] = 24.733738666666667f;
  273.         angle[59] = 0f;
  274.         positionX[60] = -21.826065f;
  275.         positionY[60] = 0f;
  276.         positionZ[60] = 24.567072f;
  277.         angle[60] = -6.333333333333333f;
  278.         positionX[61] = -23.445734000000002f;
  279.         positionY[61] = 0f;
  280.         positionZ[61] = 24.207999999999998f;
  281.         angle[61] = -6.333333333333333f;
  282.         positionX[62] = -25.065403f;
  283.         positionY[62] = 0f;
  284.         positionZ[62] = 23.848928000000001f;
  285.         angle[62] = -6.333333333333333f;
  286.         positionX[63] = -26.685071999999998f;
  287.         positionY[63] = 0f;
  288.         positionZ[63] = 23.489856f;
  289.         angle[63] = -6.333333333333333f;
  290.         positionX[64] = -28.304741f;
  291.         positionY[64] = 0f;
  292.         positionZ[64] = 23.130783999999998f;
  293.         angle[64] = -6.333333333333333f;
  294.         positionX[65] = -29.924410000000002f;
  295.         positionY[65] = 0f;
  296.         positionZ[65] = 22.771712000000001f;
  297.         angle[65] = -6.333333333333333f;
  298.         positionX[66] = -31.544079f;
  299.         positionY[66] = 0f;
  300.         positionZ[66] = 22.41264f;
  301.         angle[66] = -5.5f;
  302.         positionX[67] = -32.699429333333335f;
  303.         positionY[67] = 0f;
  304.         positionZ[67] = 21.236946499999998f;
  305.         angle[67] = -5.5f;
  306.         positionX[68] = -33.854779666666666f;
  307.         positionY[68] = 0f;
  308.         positionZ[68] = 20.061253000000001f;
  309.         angle[68] = -5.5f;
  310.         positionX[69] = -35.010129999999997f;
  311.         positionY[69] = 0f;
  312.         positionZ[69] = 18.885559499999999f;
  313.         angle[69] = -5.5f;
  314.         positionX[70] = -36.165480333333335f;
  315.         positionY[70] = 0f;
  316.         positionZ[70] = 17.709866000000002f;
  317.         angle[70] = -5.5f;
  318.         positionX[71] = -37.320830666666666f;
  319.         positionY[71] = 0f;
  320.         positionZ[71] = 16.5341725f;
  321.         angle[71] = -5.5f;
  322.         positionX[72] = -38.476180999999997f;
  323.         positionY[72] = 0f;
  324.         positionZ[72] = 15.358479000000001f;
  325.         angle[72] = -3.1666666666666665f;
  326.         positionX[73] = -38.677782666666666f;
  327.         positionY[73] = 0f;
  328.         positionZ[73] = 14.549899333333334f;
  329.         angle[73] = -3.1666666666666665f;
  330.         positionX[74] = -38.879384333333334f;
  331.         positionY[74] = 0f;
  332.         positionZ[74] = 13.741319666666667f;
  333.         angle[74] = -3.1666666666666665f;
  334.         positionX[75] = -39.080985999999996f;
  335.         positionY[75] = 0f;
  336.         positionZ[75] = 12.932740000000001f;
  337.         angle[75] = -3.1666666666666665f;
  338.         positionX[76] = -39.282587666666664f;
  339.         positionY[76] = 0f;
  340.         positionZ[76] = 12.124160333333334f;
  341.         angle[76] = -3.1666666666666665f;
  342.         positionX[77] = -39.484189333333333f;
  343.         positionY[77] = 0f;
  344.         positionZ[77] = 11.315580666666667f;
  345.         angle[77] = -3.1666666666666665f;
  346.         positionX[78] = -39.685791000000002f;
  347.         positionY[78] = 0f;
  348.         positionZ[78] = 10.507001000000001f;
  349.         angle[78] = -5.333333333333333f;
  350.         positionX[79] = -39.36445616666667f;
  351.         positionY[79] = 0f;
  352.         positionZ[79] = 9.2181963333333332f;
  353.         angle[79] = -5.333333333333333f;
  354.         positionX[80] = -39.043121333333332f;
  355.         positionY[80] = 0f;
  356.         positionZ[80] = 7.9293916666666675f;
  357.         angle[80] = -5.333333333333333f;
  358.         positionX[81] = -38.7217865f;
  359.         positionY[81] = 0f;
  360.         positionZ[81] = 6.640587f;
  361.         angle[81] = -5.333333333333333f;
  362.         positionX[82] = -38.400451666666669f;
  363.         positionY[82] = 0f;
  364.         positionZ[82] = 5.3517823333333334f;
  365.         angle[82] = -5.333333333333333f;
  366.         positionX[83] = -38.07911683333333f;
  367.         positionY[83] = 0f;
  368.         positionZ[83] = 4.0629776666666668f;
  369.         angle[83] = -5.333333333333333f;
  370.         positionX[84] = -37.757781999999999f;
  371.         positionY[84] = 0f;
  372.         positionZ[84] = 2.7741730000000002f;
  373.         angle[84] = -5.666666666666667f;
  374.         positionX[85] = -36.21767333333333f;
  375.         positionY[85] = 0f;
  376.         positionZ[85] = 1.6190343333333335f;
  377.         angle[85] = -5.666666666666667f;
  378.         positionX[86] = -34.677564666666669f;
  379.         positionY[86] = 0f;
  380.         positionZ[86] = 0.46389566666666671f;
  381.         angle[86] = -5.666666666666667f;
  382.         positionX[87] = -33.137456f;
  383.         positionY[87] = 0f;
  384.         positionZ[87] = -0.69124300000000005f;
  385.         angle[87] = -5.666666666666667f;
  386.         positionX[88] = -31.597347333333335f;
  387.         positionY[88] = 0f;
  388.         positionZ[88] = -1.8463816666666668f;
  389.         angle[88] = -5.666666666666667f;
  390.         positionX[89] = -30.05723866666667f;
  391.         positionY[89] = 0f;
  392.         positionZ[89] = -3.0015203333333336f;
  393.         angle[89] = -5.666666666666667f;
  394.         positionX[90] = -28.517130000000002f;
  395.         positionY[90] = 0f;
  396.         positionZ[90] = -4.1566590000000003f;
  397.         angle[90] = 4.833333333333333f;
  398.         positionX[91] = -27.3380945f;
  399.         positionY[91] = 0f;
  400.         positionZ[91] = -4.7704258333333334f;
  401.         angle[91] = 4.833333333333333f;
  402.         positionX[92] = -26.159059000000003f;
  403.         positionY[92] = 0f;
  404.         positionZ[92] = -5.3841926666666673f;
  405.         angle[92] = 4.833333333333333f;
  406.         positionX[93] = -24.980023500000001f;
  407.         positionY[93] = 0f;
  408.         positionZ[93] = -5.9979595000000003f;
  409.         angle[93] = 4.833333333333333f;
  410.         positionX[94] = -23.800988f;
  411.         positionY[94] = 0f;
  412.         positionZ[94] = -6.6117263333333334f;
  413.         angle[94] = 4.833333333333333f;
  414.         positionX[95] = -22.621952499999999f;
  415.         positionY[95] = 0f;
  416.         positionZ[95] = -7.2254931666666673f;
  417.         angle[95] = 4.833333333333333f;
  418.         positionX[96] = -21.442917000000001f;
  419.         positionY[96] = 0f;
  420.         positionZ[96] = -7.8392600000000003f;
  421.         angle[96] = 2.6666666666666665f;
  422.         positionX[97] = -20.8498205f;
  423.         positionY[97] = 0f;
  424.         positionZ[97] = -9.0288275000000002f;
  425.         angle[97] = 2.6666666666666665f;
  426.         positionX[98] = -20.256724000000002f;
  427.         positionY[98] = 0f;
  428.         positionZ[98] = -10.218395000000001f;
  429.         angle[98] = 2.6666666666666665f;
  430.         positionX[99] = -19.6636275f;
  431.         positionY[99] = 0f;
  432.         positionZ[99] = -11.4079625f;
  433.         angle[99] = 2.6666666666666665f;
  434.         positionX[100] = -19.070530999999999f;
  435.         positionY[100] = 0f;
  436.         positionZ[100] = -12.597530000000001f;
  437.         angle[100] = 2.6666666666666665f;
  438.         positionX[101] = -18.477434500000001f;
  439.         positionY[101] = 0f;
  440.         positionZ[101] = -13.787097500000002f;
  441.         angle[101] = 2.6666666666666665f;
  442.         positionX[102] = -17.884338f;
  443.         positionY[102] = 0f;
  444.         positionZ[102] = -14.976665000000001f;
  445.         angle[102] = -3.3333333333333335f;
  446.         positionX[103] = -17.634600333333331f;
  447.         positionY[103] = 0f;
  448.         positionZ[103] = -15.594787500000001f;
  449.         angle[103] = -3.3333333333333335f;
  450.         positionX[104] = -17.384862666666667f;
  451.         positionY[104] = 0f;
  452.         positionZ[104] = -16.212910000000001f;
  453.         angle[104] = -3.3333333333333335f;
  454.         positionX[105] = -17.135125000000002f;
  455.         positionY[105] = 0f;
  456.         positionZ[105] = -16.831032499999999f;
  457.         angle[105] = -3.3333333333333335f;
  458.         positionX[106] = -16.885387333333334f;
  459.         positionY[106] = 0f;
  460.         positionZ[106] = -17.449155000000001f;
  461.         angle[106] = -3.3333333333333335f;
  462.         positionX[107] = -16.635649666666666f;
  463.         positionY[107] = 0f;
  464.         positionZ[107] = -18.067277500000003f;
  465.         angle[107] = -3.3333333333333335f;
  466.         positionX[108] = -16.385912000000001f;
  467.         positionY[108] = 0f;
  468.         positionZ[108] = -18.685400000000001f;
  469.         angle[108] = -7f;
  470.         positionX[109] = -14.778351666666667f;
  471.         positionY[109] = 0f;
  472.         positionZ[109] = -19.809863333333332f;
  473.         angle[109] = -7f;
  474.         positionX[110] = -13.170791333333334f;
  475.         positionY[110] = 0f;
  476.         positionZ[110] = -20.934326666666667f;
  477.         angle[110] = -7f;
  478.         positionX[111] = -11.563231f;
  479.         positionY[111] = 0f;
  480.         positionZ[111] = -22.058790000000002f;
  481.         angle[111] = -7f;
  482.         positionX[112] = -9.9556706666666663f;
  483.         positionY[112] = 0f;
  484.         positionZ[112] = -23.183253333333333f;
  485.         angle[112] = -7f;
  486.         positionX[113] = -8.3481103333333326f;
  487.         positionY[113] = 0f;
  488.         positionZ[113] = -24.307716666666664f;
  489.         angle[113] = -7f;
  490.         positionX[114] = -6.7405499999999998f;
  491.         positionY[114] = 0f;
  492.         positionZ[114] = -25.432179999999999f;
  493.         angle[114] = -1.1666666666666667f;
  494.         positionX[115] = -5.4074196666666667f;
  495.         positionY[115] = 0f;
  496.         positionZ[115] = -25.408910333333331f;
  497.         angle[115] = -1.1666666666666667f;
  498.         positionX[116] = -4.0742893333333328f;
  499.         positionY[116] = 0f;
  500.         positionZ[116] = -25.385640666666667f;
  501.         angle[116] = -1.1666666666666667f;
  502.         positionX[117] = -2.7411589999999997f;
  503.         positionY[117] = 0f;
  504.         positionZ[117] = -25.362371f;
  505.         angle[117] = -1.1666666666666667f;
  506.         positionX[118] = -1.4080286666666666f;
  507.         positionY[118] = 0f;
  508.         positionZ[118] = -25.339101333333332f;
  509.         angle[118] = -1.1666666666666667f;
  510.         positionX[119] = -0.074898333333333511f;
  511.         positionY[119] = 0f;
  512.         positionZ[119] = -25.315831666666668f;
  513.         angle[119] = -1.1666666666666667f;
  514.         positionX[120] = 1.258232f;
  515.         positionY[120] = 0f;
  516.         positionZ[120] = -25.292562f;
  517.         angle[120] = -4.166666666666667f;
  518.         positionX[121] = 2.5913621666666669f;
  519.         positionY[121] = 0f;
  520.         positionZ[121] = -25.269292499999999f;
  521.         angle[121] = -4.166666666666667f;
  522.         positionX[122] = 3.9244923333333337f;
  523.         positionY[122] = 0f;
  524.         positionZ[122] = -25.246023000000001f;
  525.         angle[122] = -4.166666666666667f;
  526.         positionX[123] = 5.2576225000000001f;
  527.         positionY[123] = 0f;
  528.         positionZ[123] = -25.2227535f;
  529.         angle[123] = -4.166666666666667f;
  530.         positionX[124] = 6.5907526666666669f;
  531.         positionY[124] = 0f;
  532.         positionZ[124] = -25.199483999999998f;
  533.         angle[124] = -4.166666666666667f;
  534.         positionX[125] = 7.9238828333333338f;
  535.         positionY[125] = 0f;
  536.         positionZ[125] = -25.1762145f;
  537.         angle[125] = -4.166666666666667f;
  538.         positionX[126] = 9.2570130000000006f;
  539.         positionY[126] = 0f;
  540.         positionZ[126] = -25.152944999999999f;
  541.         angle[126] = -10.833333333333334f;
  542.         positionX[127] = 10.717474000000001f;
  543.         positionY[127] = 0f;
  544.         positionZ[127] = -23.884889999999999f;
  545.         angle[127] = -10.833333333333334f;
  546.         positionX[128] = 12.177935f;
  547.         positionY[128] = 0f;
  548.         positionZ[128] = -22.616834999999998f;
  549.         angle[128] = -10.833333333333334f;
  550.         positionX[129] = 13.638396f;
  551.         positionY[129] = 0f;
  552.         positionZ[129] = -21.348779999999998f;
  553.         angle[129] = -10.833333333333334f;
  554.         positionX[130] = 15.098856999999999f;
  555.         positionY[130] = 0f;
  556.         positionZ[130] = -20.080725000000001f;
  557.         angle[130] = -10.833333333333334f;
  558.         positionX[131] = 16.559317999999998f;
  559.         positionY[131] = 0f;
  560.         positionZ[131] = -18.812670000000001f;
  561.         angle[131] = -10.833333333333334f;
  562.         positionX[132] = 18.019779f;
  563.         positionY[132] = 0f;
  564.         positionZ[132] = -17.544615f;
  565.         angle[132] = -9.5f;
  566.         positionX[133] = 17.387657000000001f;
  567.         positionY[133] = 0f;
  568.         positionZ[133] = -16.380390999999999f;
  569.         angle[133] = -9.5f;
  570.         positionX[134] = 16.755535000000002f;
  571.         positionY[134] = 0f;
  572.         positionZ[134] = -15.216167f;
  573.         angle[134] = -9.5f;
  574.         positionX[135] = 16.123412999999999f;
  575.         positionY[135] = 0f;
  576.         positionZ[135] = -14.051943000000001f;
  577.         angle[135] = -9.5f;
  578.         positionX[136] = 15.491291f;
  579.         positionY[136] = 0f;
  580.         positionZ[136] = -12.887719000000001f;
  581.         angle[136] = -9.5f;
  582.         positionX[137] = 14.859169000000001f;
  583.         positionY[137] = 0f;
  584.         positionZ[137] = -11.723495f;
  585.         angle[137] = -9.5f;
  586.         positionX[138] = 14.227047000000001f;
  587.         positionY[138] = 0f;
  588.         positionZ[138] = -10.559271000000001f;
  589.         angle[138] = -4.333333333333333f;
  590.         positionX[139] = 12.944481333333334f;
  591.         positionY[139] = 0f;
  592.         positionZ[139] = -10.227577f;
  593.         angle[139] = -4.333333333333333f;
  594.         positionX[140] = 11.661915666666667f;
  595.         positionY[140] = 0f;
  596.         positionZ[140] = -9.8958830000000013f;
  597.         angle[140] = -4.333333333333333f;
  598.         positionX[141] = 10.379350000000001f;
  599.         positionY[141] = 0f;
  600.         positionZ[141] = -9.5641890000000007f;
  601.         angle[141] = -4.333333333333333f;
  602.         positionX[142] = 9.0967843333333338f;
  603.         positionY[142] = 0f;
  604.         positionZ[142] = -9.2324950000000001f;
  605.         angle[142] = -4.333333333333333f;
  606.         positionX[143] = 7.8142186666666671f;
  607.         positionY[143] = 0f;
  608.         positionZ[143] = -8.9008010000000013f;
  609.         angle[143] = -4.333333333333333f;
  610.         positionX[144] = 6.5316530000000004f;
  611.         positionY[144] = 0f;
  612.         positionZ[144] = -8.5691070000000007f;
  613.         angle[144] = 6.833333333333333f;
  614.         positionX[145] = 5.9324570000000003f;
  615.         positionY[145] = 0f;
  616.         positionZ[145] = -8.2768595000000005f;
  617.         angle[145] = 6.833333333333333f;
  618.         positionX[146] = 5.3332610000000003f;
  619.         positionY[146] = 0f;
  620.         positionZ[146] = -7.9846120000000003f;
  621.         angle[146] = 6.833333333333333f;
  622.         positionX[147] = 4.7340650000000002f;
  623.         positionY[147] = 0f;
  624.         positionZ[147] = -7.6923645f;
  625.         angle[147] = 6.833333333333333f;
  626.         positionX[148] = 4.1348690000000001f;
  627.         positionY[148] = 0f;
  628.         positionZ[148] = -7.4001170000000007f;
  629.         angle[148] = 6.833333333333333f;
  630.         positionX[149] = 3.5356730000000001f;
  631.         positionY[149] = 0f;
  632.         positionZ[149] = -7.1078695000000005f;
  633.         angle[149] = 6.833333333333333f;
  634.         positionX[150] = 2.936477f;
  635.         positionY[150] = 0f;
  636.         positionZ[150] = -6.8156220000000003f;
  637.         angle[150] = 14.166666666666666f;
  638.         positionX[151] = 2.4470641666666668f;
  639.         positionY[151] = 0f;
  640.         positionZ[151] = -5.6796850000000001f;
  641.         angle[151] = 14.166666666666666f;
  642.         positionX[152] = 1.9576513333333332f;
  643.         positionY[152] = 0f;
  644.         positionZ[152] = -4.5437480000000008f;
  645.         angle[152] = 14.166666666666666f;
  646.         positionX[153] = 1.4682385f;
  647.         positionY[153] = 0f;
  648.         positionZ[153] = -3.4078110000000006f;
  649.         angle[153] = 14.166666666666666f;
  650.         positionX[154] = 0.97882566666666659f;
  651.         positionY[154] = 0f;
  652.         positionZ[154] = -2.2718740000000004f;
  653.         angle[154] = 14.166666666666666f;
  654.         positionX[155] = 0.48941283333333319f;
  655.         positionY[155] = 0f;
  656.         positionZ[155] = -1.1359370000000002f;
  657.         angle[155] = 14.166666666666666f;
  658.  
  659.         // initialize count.
  660.         count = 0;
  661.         
  662.     // initial rotation.
  663.         rotation[0] = 0.0f;
  664.         rotation[1] = 1.0f;
  665.         rotation[2] = 0.0f;
  666.         rotkeep = 43.0f ;
  667.         rotation[3] = rotkeep * aRad ;
  668.  
  669.         buggyRt.setValue(rotation);
  670.     }
  671.  
  672.     // invoked every 350ms.
  673.     public void moveBuggy(ConstSFTime time, ConstSFTime ts)
  674.     {
  675.         //Transform personTransform = (Transform)Browser.getPerson();
  676.         
  677.         // move.
  678.         if (ride) {
  679.             translation[0] = positionX[count];
  680.             translation[1] = positionY[count];
  681.             translation[2] = positionZ[count];
  682.             buggyTr.setValue(translation);
  683.  
  684.             // rotate.
  685.         rotkeep += angle[count] ;
  686.             rotation[3] = rotkeep * aRad;
  687.             buggyRt.setValue(rotation);
  688.             // count up.
  689.             count++;
  690.             if(count >= 156){
  691.                 count = 0;
  692.             }
  693.          }
  694.  
  695.         // move the person with the car if the person is riding the car.
  696.         //if(true == ride){
  697.             // pull the viewpoint up.
  698.          //   translation[1] = translation[1] + 1.0f;
  699.  
  700.          // set the person position.
  701.          //   personTransform.translate(translation,
  702.          //                             personTransform.modeAbsolute);
  703.          //   personTransform.rotateDegree(rotation,
  704.          //                                personTransform.modeAbsolute);
  705.         //}
  706.  
  707.     }
  708.  
  709.     // get on/off the car.
  710.     public void getOnOff(ConstSFBool arg, ConstSFTime ts)
  711.     {
  712.         if(true == arg.getValue()){
  713.             // when the button is pressed, return immediately.
  714.             return;
  715.         }
  716.  
  717.         String s[] = {"html/drive.htm"};
  718.         Browser.loadWorld(s);
  719.         // the button is released.
  720.         if(true == ride){
  721.             ride = false;
  722.         }else{
  723.             ride = true;
  724.         }
  725.     }
  726. }
  727.  
  728.  
  729.