⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testgraphicsclipping.java

📁 This is a resource based on j2me embedded,if you dont understand,you can connection with me .
💻 JAVA
字号:
/* *    * * Copyright  1990-2007 Sun Microsystems, Inc. All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER *  * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License version * 2 only, as published by the Free Software Foundation. *  * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License version 2 for more details (a copy is * included at /legal/license.txt). *  * You should have received a copy of the GNU General Public License * version 2 along with this work; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA *  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa * Clara, CA 95054 or visit www.sun.com if you need additional * information or have any questions. */package javax.microedition.lcdui;import com.sun.midp.i3test.*;public class TestGraphicsClipping extends TestCase {    static final int BACKGROUND_COLOR = 0xffffffff;    int width = 10;    int height = 10;    int backgroundColor = 0;    void draw(Graphics g) {	g.setColor(0);	g.fillRect(0, 0, width, height);    }    void testOne() {        int[] unclippedData = new int[width*height];        int[] clippedData = new int[width*height];	Image image = Image.createImage(width, height);	Graphics g = image.getGraphics();	backgroundColor = g.getDisplayColor(BACKGROUND_COLOR);	for (int cx = 1; cx < width; cx++) {	    for (int cy = 1; cy < height; cy++) {		for (int cw = 1; cw < width-cx; cw++) {		    for (int ch = 1; ch < height-cy; ch++) {			g.setClip(0, 0, width, height);			g.setColor(backgroundColor);			g.fillRect(0, 0, width, height);			draw(g);			image.getRGB(unclippedData, 0, width, 0, 0, width, height);			g.setColor(backgroundColor);			g.fillRect(0, 0, width, height);			g.setClip(cx, cy, cw, ch);			draw(g);			image.getRGB(clippedData, 0, width, 0, 0, width, height);				boolean result = verifyClip(unclippedData, clippedData, cx, cy, cw, ch);			assertTrue(result);		    }		}	    }	}    }    boolean verifyClip(int[] unclippedData, int[] clippedData, int cx, int cy, int cw, int ch) {        for (int y = 0; y < height; y++) {            for (int x = 0; x < width; x++) {		int index = y*width + x;		if (y >= cy && y < cy+ch && x >= cx && x < cx + cw) {		    /* should match unclipped version when alpha is ignored */		    if ((clippedData[index]) != (unclippedData[index])) {			System.out.println("FAILURE: inside clip (" + x + "," + y + ")" + 					   " clipped=" + 					   Integer.toHexString(clippedData[index]) + 					   " unclipped=" + 					   Integer.toHexString(unclippedData[index]));			return false;		    }		} else {		    /* should be background color when alpha is ignored */		    if ((clippedData[index]&0x00ffffff) != (backgroundColor&0xffffff)) {			System.out.println("FAILURE: outside clip (" + x + "," + y + ")" + 					   " clipped=" + 					   Integer.toHexString(clippedData[index]&0xffffff) + 					   " backgroundColor=" + 					   Integer.toHexString(backgroundColor&0xffffff));			return false;		    }		}            }        }	return true;    }    public void runTests() {        declare("testOne");        testOne();    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -