亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? navigator.java

?? java的一些教程 大家看看,很有用的
?? JAVA
字號(hào):
// Class Navigator is a subclass of Behavior that implements a 
// keyboard translation navigator. Navigator responds to certain 
// key presses by translating an object in a 3D scene.
package com.deitel.advjhtp1.java3dgame;

// Core Java packages
import java.awt.*;
import java.awt.event.*;
import java.util.*;

// Java extension packages
import javax.media.j3d.*;
import javax.vecmath.*;

// Java 3D utility packages
import com.sun.j3d.utils.universe.*;

public class Navigator extends Behavior {

   // TransformGroup associated with object controlled 
   // by keyboard navigator
   private TransformGroup objectTransform; 
    
   // translation amounts  
   private static final float LEFT = -0.02f;
   private static final float RIGHT = 0.02f;
   private static final float UP = 0.02f;
   private static final float DOWN = -0.02f;
   private static final float FORWARD = 0.02f;
   private static final float BACKWARD = -0.02f;

   // waking conditions for Behavior
   private WakeupCondition wakeupCondition;

   // constructor method
   public Navigator( TransformGroup transform )
   { 
      objectTransform = transform;
      
      // initialize WakeupOnAWTEvent to repond to 
      // AWT KeyEvent.KEY_PRESSED events
      WakeupOnAWTEvent wakeupEvent = 
         new WakeupOnAWTEvent( KeyEvent.KEY_PRESSED );
   
      // set of WakeupEvents to which Behavior responds 
      WakeupCriterion[] wakeupCriteria = { wakeupEvent };
      
      // Behavior responds when WakeupEvent in the 
      // WakeupCriterion occurs
      wakeupCondition = new WakeupOr( wakeupCriteria );
   
   } // end constructor

   // initialize Behavior's wakeup conditions
   public void initialize()
   { 
      // register WakeupCriterion to generate WakeupEvents
      // when AWT events occur
      wakeupOn( wakeupCondition ); 
   }

   // handle WakeupEvents
   public void processStimulus( Enumeration detected )
   { 
      // loop to handle events
      while ( detected.hasMoreElements() ) { 
         
         // get next WakeupCriterion
         WakeupCriterion wakeupCriterion = 
            ( WakeupCriterion ) detected.nextElement();
         
         // handle WakeupCriterion if WakeupOnAWTEvent
         if ( wakeupCriterion instanceof WakeupOnAWTEvent ) { 
            WakeupOnAWTEvent awtEvent = 
               (WakeupOnAWTEvent) wakeupCriterion;
            AWTEvent[] events = awtEvent.getAWTEvent();
            
            // invoke method moveObject with AWTEvent
            moveShape( events ); 
         } 
      }
      
      // re-register wakeupCondition to respond to next key press
      wakeupOn( wakeupCondition ); 
   
   } // end method processStimulus
   
   // handle AWT KeyEvents by translating an object in 3D scene
   private void moveShape( AWTEvent[] awtEvents )
   { 
      // handle all events in AWTEvent array 
      for ( int x = 0; x < awtEvents.length; x++)
      { 
         // handle if AWTEvent is KeyEvent
         if ( awtEvents[ x ] instanceof KeyEvent ) {
            
            // get cooresponding KeyEvent
            KeyEvent keyEvent = ( KeyEvent ) awtEvents[ x ];
            
            // respond only if KeyEvent is of type KEY_PRESSED 
            if ( keyEvent.getID() == KeyEvent.KEY_PRESSED ) { 
               
               // get KeyCode associated with KeyEvent
               int keyCode = keyEvent.getKeyCode();
               
               Transform3D transform3D = new Transform3D();
               
               // get Transform3D from TransformGroup of 
               // navigable object
               objectTransform.getTransform( transform3D );
               
               Vector3f translateVector = new Vector3f();
               
               // retrieve translation vector associated with 
               // Transform3D
               transform3D.get( translateVector );
               
               // update x, y, or z component of translation 
               // vector based on keypress
               switch ( keyCode ) { 
                  
                  case KeyEvent.VK_A:  // move left 
                     translateVector.x += LEFT; 
                     break;

                  case KeyEvent.VK_D: // move right
                     translateVector.x += RIGHT; 
                     break; 

                  case KeyEvent.VK_W: // move up
                     translateVector.y += UP; 
                     break;

                  case KeyEvent.VK_S: // move down
                     translateVector.y += DOWN; 
                     break;

                  case KeyEvent.VK_UP: // move backwards
                     translateVector.z += BACKWARD; 
                     break;

                  case KeyEvent.VK_DOWN: // move forwards
                     translateVector.z += FORWARD; 
                     break;

               } // end switch
               
               // set translational component of Transform3D 
               // with updated translation Vector3f
               transform3D.setTranslation( translateVector );
               
               // set TransformGroup's Transform3D
               objectTransform.setTransform( transform3D ); 
            
            } // end if KeyEvent.KEY_PRESSED 
         } 

      } // end for loop that handles key presses
      
   } // end method moveShape
}

