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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? editableompoint.java

?? openmap java寫的開源數字地圖程序. 用applet實現,可以像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/openmap/com/bbn/openmap/omGraphics/EditableOMPoint.java,v $// $RCSfile: EditableOMPoint.java,v $// $Revision: 1.7.2.2 $// $Date: 2005/08/09 21:17:46 $// $Author: dietrick $// // **********************************************************************package com.bbn.openmap.omGraphics;import java.awt.Component;import java.awt.event.MouseEvent;import javax.swing.JPanel;import javax.swing.JToolBar;import com.bbn.openmap.LatLonPoint;import com.bbn.openmap.gui.GridBagToolBar;import com.bbn.openmap.layer.util.stateMachine.State;import com.bbn.openmap.omGraphics.editable.GraphicEditState;import com.bbn.openmap.omGraphics.editable.GraphicSelectedState;import com.bbn.openmap.omGraphics.editable.GraphicSetOffsetState;import com.bbn.openmap.omGraphics.editable.GraphicUndefinedState;import com.bbn.openmap.omGraphics.editable.PointStateMachine;import com.bbn.openmap.proj.Projection;import com.bbn.openmap.util.Debug;/** * An EditableOMGraphic that encapsulates an OMPoint. */public class EditableOMPoint extends EditableOMGraphic {    protected GrabPoint gpc;    protected OffsetGrabPoint gpo; // offset    protected OMPoint point;    public final static String OffsetResetCmd = "OffsetResetCmd";    public final static int CENTER_POINT_INDEX = 0;    public final static int OFFSET_POINT_INDEX = 1;    /**     * Create the EditableOMPoint, setting the state machine to create     * the point off of the gestures.     */    public EditableOMPoint() {        createGraphic(null);    }    /**     * Create an EditableOMPoint with the pointType and renderType     * parameters in the GraphicAttributes object.     */    public EditableOMPoint(GraphicAttributes ga) {        createGraphic(ga);    }    /**     * Create the EditableOMPoint with an OMPoint already defined,     * ready for editing.     *      * @param omc OMPoint that should be edited.     */    public EditableOMPoint(OMPoint omc) {        setGraphic(omc);    }    /**     * Create and initialize the state machine that interprets the     * modifying gestures/commands, as well as ititialize the grab     * points. Also allocates the grab point array needed by the     * EditableOMPoint.     */    public void init() {        Debug.message("eomg", "EditableOMPoint.init()");        setCanGrabGraphic(false);        setStateMachine(new PointStateMachine(this));        gPoints = new GrabPoint[2];    }    /**     * Set the graphic within the state machine. If the graphic is     * null, then one shall be created, and located off screen until     * the gestures driving the state machine place it on the map.     */    public void setGraphic(OMGraphic graphic) {        init();        if (graphic instanceof OMPoint) {            point = (OMPoint) graphic;            stateMachine.setSelected();            setGrabPoints(point);        } else {            createGraphic(null);        }    }    /**     * Create and set the graphic within the state machine. The     * GraphicAttributes describe the type of point to create.     */    public void createGraphic(GraphicAttributes ga) {        init();        stateMachine.setUndefined();        int renderType = OMGraphic.RENDERTYPE_UNKNOWN;        if (ga != null) {            renderType = ga.getRenderType();        }        if (Debug.debugging("eomg")) {            Debug.output("EditableOMPoint.createGraphic(): rendertype = "                    + renderType);        }        switch (renderType) {        case (OMGraphic.RENDERTYPE_LATLON):            point = new OMPoint(90f, -180f);            break;        case (OMGraphic.RENDERTYPE_OFFSET):            point = new OMPoint(90f, -180f, 0, 0);            break;        default:            point = new OMPoint(-1, -1);        }        if (ga != null) {            ga.setTo(point);        }        assertGrabPoints();    }    /**     * Get the OMGraphic being created/modified by the     * EditableOMPoint.     */    public OMGraphic getGraphic() {        return point;    }    /**     * Set the GrabPoint that is in the middle of being modified, as a     * result of a mouseDragged event, or other selection process.     */    public void setMovingPoint(GrabPoint gp) {        super.setMovingPoint(gp);    }    /**     * Given a MouseEvent, find a GrabPoint that it is touching, and     * set the moving point to that GrabPoint.     *      * @param e MouseEvent     * @return GrabPoint that is touched by the MouseEvent, null if     *         none are.     */    public GrabPoint getMovingPoint(MouseEvent e) {        movingPoint = null;        GrabPoint[] gb = getGrabPoints();        int x = e.getX();        int y = e.getY();        for (int i = gb.length - 1; i >= 0; i--) {            if (gb[i] != null && gb[i].distance(x, y) == 0) {                setMovingPoint(gb[i]);                // in case the points are on top of each other, the                // last point in the array will take precidence.                break;            }        }        return movingPoint;    }    /**     * Attach to the Moving OffsetGrabPoint so if it moves, it will     * move this EditableOMGraphic with it. EditableOMGraphic version     * doesn't do anything, each subclass has to decide which of its     * OffsetGrabPoints should be attached to it.     */    public void attachToMovingGrabPoint(OffsetGrabPoint gp) {        gp.addGrabPoint(gpo);    }    /**     * Detach from a Moving OffsetGrabPoint. The EditableOMGraphic     * version doesn't do anything, each subclass should remove     * whatever GrabPoint it would have attached to an     * OffsetGrabPoint.     */    public void detachFromMovingGrabPoint(OffsetGrabPoint gp) {        gp.removeGrabPoint(gpo);    }    protected int lastRenderType = -1;    /**     * Check to make sure the grab points are not null. If they are,     * allocate them, and them assign them to the array.     */    public void assertGrabPoints() {        int rt = getGraphic().getRenderType();        if (rt != lastRenderType) {            clearGrabPoints();            lastRenderType = rt;        }        if (gpc == null) {            gpc = new GrabPoint(-1, -1);            gPoints[CENTER_POINT_INDEX] = gpc;        }        if (gpo == null) {            gpo = new OffsetGrabPoint(-1, -1);            gPoints[OFFSET_POINT_INDEX] = gpo;            gpo.addGrabPoint(gpc);        }    }    protected void clearGrabPoints() {        gpc = null;        gpo = null;        gPoints[CENTER_POINT_INDEX] = gpc;        gPoints[OFFSET_POINT_INDEX] = gpo;    }    /**     * Set the grab points for the graphic provided, setting them on     * the extents of the graphic. Called when you want to set the     * grab points off the location of the graphic.     */    public void setGrabPoints(OMGraphic graphic) {        Debug.message("eomg", "EditableOMPoint.setGrabPoints(graphic)");        if (!(graphic instanceof OMPoint)) {            return;        }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品视频一区二区不卡| www.视频一区| 亚洲电影一级黄| 亚洲国产欧美日韩另类综合| 亚洲欧美激情小说另类| 亚洲乱码中文字幕综合| 亚洲激情图片qvod| 亚洲国产另类av| 日本中文字幕一区二区视频| 日韩av中文字幕一区二区| 日韩国产欧美三级| 国产精品资源在线观看| 国产成人免费9x9x人网站视频| 国产91丝袜在线18| 色综合天天性综合| 欧美精品久久久久久久多人混战| 在线播放视频一区| 久久久久久毛片| 亚洲欧美日韩综合aⅴ视频| 亚洲电影视频在线| 九九久久精品视频| 97超碰欧美中文字幕| 在线观看一区二区视频| 日韩欧美美女一区二区三区| 国产亚洲午夜高清国产拍精品| 最新热久久免费视频| 日韩精彩视频在线观看| 国产成人丝袜美腿| 欧美调教femdomvk| 26uuu成人网一区二区三区| 中文字幕亚洲综合久久菠萝蜜| 亚洲成人一区二区| 国产高清精品久久久久| 欧美色男人天堂| 国产视频一区二区在线| 国产精品久久久久一区二区三区 | 国产大陆a不卡| 色哟哟欧美精品| 精品久久国产字幕高潮| 亚洲私人黄色宅男| 国产真实乱对白精彩久久| 色嗨嗨av一区二区三区| 日韩精品一区二区在线| 亚洲品质自拍视频| 国产激情91久久精品导航| 欧美婷婷六月丁香综合色| 国产精品视频一区二区三区不卡| 亚洲va国产va欧美va观看| 不卡的av电影| 久久久无码精品亚洲日韩按摩| 亚洲精品你懂的| 不卡的电影网站| 国产亚洲精品bt天堂精选| 日韩制服丝袜av| 欧美亚日韩国产aⅴ精品中极品| www国产精品av| 美国十次综合导航| 88在线观看91蜜桃国自产| 综合久久一区二区三区| 国产福利精品导航| wwwwww.欧美系列| 美国毛片一区二区| 日韩一区二区三区在线观看| 亚洲一区成人在线| 91丨porny丨首页| 亚洲欧洲一区二区在线播放| 国产一二三精品| 欧美大片在线观看一区| 日韩vs国产vs欧美| 欧美高清性hdvideosex| 午夜在线电影亚洲一区| 欧美日韩国产123区| 亚洲国产中文字幕| 欧美日韩一区二区三区高清 | 亚洲va韩国va欧美va| 91麻豆视频网站| 日韩美女啊v在线免费观看| 成人avav影音| 一区二区三区高清在线| 在线观看免费成人| 亚洲成人第一页| 欧美高清视频不卡网| 日韩av在线免费观看不卡| 日韩一区二区三区精品视频| 日本在线不卡一区| 26uuu国产电影一区二区| 国产激情视频一区二区在线观看| 国产亚洲精品7777| 91在线观看视频| 亚洲午夜久久久| 日韩天堂在线观看| 国产99久久精品| 亚洲激情自拍视频| 日韩欧美在线网站| 国产福利一区二区| 亚洲一线二线三线视频| 欧美一区二区三级| 床上的激情91.| 一二三区精品福利视频| 欧美一级电影网站| 懂色av一区二区夜夜嗨| 亚洲美女淫视频| 欧美刺激脚交jootjob| 国产传媒欧美日韩成人| 一二三四社区欧美黄| www日韩大片| 色悠悠久久综合| 久久精品99国产国产精| 亚洲视频免费在线观看| 91精品国产一区二区三区| 韩国精品在线观看| 亚洲一区二区精品3399| 久久久99精品免费观看| 欧美日韩综合不卡| 成人av先锋影音| 老汉av免费一区二区三区| 国产精品三级在线观看| 91精品国产日韩91久久久久久| 成人午夜精品在线| 美女一区二区三区| 亚洲卡通动漫在线| 久久久久久久一区| 在线成人免费视频| 在线一区二区三区做爰视频网站| 国内精品伊人久久久久av一坑| 亚洲一区中文日韩| 国产精品乱码一区二区三区软件 | 亚洲人成精品久久久久久| 欧美电影免费提供在线观看| 色综合久久久久久久| 国产精品888| 激情五月激情综合网| 亚洲一区二区三区四区五区黄| 国产欧美日韩另类视频免费观看| 91精品国产综合久久福利软件| 在线一区二区视频| 色拍拍在线精品视频8848| 国产成人aaaa| 国产一区二区三区久久悠悠色av| 视频一区二区三区中文字幕| 亚洲激情图片小说视频| 亚洲三级在线免费| 中文字幕日韩av资源站| 亚洲国产精品激情在线观看| 精品国产99国产精品| 日韩亚洲国产中文字幕欧美| 欧美久久一二三四区| 欧美日韩激情一区| 666欧美在线视频| 欧美一区二区三区播放老司机| 欧美精品三级在线观看| 欧美日韩国产精选| 日韩一级二级三级精品视频| 欧美一区中文字幕| 欧美v亚洲v综合ⅴ国产v| 日韩一级在线观看| 久久久久99精品一区| 国产亚洲女人久久久久毛片| 精品国产凹凸成av人网站| 欧美精品一区男女天堂| 国产亚洲自拍一区| 日韩美女精品在线| 亚洲综合网站在线观看| 日产欧产美韩系列久久99| 久久精品国产精品青草| 国产一区二区在线影院| 91久久精品一区二区三| 色综合色综合色综合色综合色综合 | 欧美军同video69gay| 日韩精品在线一区| 亚洲国产精品二十页| 亚洲国产乱码最新视频| 偷窥少妇高潮呻吟av久久免费| 日韩福利电影在线| 国产一区二三区| 日本精品一级二级| 欧美成人一级视频| 中文字幕亚洲成人| 日韩精品免费视频人成| 国产在线精品不卡| 色综合久久久久久久| 91精品国产91综合久久蜜臀| 国产欧美精品在线观看| 亚洲综合在线第一页| 国产真实乱子伦精品视频| 色婷婷激情综合| 欧美成人精品二区三区99精品| 亚洲图片激情小说| 麻豆一区二区三| 91久久精品一区二区三区| 精品免费日韩av| 一区二区在线电影| 国产一区二区三区高清播放| 在线免费一区三区| 久久久亚洲精品一区二区三区| 亚洲男人天堂一区| 国产乱子轮精品视频| 欧美性高清videossexo| 国产精品丝袜久久久久久app| 香蕉影视欧美成人|