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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? omkeybehavior.java

?? openmap java寫的開源數(shù)字地圖程序. 用applet實現(xiàn),可以像google map 那樣放大縮小地圖.
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
// **********************************************************************// // <copyright>// //  BBN Technologies//  10 Moulton Street//  Cambridge, MA 02138//  (617) 873-8000// //  Copyright (C) BBNT Solutions LLC. All rights reserved.// // </copyright>// **********************************************************************// // $Source: /cvs/distapps/openmap/src/j3d/com/bbn/openmap/tools/j3d/OMKeyBehavior.java,v $// $RCSfile: OMKeyBehavior.java,v $// $Revision: 1.3.2.2 $// $Date: 2005/08/11 21:03:15 $// $Author: dietrick $// // **********************************************************************package com.bbn.openmap.tools.j3d;import java.awt.AWTEvent;import java.awt.event.*;import java.util.Enumeration;import javax.media.j3d.*;import javax.vecmath.*;import com.bbn.openmap.util.Debug;import com.bbn.openmap.proj.Projection;/** * OMKeyBehavior is a modified version of KeyBehavior, available from * http://www.J3D.org. The modifications include having a notion of * body position, and view position. You can modify a view, which can * be thought of as where your eyes are pointing. You can also modify * the position, which can be thought of where your body is pointing. * So, you can look in a different directin than your motion.This * allows the user to adjust the view angle to the map, but not have * it interfere with navigation - for instance, you can look down at * the ground, but not fly into it, instead keeping a constant * distance above it. *  * <P> * The controls are: *  * <pre> *  *  left - turn left *  right - turn right *  up - move forward *  down - move backward *  *  Cntl left - look down *  Cntl right - look up *  Cntl up - move up (elevation) *  Cntl down - move down (elevation) *  *  Alt right - move right *  Alt left - move left *  Alt up - rotate up (movement forward will increase elevation). *  Alt down - rotate down (movement forward will decrease elevation). *  *   * </pre> *  * From the original KeyBehavier header: *  * <pre> *  *   KeyBehavior is a generic behavior class to take key presses and move a *   TransformGroup through a Java3D scene. The actions resulting from the key strokes *   are modified by using the Ctrl, Alt and Shift keys. *  *   (version 1.0) reconstructed class to make more generic. *  *  MODIFIED: *  *  *  @author    Andrew AJ Cain, Swinburne University, *       Australia &lt;acain@it.swin.edu.au&gt; edited from code *       by: Gary S. Moss &lt;moss@arl.mil&gt; U. S. Army Research *       Laboratory * CLASS NAME: KeyBehavior PUBLIC *       FEATURES: // Data // Constructors // Methods: *       COLLABORATORS:  * </pre> *  * @version 1.0, 25 September 1998 aajc */public class OMKeyBehavior extends Behavior {    protected final static double FAST_SPEED = 2.0;    protected final static double NORMAL_SPEED = 1.0;    protected final static double SLOW_SPEED = 0.5;    private TransformGroup cameraTransformGroup;    private Transform3D transform3D;    private Transform3D locationTransform3D;    private Transform3D xRotLookTransform;    private Transform3D yRotLookTransform;    private Transform3D zRotLookTransform;    private WakeupCondition keyCriterion;    protected final static double TWO_PI = (2.0 * Math.PI);    protected double rotateXAmount = Math.PI / 16.0;    protected double rotateYAmount = Math.PI / 16.0;    protected double rotateZAmount = Math.PI / 16.0;    protected double moveRate = 0.3;    protected double speed = NORMAL_SPEED;    protected int forwardKey = KeyEvent.VK_UP;    protected int backKey = KeyEvent.VK_DOWN;    protected int leftKey = KeyEvent.VK_LEFT;    protected int rightKey = KeyEvent.VK_RIGHT;    protected boolean DEBUG = false;    protected Projection projection;    public OMKeyBehavior(TransformGroup cameraTG, Projection proj) {        this(cameraTG, proj, null);    }    public OMKeyBehavior(TransformGroup cameraTG, Projection proj,            Vector3d initialLocation) {        projection = proj;        DEBUG = Debug.debugging("3dkey");        cameraTransformGroup = cameraTG;        transform3D = new Transform3D();        locationTransform3D = new Transform3D();        // These are the looking transforms, for the view.        xRotLookTransform = new Transform3D();        yRotLookTransform = new Transform3D();        zRotLookTransform = new Transform3D();        setViewerLocation(initialLocation);        setEnable(true);    }    public void initialize() {        WakeupCriterion[] keyEvents = new WakeupCriterion[2];        keyEvents[0] = new WakeupOnAWTEvent(KeyEvent.KEY_PRESSED);        keyEvents[1] = new WakeupOnAWTEvent(KeyEvent.KEY_RELEASED);        keyCriterion = new WakeupOr(keyEvents);        wakeupOn(keyCriterion);    }    public void setViewerLocation(Vector3d initialLocation) {        cameraTransformGroup.getTransform(locationTransform3D);        // scale of < 1 shrinks the object. (.5) is the scale.        float scale = 1f;        if (initialLocation == null) {            initialLocation = new Vector3d();            // So, this lays out where the land is, in relation to the            // viewer. We should get the projection from the MapBean,            // and            // offset the transform to the middle of the map.            if (projection != null) {                float centerXOffset = projection.getWidth() / 2f * scale;                float centerYOffset = projection.getHeight() * 2 / 3f * scale;                Debug.message("3d", "OM3DViewer with projection " + projection                        + ", setting center of scene to " + centerXOffset                        + ", " + centerYOffset);                initialLocation.set((double) centerXOffset,                        (double) 50,                        (double) centerYOffset);            } else {                initialLocation.set(0.0, 50, 0.0);            }        }        Transform3D toMove = new Transform3D();        toMove.set(scale, initialLocation);        locationTransform3D.mul(toMove);        cameraTransformGroup.setTransform(locationTransform3D);    }    public void processStimulus(Enumeration criteria) {        if (DEBUG) {            Debug.output("OMKeyBehavior: processStimulus");        }        WakeupCriterion wakeup;        AWTEvent[] event;        while (criteria.hasMoreElements()) {            wakeup = (WakeupCriterion) criteria.nextElement();            if (!(wakeup instanceof WakeupOnAWTEvent)) {                continue;            }            event = ((WakeupOnAWTEvent) wakeup).getAWTEvent();            for (int i = 0; i < event.length; i++) {                if (event[i].getID() == KeyEvent.KEY_PRESSED) {                    processKeyEvent((KeyEvent) event[i]);                }            }        }        wakeupOn(keyCriterion);    }    protected void processKeyEvent(KeyEvent event) {        int keycode = event.getKeyCode();        if (event.isShiftDown()) {            speed = FAST_SPEED;        } else {            speed = NORMAL_SPEED;        }        if (event.isAltDown()) {            altMove(keycode);        } else if (event.isControlDown()) {            controlMove(keycode);        } else {            standardMove(keycode);        }    }    //moves forward backward or rotates left right    protected void standardMove(int keycode) {        if (keycode == forwardKey) {            moveForward();        } else if (keycode == backKey) {            moveBackward();        } else if (keycode == leftKey) {            rotLeft();        } else if (keycode == rightKey) {            rotRight();        }    }    //moves left right, rotate up down    protected void altMove(int keycode) {        if (DEBUG) {            Debug.output("altMove");        }        if (keycode == forwardKey) {            rotUp();        } else if (keycode == backKey) {            rotDown();        } else if (keycode == leftKey) {            moveLeft();        } else if (keycode == rightKey) {            moveRight();        }    }    //move up down, rot left right    protected void controlMove(int keycode) {        if (keycode == forwardKey) {            moveUp();        } else if (keycode == backKey) {            moveDown();        } else if (keycode == leftKey) {            //          rollLeft();            lookUp();        } else if (keycode == rightKey) {            //          rollRight();            lookDown();        }    }    public void moveForward() {        if (DEBUG) {            Debug.output("Moving forward +");        }        doMove(new Vector3d(0.0, 0.0, -getMovementRate()));    }    public void moveBackward() {        if (DEBUG) {            Debug.output("Moving Backward _");

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产综合久久福利| 91一区一区三区| 精品人伦一区二区色婷婷| 久久电影国产免费久久电影| 日韩欧美国产不卡| 国产成人午夜精品影院观看视频| 国产精品网曝门| 在线视频综合导航| 日韩av一区二区在线影视| 日韩免费福利电影在线观看| 国产精品一区免费视频| 国产精品久久久久久久久动漫 | 国内外精品视频| 国产日韩三级在线| 色欧美片视频在线观看在线视频| 视频在线观看一区| 久久久久久久久99精品| 91在线高清观看| 丝瓜av网站精品一区二区 | 欧美日韩国产系列| 国内成+人亚洲+欧美+综合在线| 欧美国产综合色视频| 欧美性xxxxxxxx| 国产精品99久久久久久宅男| 亚洲综合免费观看高清完整版在线 | 国产一区二区三区国产| 亚洲欧美日韩国产综合在线| 日韩一区二区免费在线观看| 不卡的av中国片| 日韩av中文字幕一区二区| 中文字幕av在线一区二区三区| 欧美日韩一区在线| 丁香网亚洲国际| 青青草国产成人99久久| 亚洲欧洲精品一区二区三区| 日韩一区二区视频| 日本高清免费不卡视频| 国产精品白丝jk黑袜喷水| 亚洲国产中文字幕在线视频综合| 久久精品视频免费| 欧美一区二区免费观在线| av在线这里只有精品| 免费成人av资源网| 亚洲国产sm捆绑调教视频| 中文字幕欧美日韩一区| 欧美不卡视频一区| 欧美久久久一区| 色哟哟欧美精品| 丁香一区二区三区| 国产做a爰片久久毛片| 肉丝袜脚交视频一区二区| 亚洲天堂精品在线观看| 2021中文字幕一区亚洲| 7777精品伊人久久久大香线蕉的| 99热99精品| 国产69精品久久久久毛片 | 日韩精品福利网| 一区二区三区中文在线观看| 欧美国产欧美综合| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 欧美一区二区三区四区久久| 在线日韩国产精品| 91在线视频播放地址| 成人app在线| 成人黄色在线网站| 国产成人综合精品三级| 国产一区二区三区在线观看精品| 美国毛片一区二区| 卡一卡二国产精品| 麻豆精品在线播放| 精品一区二区三区视频| 久久99热狠狠色一区二区| 久久精品国产亚洲一区二区三区| 天天操天天干天天综合网| 亚洲第一主播视频| 日韩精品欧美成人高清一区二区| 午夜精品福利久久久| 五月天丁香久久| 日日摸夜夜添夜夜添亚洲女人| 午夜精品久久久久影视| 日韩成人一级大片| 麻豆成人91精品二区三区| 激情综合网天天干| 大胆欧美人体老妇| 91原创在线视频| 欧美视频一区在线观看| 欧美一区二区三区在线电影| 日韩欧美你懂的| 精品成人在线观看| 欧美激情一区三区| 国产精品国产a级| 亚洲国产一区二区三区青草影视| 婷婷一区二区三区| 裸体健美xxxx欧美裸体表演| 国内精品国产三级国产a久久| 国产成人午夜片在线观看高清观看 | 国产精品麻豆久久久| 亚洲视频在线观看一区| 亚洲一区二区三区小说| 蜜桃传媒麻豆第一区在线观看| 国产经典欧美精品| 91黄色小视频| 日韩精品一区国产麻豆| 国产精品理论在线观看| 亚洲成人免费观看| 国产一区二区三区精品视频| 色综合婷婷久久| 这里只有精品电影| 国产无人区一区二区三区| 一区二区三区久久| 久久超碰97中文字幕| 91影院在线免费观看| 欧美一区二区三区的| 欧美国产1区2区| 日韩av在线播放中文字幕| 国产99一区视频免费| 欧美三区在线观看| 欧美国产丝袜视频| 日韩精品一级中文字幕精品视频免费观看 | 麻豆中文一区二区| 91社区在线播放| 2023国产精华国产精品| 亚洲一区二区美女| 成人网在线免费视频| 日韩一区二区三区精品视频| 亚洲欧洲中文日韩久久av乱码| 久久精品国产免费看久久精品| 99久久精品国产毛片| 精品国产乱码久久久久久久| 亚洲综合偷拍欧美一区色| 国产成人免费在线观看| 91麻豆精品国产91久久久久久久久| 日本一二三不卡| 美国毛片一区二区三区| 欧美三级电影一区| 日韩久久一区二区| 国产成人亚洲精品狼色在线 | 国产黄人亚洲片| 欧美一区二区视频在线观看2022| 中文字幕一区不卡| 国产成人亚洲综合a∨婷婷| 精品日韩在线一区| 婷婷综合在线观看| 欧美日韩综合在线| 亚洲精品视频在线观看免费| 国产999精品久久| 欧美哺乳videos| 美国毛片一区二区三区| 91.com视频| 手机精品视频在线观看| 欧美三级日本三级少妇99| 一区二区三区欧美在线观看| jlzzjlzz欧美大全| 国产精品国产三级国产专播品爱网| 国产一区中文字幕| 日韩免费观看2025年上映的电影| 天天影视网天天综合色在线播放| 在线观看成人小视频| 亚洲精品美腿丝袜| 在线看日本不卡| 亚洲综合免费观看高清完整版 | 国产一区二区三区四区五区美女 | 成人黄色777网| 精品一区二区三区久久久| 日韩美一区二区三区| 亚洲aaa精品| 欧美撒尿777hd撒尿| 亚洲成人精品在线观看| 欧美日本韩国一区| 日本va欧美va欧美va精品| 日韩免费一区二区三区在线播放| 秋霞电影一区二区| 亚洲精品一线二线三线无人区| 国产一区二区三区蝌蚪| 国产精品丝袜一区| 99精品欧美一区二区三区小说| 最好看的中文字幕久久| 91国在线观看| 亚洲成a人v欧美综合天堂| 欧美一区二区在线播放| 国内国产精品久久| 欧美国产乱子伦 | 欧美三级在线看| 日韩 欧美一区二区三区| 精品免费国产二区三区| 国产精品资源站在线| 亚洲欧洲色图综合| 欧美视频日韩视频| 久久机这里只有精品| 国产农村妇女毛片精品久久麻豆| 不卡影院免费观看| 亚洲第一福利一区| 欧美精品一区二区三区久久久| 国产91清纯白嫩初高中在线观看| 亚洲色图欧美在线| 91麻豆精品国产自产在线| 国产资源精品在线观看| 亚洲欧美另类图片小说| 欧美一区二区精品久久911| 精品一区二区免费看|