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

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

?? omgraphiclist.java

?? openmap java寫的開源數字地圖程序. 用applet實現,可以像google map 那樣放大縮小地圖.
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
// **********************************************************************// // <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/OMGraphicList.java,v $// $RCSfile: OMGraphicList.java,v $// $Revision: 1.13.2.6 $// $Date: 2006/01/03 15:40:20 $// $Author: dietrick $// // **********************************************************************package com.bbn.openmap.omGraphics;import java.awt.Graphics;import java.awt.Paint;import java.awt.TexturePaint;import java.io.EOFException;import java.io.FileOutputStream;import java.io.IOException;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.OptionalDataException;import java.io.Serializable;import java.net.URL;import java.util.ArrayList;import java.util.Iterator;import java.util.ListIterator;import com.bbn.openmap.proj.Projection;import com.bbn.openmap.util.GraphicList;import com.bbn.openmap.omGraphics.grid.OMGridGenerator;import com.bbn.openmap.util.Debug;/** * This class encapsulates a List of OMGraphics. * <p> * There are several things that this list does that make it better that any ol' * List. You can make several common OMGraphic modification calls on the list, * and the list handles the iteration and changing of all the graphics while * taking into account a travese order. * <p> * An additional benefit is that because the OMGraphicList extends OMGraphic it * can contain other instances of OMGraphicList. This way you can manage * groupings of graphics, (for instance, an OMGraphicList of OMGraphicLists * which each have an OMRaster and OMText). * <p> * Many methods, such as generate() and findClosest() traverse the items in the * GraphicsList recursively. The direction that the list is traversed is * controlled by then traverseMode variable. The traverseMode mode lets you set * whether the first or last object added to the list (FIRST_ADDED_ON_TOP or * LAST_ADDED_ON_TOP) is drawn on top of the list and considered first for * searches. */public class OMGraphicList extends OMGraphic implements GraphicList,        Serializable {    /**     * Used to set the order in which the list is traversed to draw or search     * the objects. This means that the last things on the list will be on top     * of the map because they are drawn last, on top of everything else. For     * searches, objects added last to the list will be considered first for a     * search match.     */    public final transient static int LAST_ADDED_ON_TOP = 0;    /**     * Used to set the order in which the list is traversed to draw or search     * the objects. This means that the first things on the list will appear on     * top because they are drawn last, on top of everything else. For searches,     * objects added first to the list will be considered first for a search     * match. This is the default mode for the list.     */    public final transient static int FIRST_ADDED_ON_TOP = 1;    /**     * Used for searches, when OMDist doesn't have a graphic. The index of a     * null graphic is NONE. If you try to remove or insert a graphic at NONE,     * an exception will be thrown. If you try to get a graphic at NONE, you'll     * get null;     */    public final static int NONE = -1;    /**     * List traversal mode. The default is FIRST_ADDED_ON_TOP.     */    protected int traverseMode = FIRST_ADDED_ON_TOP;    /**     * Flag to adjust behavior of OMGraphicList for certain queries. If     * OMGraphicList should act as OMGraphic, the entire list will be treated as     * one object. Otherwise, the list will act as a pass-through container, and     * internal OMGraphics will be returned. This applies to distance(),     * selectClosest(), findClosest(), getOMGraphicThatContains(), etc. This     * flag becomes really helpful for embedded OMGraphicLists, not so much for     * top-level OMGraphicLists.     */    protected boolean vague = false;    /**     * The list of graphics. Once an OMGraphicList is constructed, this variable     * should never be null.     */    protected java.util.List graphics = null;    /**     * Flag used to allow duplicates in the OMGraphicList. True by default -     * this prevents the list from doing the extra work for checking for     * duplicates at addition time.     */    protected boolean allowDuplicates = true;    /**     * Construct an OMGraphicList.     */    public OMGraphicList() {        this(10);    };    /**     * Construct an OMGraphicList with an initial capacity.     *      * @param initialCapacity the initial capacity of the list     */    public OMGraphicList(int initialCapacity) {        graphics = new ArrayList(initialCapacity);    };    /**     * Construct an OMGraphicList with an initial capacity and a standard     * increment value.     *      * @param initialCapacity the initial capacity of the list     * @param capacityIncrement the capacityIncrement for resizing     * @deprecated capacityIncrement no longer used.     */    public OMGraphicList(int initialCapacity, int capacityIncrement) {        this(initialCapacity);    };    /**     * Construct an OMGraphicList around a List of OMGraphics. The OMGraphicList     * assumes that all the objects on the list are OMGraphics, and never does     * checking. Live with the consequences if you put other stuff in there.     *      * @param list List of OMGraphics.     */    public OMGraphicList(java.util.List list) {        graphics = list;    }    /**     * OMGraphic method for returning a simple description of the list. This is     * really a debugging method.     */    public String getDescription() {        return getDescription(0);    }    /**     * OMGraphic method, for returning a simple description if the contents of     * the list. This method handles the spacing of sub-member descriptions.     * This is really a debugging method.     *      * @return String that represents the structure of the OMGraphicList.     */    public String getDescription(int level) {        StringBuffer sb = new StringBuffer();        if (level > 0) {            sb.append("|--> ");        }        sb.append("OMGraphicList with " + size() + " OMGraphic"                + (size() == 1 ? "\n" : "s\n"));        synchronized (this) {            StringBuffer sb1 = new StringBuffer();            for (int i = 0; i < level; i++) {                sb1.append("     ");            }            String spacer = sb1.toString();            for (Iterator it = iterator(); it.hasNext();) {                sb.append(spacer                        + ((OMGraphic) it.next()).getDescription(level + 1)                        + "\n");            }        }        return sb.toString();    }    /**     * Set whether the list returns the specific OMGraphic in response to a     * query, or itself.     */    public void setVague(boolean value) {        vague = value;    }    /**     * Get whether the list returns the specific OMGraphic in response to a     * query, or itself.     */    public boolean isVague() {        return vague;    }    /**     * Add an OMGraphic to the GraphicList. The OMGraphic must not be null.     *      * @param g the non-null OMGraphic to add     * @exception IllegalArgumentException if OMGraphic is null     */    public void addOMGraphic(OMGraphic g) {        _add(g);    }    /**     * Add an OMGraphic to the list.     */    public void add(OMGraphic g) {        _add(g);    }    /**     * Add an OMGeometry to the list.     */    protected synchronized void _add(OMGeometry g) {        checkForDuplicate(g);        graphics.add(g);    }    /**     * Set the order in which the list is traversed to draw or search the     * objects. The possible modes for the list are FIRST_ADDED_ON_TOP or     * LAST_ADDED_ON_TOP.     *      * @param mode traversal mode     */    public void setTraverseMode(int mode) {        traverseMode = mode;    }    /**     * Get the order in which the list is traversed to draw or search the     * objects. The possible modes for the list are FIRST_ADDED_ON_TOP or     * LAST_ADDED_ON_TOP.     *      * @return int traversal mode     */    public int getTraverseMode() {        return traverseMode;    }    /**     * Remove all elements from the graphic list.     */    public synchronized void clear() {        graphics.clear();    }    /**     * Find out if the list is empty.     *      * @return boolean true if the list is empty, false if not     */    public synchronized boolean isEmpty() {        return graphics.isEmpty();    }    /**     * Find out the number of graphics in the list.     *      * @return int the number of graphics on the list.     */    public synchronized int size() {        return graphics.size();    }    /**     * Set the graphic at the specified location. The OMGraphic must not be     * null.     *      * @param graphic OMGraphic     * @param index index of the OMGraphic to return     * @exception ArrayIndexOutOfBoundsException if index is out-of-bounds     */    public synchronized void setOMGraphicAt(OMGraphic graphic, int index) {        graphics.set(index, graphic);    }    /**     * Get the graphic at the location number on the list.     *      * @param location the location of the OMGraphic to return     * @return OMGraphic or null if location &gt; list size     * @exception ArrayIndexOutOfBoundsException if <code>location &lt; 0</code>     *            or <code>location &gt;=     * this.size()</code>     */    public OMGraphic getOMGraphicAt(int location) {        return (OMGraphic) _getAt(location);    }    /**     * Get the geometry at the location number on the list.     *      * @param location the location of the OMGeometry to return     * @return OMGraphic or null if location &gt; list size     * @exception ArrayIndexOutOfBoundsException if <code>location &lt; 0</code>     *            or <code>location &gt;=     * this.size()</code>     */    protected synchronized OMGeometry _getAt(int location) {        if (location < 0 || location >= graphics.size()) {            return null;        }        return (OMGeometry) graphics.get(location);    }    /**     * Set the geometry at the specified location. The OMGeometry must not be     * null.     *      * @param graphic OMGeometry     * @param index index of the OMGeometry to return     * @exception ArrayIndexOutOfBoundsException if index is out-of-bounds     */    protected synchronized void _setAt(OMGeometry graphic, int index) {        graphics.set(index, graphic);    }    /**     * Get the graphic with the appObject. Traverse mode doesn't matter. Tests     * object identity first, then tries equality.     *      * @param appObj appObject of the wanted graphic.     * @return OMGraphic or null if not found     * @see Object#equals     * @see OMGeometry#setAppObject     * @see OMGeometry#getAppObject     */    public OMGraphic getOMGraphicWithAppObject(Object appObj) {        return (OMGraphic) _getWithAppObject(appObj);    }    /**     * Get the graphic with the appObject. Traverse mode doesn't matter. Tests     * object identity first, then tries equality.     * <p>     *      * If this list contains OMGraphicLists that are not vague, and the those     * lists' appObject doesn't match, the object will be passed to those lists     * as well for a check, with their OMGraphic being passed back with a     * successful search.     *      * @param appObj appObject of the wanted graphic.     * @return OMGraphic or null if not found     * @see Object#equals

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久久久久免费丝袜| 日本一区二区三区国色天香| 国产乱理伦片在线观看夜一区| 日韩一区在线免费观看| 91精品国产一区二区人妖| 99精品国产一区二区三区不卡| 日韩av网站免费在线| 国产精品视频你懂的| 欧美一区二区三区四区高清| 91视频免费看| 国产精品中文字幕一区二区三区| 亚洲一区二区精品视频| 国产欧美视频一区二区| 制服丝袜中文字幕亚洲| 日本久久电影网| 国产成人av自拍| 男男gaygay亚洲| 一区二区视频在线看| 欧美高清一级片在线观看| 欧美成人福利视频| 欧美蜜桃一区二区三区| 一本久久a久久精品亚洲| 成人av电影免费观看| 国产精品99久久久久久久女警| 日韩高清电影一区| 夜色激情一区二区| 亚洲欧美激情在线| 国产精品久久国产精麻豆99网站| 久久久欧美精品sm网站| 精品国产污网站| 日韩一卡二卡三卡| 欧美精品自拍偷拍| 欧美视频一区在线| 一本色道久久综合狠狠躁的推荐| 99国产精品99久久久久久| 成人性生交大合| 成人a免费在线看| 豆国产96在线|亚洲| 国产91精品一区二区麻豆网站 | 91精品国产综合久久精品性色 | 欧美日韩情趣电影| 在线免费亚洲电影| 91成人看片片| 欧美日韩一二区| 欧美日韩一区二区欧美激情| 精品视频123区在线观看| 欧美美女激情18p| 欧美日本视频在线| 日韩一区二区在线播放| 欧美一级高清片在线观看| 91精品蜜臀在线一区尤物| 欧美一区欧美二区| 亚洲精品一区二区三区四区高清 | 4438亚洲最大| 337p亚洲精品色噜噜噜| 日韩精品一区二区三区四区视频| 欧美不卡激情三级在线观看| 久久久亚洲欧洲日产国码αv| 国产日产欧产精品推荐色| 国产精品人成在线观看免费| 成人免费一区二区三区在线观看| 亚洲免费观看高清完整版在线观看熊 | 成人午夜电影久久影院| 色综合久久久久| 欧美日韩视频在线一区二区| 日韩精品资源二区在线| 中文字幕高清不卡| 亚洲综合精品久久| 美女看a上一区| 成人永久aaa| 欧美视频中文字幕| 久久亚洲二区三区| 18成人在线视频| 首页欧美精品中文字幕| 精品一区二区三区免费播放| 成人午夜看片网址| 欧美精品高清视频| 国产日韩欧美在线一区| 亚洲男人的天堂在线aⅴ视频| 日韩高清国产一区在线| 成人高清免费观看| 欧美三级电影一区| 国产亚洲精品7777| 亚洲一区成人在线| 国产精品资源在线| 欧美日韩一区小说| 久久精品免视看| 性感美女极品91精品| 国产成人综合在线播放| 欧美日韩你懂的| 国产精品久久久久aaaa樱花| 日韩国产精品久久| 色综合久久综合| 1区2区3区欧美| 秋霞午夜鲁丝一区二区老狼| www.一区二区| 欧美成人精品1314www| 一个色综合av| 成人手机电影网| 欧美电影免费观看高清完整版在线观看 | 欧美在线啊v一区| 久久精品视频一区二区| 午夜精品123| eeuss影院一区二区三区| 日韩视频一区二区三区在线播放 | 免费观看在线色综合| 91麻豆产精品久久久久久| 精品国产凹凸成av人导航| 亚洲国产成人porn| 99re热这里只有精品视频| 久久久三级国产网站| 全部av―极品视觉盛宴亚洲| 欧美色老头old∨ideo| 亚洲色图一区二区| 成人夜色视频网站在线观看| 26uuu欧美| 美女免费视频一区| 欧美一区二区三区四区五区| 亚洲一区在线电影| 91香蕉视频污在线| 久久久久久亚洲综合| 亚洲色图.com| 丰满白嫩尤物一区二区| 久久精品夜色噜噜亚洲a∨| 久久国产精品色| 日韩一区二区在线观看| 日韩精品亚洲一区二区三区免费| 欧美亚洲一区二区在线| 亚洲免费高清视频在线| 一本色道a无线码一区v| 亚洲视频狠狠干| 99久久精品国产一区二区三区| 欧美激情一区三区| 国产成人综合视频| 国产亚洲综合在线| 国产精品一二三四五| 久久精品欧美一区二区三区不卡| 久久疯狂做爰流白浆xx| 欧美成人bangbros| 精品一区二区三区在线播放视频| 亚洲精品一区二区三区蜜桃下载| 精品一区二区免费看| 久久综合九色综合97婷婷| 国产一区不卡视频| 国产精品三级av| 99精品热视频| 亚洲自拍偷拍网站| 欧美美女bb生活片| 日本aⅴ精品一区二区三区| 日韩一级免费观看| 国产乱码精品一品二品| 国产精品少妇自拍| 91蜜桃在线观看| 亚洲国产毛片aaaaa无费看| 欧美男人的天堂一二区| 久久国产综合精品| 欧美国产精品一区| 91久久精品网| 日韩精品乱码av一区二区| 自拍偷拍欧美激情| 欧美三级在线看| 久久国内精品自在自线400部| 国产亲近乱来精品视频| 91久久精品一区二区| 秋霞av亚洲一区二区三| 国产欧美一区在线| 一本大道综合伊人精品热热| 天使萌一区二区三区免费观看| 日韩午夜激情电影| 国产成人在线观看免费网站| 亚洲精品写真福利| 日韩一区二区在线观看视频播放| 国产精品12区| 亚洲国产精品自拍| 国产亚洲一本大道中文在线| 91美女在线看| 久久se这里有精品| 亚洲伦理在线精品| 欧美成人aa大片| 91视频免费播放| 精品一区二区三区视频在线观看 | 性做久久久久久免费观看| 久久久精品欧美丰满| 91香蕉视频污| 国产资源在线一区| 一区二区三区国产| 久久精品视频在线看| 欧美精品在欧美一区二区少妇| 国产成人8x视频一区二区| 午夜伦欧美伦电影理论片| 欧美国产成人在线| 欧美一区二区久久| 色乱码一区二区三区88| 国产一区二区三区在线观看精品| 尤物视频一区二区| 国产色产综合色产在线视频| 欧美精品一卡二卡| 在线观看欧美日本| jlzzjlzz亚洲日本少妇| 美女视频一区二区|