/***************************************************************
 * (C) Copyright 2002 by Deitel & Associates, Inc. and         *
 * Prentice Hall. All Rights Reserved.                         *
 *                                                             *
 * DISCLAIMER: The authors and publisher of this book have     *
 * used their best efforts in preparing the book. These        *
 * efforts include the development, research, and testing of   *
 * the theories and programs to determine their effectiveness. *
 * The authors and publisher make no warranty of any kind,     *
 * expressed or implied, with regard to these programs or to   *
 * the documentation contained in these books. The authors     *
 * and publisher shall not be liable in any event for          *
 * incidental or consequential damages in connection with, or  *
 * arising out of, the furnishing, performance, or use of      *
 * these programs.                                             *
 ***************************************************************/


?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美影视一区在线| 极品尤物av久久免费看| 在线观看精品一区| 亚洲国产日产av| 日韩欧美在线综合网| 久久99国产精品免费网站| 欧美刺激脚交jootjob| 国产99精品视频| 亚洲人快播电影网| 正在播放亚洲一区| 国产在线不卡视频| 亚洲三级免费观看| 91精品福利在线一区二区三区 | 日韩一区二区三区高清免费看看| 午夜精品福利在线| 久久久综合视频| 91色在线porny| 亚洲一区二区三区中文字幕| 日韩精品在线看片z| 国产成人精品午夜视频免费| 亚洲精品国产高清久久伦理二区| 日韩一区二区在线看片| 成人网在线免费视频| 亚洲一区二区三区在线看| 精品国产伦一区二区三区观看体验| 国产成人午夜精品5599| 亚洲一区二区不卡免费| 欧美电影精品一区二区 | 色www精品视频在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲国产精品精华液2区45| 欧美日韩免费观看一区二区三区 | 成人永久免费视频| 日韩精品免费视频人成| 中文字幕一区二区三区蜜月| 日韩精品影音先锋| 欧美日韩一区二区在线观看| 丁香五精品蜜臀久久久久99网站| 午夜电影网亚洲视频| 中文字幕av一区二区三区免费看| 91精品视频网| 色噜噜久久综合| 国产xxx精品视频大全| 日韩和欧美一区二区三区| 中文乱码免费一区二区| 欧美一区三区二区| 在线一区二区三区四区五区| 国产成人精品免费网站| 精品一区免费av| 亚洲第一成人在线| 综合av第一页| 国产精品美女久久久久aⅴ| 日韩一级二级三级| 欧美日韩一区二区三区在线| 91视频观看免费| 99综合电影在线视频| 国产精品一区二区在线观看不卡 | 亚洲国产精品一区二区久久恐怖片| 国产日韩欧美高清| 久久众筹精品私拍模特| 日韩欧美久久久| 欧美一区二区三区色| 精品污污网站免费看| 欧美中文字幕一区| 在线免费不卡视频| 色av成人天堂桃色av| 一本色道**综合亚洲精品蜜桃冫| 99re成人精品视频| 99久久精品免费看国产| 9i在线看片成人免费| 97国产精品videossex| 91在线丨porny丨国产| 99re这里只有精品视频首页| 91在线视频18| 色婷婷av一区二区三区gif| 日本道免费精品一区二区三区| 成人av免费观看| 色综合久久久网| 欧亚洲嫩模精品一区三区| 欧美最猛黑人xxxxx猛交| 欧美综合视频在线观看| 欧美日韩三级视频| 日韩欧美电影一二三| 欧美v国产在线一区二区三区| 欧美一区二区视频网站| 精品国产制服丝袜高跟| 久久久亚洲国产美女国产盗摄| 久久久久久久免费视频了| 国产精品网站在线观看| 一色屋精品亚洲香蕉网站| 亚洲在线视频一区| 欧美aaaaaa午夜精品| 国产精品资源在线看| 91玉足脚交白嫩脚丫在线播放| 色天天综合久久久久综合片| 在线不卡中文字幕| 久久综合成人精品亚洲另类欧美| 中文字幕欧美区| 一区二区三区av电影| 男男视频亚洲欧美| 国产ts人妖一区二区| 91国产免费观看| 欧美va亚洲va在线观看蝴蝶网| 国产欧美日韩精品一区| 亚洲一线二线三线久久久| 日韩av午夜在线观看| 懂色av一区二区三区免费看| 在线日韩一区二区| 久久女同性恋中文字幕| 亚洲欧美激情小说另类| 免费观看在线色综合| 99久久婷婷国产综合精品电影| 欧美日韩亚洲综合| 日本一区二区三区免费乱视频| 亚洲gay无套男同| 国产1区2区3区精品美女| 欧美亚洲国产一区二区三区va | 性欧美大战久久久久久久久| 久久精品国产**网站演员| 丁香天五香天堂综合| 欧美日韩精品欧美日韩精品一| 久久久精品国产免大香伊| 亚洲成人自拍一区| 成人av网站大全| 26uuu亚洲综合色欧美 | 男女激情视频一区| 99久久亚洲一区二区三区青草 | 欧美一卡二卡在线| 亚洲色图20p| 国产麻豆日韩欧美久久| 欧美男同性恋视频网站| 中文字幕一区二区三区av| 国产原创一区二区三区| 欧美美女直播网站| 亚洲精品第一国产综合野| 国产精品69久久久久水密桃| 在线播放91灌醉迷j高跟美女| 国产精品国产三级国产aⅴ中文 | 国产成人综合在线观看| 3atv一区二区三区| 亚洲图片一区二区| 91久久精品一区二区二区| 国产精品乱码一区二区三区软件| 久久精品国产77777蜜臀| 欧美福利一区二区| 亚洲第一福利一区| 欧美在线啊v一区| 一区二区三区影院| 99精品久久只有精品| 日本一区二区三区视频视频| 国产乱子伦视频一区二区三区 | 日韩一级免费观看| 视频在线在亚洲| 欧美少妇一区二区| 亚洲五码中文字幕| 在线免费观看视频一区| 亚洲男人天堂一区| 91蜜桃免费观看视频| 国产精品成人一区二区艾草| 国产成人精品一区二区三区四区| ww亚洲ww在线观看国产| 久久精品国产99国产精品| 欧美岛国在线观看| 国产一区二区不卡| 国产色产综合色产在线视频| 国产福利91精品| 欧美激情资源网| av一区二区三区四区| 亚洲精品美国一| 色久优优欧美色久优优| 亚洲网友自拍偷拍| 欧美一区永久视频免费观看| 蜜桃av一区二区三区电影| 精品久久久网站| 国产黄色精品网站| 一区免费观看视频| 欧美性感一区二区三区| 日韩激情一二三区| 久久久久久亚洲综合影院红桃| 国产一区二区不卡老阿姨| 国产日韩精品一区二区三区 | 欧美日韩国产高清一区二区三区 | 国产乱子伦视频一区二区三区| 久久久精品中文字幕麻豆发布| 国产99久久精品| 亚洲欧美另类在线| 欧美喷潮久久久xxxxx| 激情成人午夜视频| 国产精品蜜臀av| 欧美色手机在线观看| 日韩成人精品在线| 久久精品免费在线观看| 色综合天天综合网天天狠天天| 亚洲v精品v日韩v欧美v专区| 日韩欧美一级片| 99久久久久免费精品国产| 五月天欧美精品| 欧美激情综合在线| 欧美日本一区二区| 国产成人自拍网|