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

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

?? omrasterobject.java

?? openmap java寫的開源數字地圖程序. 用applet實現,可以像google map 那樣放大縮小地圖.
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
// **********************************************************************// // <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/OMRasterObject.java,v $// $RCSfile: OMRasterObject.java,v $// $Revision: 1.8.2.4 $// $Date: 2005/01/10 16:59:45 $// $Author: dietrick $// // **********************************************************************package com.bbn.openmap.omGraphics;import java.awt.Dimension;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.Image;import java.awt.Point;import java.awt.Toolkit;import java.awt.geom.AffineTransform;import java.awt.image.AreaAveragingScaleFilter;import java.awt.image.BufferedImage;import java.awt.image.FilteredImageSource;import java.awt.image.ImageConsumer;import java.awt.image.ImageFilter;import java.awt.image.ImageObserver;import java.awt.image.ImageProducer;import java.awt.image.MemoryImageSource;import java.awt.image.PixelGrabber;import java.awt.image.RenderedImage;import java.io.IOException;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.Serializable;import com.bbn.openmap.image.ImageHelper;import com.bbn.openmap.proj.Projection;import com.bbn.openmap.util.Debug;/** * The OMRasterObject is the parent class for OMRaster and OMBitmap * objects. It manages some of the same functions that both classes * require in order to create image pixel data from bytes or integers. *  * <P> * An ImageFilter may be applied to OMRasterObjects. These can be * scale filters, color filters, or maybe (?hopefully?) projection * filters. These filters won't change the original image data, and * the original can be reconstructed by resetting the filter to null, * and generating the object. * <P> *  * For all classes in the OMRasterObject family, a java.awt.Shape * object is created for the border of the image. This Shape object is * used for distance calculations. If the OMRasterObject is * selected(), however, this Shape will be rendered with the OMGraphic * parameters that are set in the OMGraphic. */public abstract class OMRasterObject extends OMGraphic implements Serializable,        ImageObserver {    /**     * The direct colormodel, for OMRasters, means the integer values     * passed in as pixels, already reflect the RGB color values each     * pixel should display.     */    public final static int COLORMODEL_DIRECT = 0;    /**     * The indexed colormodel, for OMRasters, means that the byte     * array passed in for the pixels has to be resolved with a     * colortable in order to create a integer array of RGB pixels.     */    public final static int COLORMODEL_INDEXED = 1;    /**     * The ImageIcon colormodel means that the image is externally     * set, and we just want to to display the image at the given     * location.     */    public final static int COLORMODEL_IMAGEICON = 2;    /** If scaling the image, use the slower, smoothing algorithm. */    public final static int SMOOTH_SCALING = 0;    /**     * If scaling the image, use the faster, replicating/clipping     * algorithm.     */    public final static int FAST_SCALING = 1;    /**     * colorModel helps figure out what kind of updates are necessary,     * by knowing what kind of image we're dealing with. For the     * images created with a ImageIcon, the attribute updates that     * don't relate to position will not take affect.     */    protected int colorModel = COLORMODEL_DIRECT;    /**     * The pixels are used for the image that is drawn on the window.     * The pixels are either passed in as an int[] in some     * constructors of the OMRaster, or it is constructed in the     * OMBitmap and in OMRasters that have a colortable.     */    protected int[] pixels = null;    /**     * Horizontal location of the upper left corner of the image, or     * the x offset from the lon for that corner, in pixels.     */    protected int x = 0;    /**     * Vertical location of the upper left corner of the image, or the     * y offset from the lat for that corner, in pixels.     */    protected int y = 0;    /**     * The latitude of the upper left corner for the image, in decimal     * degrees.     */    protected float lat = 0.0f;    /**     * The longitude of the upper left corner for the image, in     * decimal degrees.     */    protected float lon = 0.0f;    /**     * The width of the image, in pixels. This always reflects the     * width of the original image, even if a filter is applied to the     * image.     */    protected int width = 0;    /**     * The height of the image, in pixels. This always reflects the     * height of the original image, even if a filter is applied to     * the image.     */    protected int height = 0;    /**     * The byte info for the image. OMBitmaps use each bit as an     * indication to use the lineColor or the fillColor for each pixel     * (like a XBitmap). OMRasters only use the bits when the image     * being created follows the indexed colormodel. Then, the bits     * hold the colortable indexes that each pixel needs to have a     * color substituted in later.     */    protected byte[] bits = null;    /** The bitmap is drawn to the graphics. */    protected transient Image bitmap = null;    /**     * Projected window pixel location of the upper left corner of the     * image.     */    protected Point point1 = null;    /**     * Projected window pixel location of the lower right corner of     * the image.     */    protected Point point2 = null;    /**     * The width of the image after scaling, if you want the image to     * be a different size than the source.     */    protected int filteredWidth = 0;    /**     * The height of the image after scaling, if you want the image to     * be a different size than the source.     */    protected int filteredHeight = 0;    /** The image filter to use on the constructed image. */    protected ImageFilter imageFilter = null;    /**     * Set if the projection has had attributes change that require a     * repositioning of the image, not a regeneration.     */    protected boolean needToReposition = true;    /**     * Pixel height of the current projection. Used for efficient     * zoom-in scaling.     */    int projHeight;    /**     * Pixel width of the current projection. Used for efficient     * zoom-in scaling.     */    int projWidth;    /** the angle by which the image is to be rotated, in radians */    protected double rotationAngle;    protected boolean DEBUG = false;    /**     * A Contructor that sets the graphic type to raster, render type     * to unknown, line type to unknown, and the declutter type to     * none.     */    public OMRasterObject() {        super(RENDERTYPE_UNKNOWN, LINETYPE_UNKNOWN, DECLUTTERTYPE_NONE);        DEBUG = Debug.debugging("omraster");    }    /**     * A Contructor that sets the graphic type, render type, line type     * and the declutter type to the values you pass in. See OMGraphic     * for the definitions of these attributes.     *      * @param rType render type     * @param lType line type     * @param dcType declutter type     */    public OMRasterObject(int rType, int lType, int dcType) {        super(rType, lType, dcType);        DEBUG = Debug.debugging("omraster");    }    /**     * The color model is set based on the constructor. This setting     * controls what parameter changes are posiible for different     * models of images.     *      * @param cm the colormode that describes how the colors are being     *        set - COLORMODEL_DIRECT, COLORMODEL_INDEXED, or     *        COLORMODEL_IMAGEICON.     */    protected void setColorModel(int cm) {        colorModel = cm;    }    /**     * Get the color model type of the image.     *      * @return COLORMODEL_DIRECT, COLORMODEL_INDEXED, or     *         COLORMODEL_IMAGEICON.     */    public int getColorModel() {        return colorModel;    }    /**     * Set the flag for the object that lets the render method (which     * draws the object) know that the object needs to be repositioned     * first.     */    public void setNeedToReposition(boolean value) {        needToReposition = value;    }    /** Return the reposition status. */    public boolean getNeedToReposition() {        return needToReposition;    }    /**     * Set the angle by which the image is to rotated.     *      * @param angle the number of radians the image is to be rotated.     *        Measured clockwise from horizontal.     */    public void setRotationAngle(double angle) {        this.rotationAngle = angle;        setNeedToRegenerate(true);    }    /**     * Get the current rotation of the image.     *      * @return the image rotation.     */    public double getRotationAngle() {        return rotationAngle;    }    /**     * Compute the raster objects pixels, based on the color model and     * the byte values.     *      * @return true if everything goes OK (height*width =     *         pixel.length, etc.).     */    protected abstract boolean computePixels();    /**     * Called from within render(). This method should call rotate()     * on the provided Graphics2D object, setting the rotation angle     * and the rotation point. By default, the rotation angle is     * whatever is set in the OMRasterObject, and the rotation point     * is the offset point plus half the image width in the horizonal     * direction, and half the image in the vertical direction.     */    protected void rotate(Graphics2D g) {        int w = width;        int h = height;        if (shape != null) {            java.awt.Rectangle rect = shape.getBounds();            w = (int) rect.getWidth();            h = (int) rect.getHeight();        }        ((Graphics2D) g).rotate(rotationAngle, point1.x + w / 2, point1.y + h                / 2);    }    /**     * Render the raster on the java.awt.Graphics     *      * @param g java.awt.Graphics to draw the image on.     */    public void render(Graphics g) {        if (getNeedToRegenerate() || getNeedToReposition() || !isVisible()) {            if (DEBUG) {                Debug.output("OMRasterObject.render(): need to regenerate or not visible!");            }            return;        }        //copy the graphic, so our transform doesn't cascade to        // others...        g = g.create();        // Just a little check to find out if someone is rushing        // things. If a Image isn't fully loaded, the getWidth will        // return -1. This is just a courtesy notification in case        // someone isn't seeing their image, and don't know why.        if (colorModel == COLORMODEL_IMAGEICON && (getWidth() == -1)) {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人福利在线看| 国产欧美综合在线观看第十页| 欧美一区二区二区| 中文无字幕一区二区三区| 亚洲黄色片在线观看| 国产在线播放一区三区四| 欧美综合一区二区| 久久九九全国免费| 美女网站在线免费欧美精品| 91亚洲精品久久久蜜桃| 久久亚洲捆绑美女| 奇米精品一区二区三区在线观看| av在线综合网| 26uuu亚洲综合色欧美| 亚洲妇女屁股眼交7| 一本到三区不卡视频| 亚洲国产成人在线| 国产乱人伦偷精品视频免下载| 欧美精品少妇一区二区三区| 亚洲欧美视频一区| 播五月开心婷婷综合| 久久久噜噜噜久久中文字幕色伊伊 | 国产福利一区二区三区| 国产精品久久免费看| 另类成人小视频在线| 欧美高清视频在线高清观看mv色露露十八| 中文字幕一区二区三区视频 | 亚洲高清视频的网址| 97久久精品人人做人人爽| 国产色91在线| 国产成人精品三级| 欧美韩日一区二区三区四区| 精品中文字幕一区二区小辣椒| 欧美一区二区在线免费观看| 免费久久精品视频| 精品国产免费一区二区三区香蕉| 久久国产视频网| 欧美大片免费久久精品三p| 美女视频黄免费的久久| 精品国产亚洲一区二区三区在线观看 | 宅男噜噜噜66一区二区66| 亚洲第一激情av| 5858s免费视频成人| 天天影视网天天综合色在线播放 | 日韩亚洲电影在线| 精品亚洲国内自在自线福利| 久久天堂av综合合色蜜桃网| 国产精品中文字幕欧美| 国产精品国产三级国产aⅴ无密码| 成人免费毛片高清视频| 中文字幕在线观看一区| 欧美主播一区二区三区美女| 亚洲成av人片在www色猫咪| 欧美一区二区福利视频| 国产一区二区三区蝌蚪| 国产精品你懂的在线| 色88888久久久久久影院野外| 午夜激情一区二区三区| 精品人伦一区二区色婷婷| 国产综合一区二区| 国产精品久久久久久久久搜平片 | 自拍av一区二区三区| 欧美日韩一区二区三区四区五区| 美女在线视频一区| 国产精品久久久久婷婷| 欧美日韩国产区一| 国产河南妇女毛片精品久久久| 亚洲美女视频一区| 欧美大黄免费观看| 色哦色哦哦色天天综合| 色哟哟在线观看一区二区三区| 亚洲美女免费在线| 久久一夜天堂av一区二区三区| 色综合婷婷久久| 热久久免费视频| 亚洲欧美一区二区视频| 日韩欧美国产综合一区| 色综合色综合色综合| 久久www免费人成看片高清| 中文字幕五月欧美| 精品播放一区二区| 欧美日韩日日骚| 成人黄色免费短视频| 麻豆国产精品777777在线| 一区二区在线观看视频在线观看| 欧美va亚洲va在线观看蝴蝶网| 91理论电影在线观看| 精品亚洲国产成人av制服丝袜| 亚洲综合成人在线视频| 国产欧美一区二区精品婷婷| 91精品午夜视频| 欧美亚洲一区二区在线观看| 国产成人夜色高潮福利影视| 天堂在线一区二区| 一个色综合网站| 中文字幕一区二区在线播放| 2021国产精品久久精品| 91精品国产91久久久久久一区二区 | 国产亚洲一区二区在线观看| 日韩一区二区三区电影在线观看| 91天堂素人约啪| 欧美妇女性影城| 欧美伊人精品成人久久综合97 | 美女www一区二区| 亚洲成人在线网站| 亚洲伊人色欲综合网| 国产精品成人午夜| 欧美国产成人精品| 国产日韩精品视频一区| 久久网这里都是精品| 欧美videofree性高清杂交| 日韩一区二区在线播放| 91精品国产一区二区| 欧美区视频在线观看| 欧美私人免费视频| 精品视频在线免费| 欧美日本视频在线| 欧美精品xxxxbbbb| 日韩视频一区二区| 精品日韩成人av| 久久久精品2019中文字幕之3| www一区二区| 国产视频视频一区| 欧美激情中文字幕一区二区| 欧美国产综合色视频| 国产精品超碰97尤物18| 亚洲免费观看高清在线观看| 一区二区三区中文字幕| 亚洲午夜激情网页| 日韩中文字幕1| 国产在线视频一区二区| 国产成人午夜精品影院观看视频| youjizz国产精品| 91福利视频久久久久| 在线播放中文一区| 久久久久久久久久久久久夜| 久久国产精品99精品国产| 国产综合色产在线精品| 成人黄色免费短视频| 欧美色综合影院| 日韩欧美激情在线| 国产精品免费视频网站| 亚洲男人的天堂在线aⅴ视频| 亚洲一区二区三区小说| 美女免费视频一区二区| 成人看片黄a免费看在线| 色天使久久综合网天天| 日韩精品一区二区三区四区| 中文幕一区二区三区久久蜜桃| 亚洲人妖av一区二区| 日韩影院在线观看| 国产成人精品免费一区二区| 欧美性xxxxxxxx| 精品国精品国产尤物美女| 亚洲色图欧洲色图| 韩国av一区二区三区四区| jvid福利写真一区二区三区| 欧美人体做爰大胆视频| 国产精品日韩成人| 日韩avvvv在线播放| 成人短视频下载| 日韩女优av电影在线观看| 亚洲啪啪综合av一区二区三区| 免费美女久久99| 色婷婷精品久久二区二区蜜臂av | 五月天中文字幕一区二区| 国产成人av电影免费在线观看| 欧美日韩亚洲综合在线 | 奇米亚洲午夜久久精品| 色综合一区二区三区| 久久亚洲私人国产精品va媚药| 亚洲国产毛片aaaaa无费看| 国产九色精品成人porny| 91精品欧美一区二区三区综合在| 国产精品乱子久久久久| 经典三级在线一区| 欧美性做爰猛烈叫床潮| 日本一区二区三区免费乱视频| 奇米亚洲午夜久久精品| 欧美网站一区二区| 亚洲欧洲精品一区二区精品久久久| 蜜桃久久av一区| 欧美精品自拍偷拍| 国产成人精品三级麻豆| 91精品国产色综合久久不卡蜜臀| 亚洲老司机在线| 99久久国产综合精品麻豆| 久久女同互慰一区二区三区| 视频一区免费在线观看| 欧美探花视频资源| 亚洲综合免费观看高清完整版| 不卡视频一二三四| 国产精品免费丝袜| 不卡视频免费播放| 国产精品―色哟哟| 成人免费看的视频| 中文字幕免费观看一区| 国产麻豆精品一区二区| 精品91自产拍在线观看一区| 久久99这里只有精品|