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

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

?? graphicparallelogram.java

?? 用java開發的一個實施策略游戲源碼 值得學習一下
?? JAVA
字號:
/*
	Netwar
	Copyright (C) 2002  Daniel Grund, Kyle Kakligian, Jason Komutrattananon, & Brian Hibler.

	This file is part of Netwar.

	Netwar is free software; you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation; either version 2 of the License, or
	(at your option) any later version.

	Netwar 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 for more details.

	You should have received a copy of the GNU General Public License
	along with Netwar; if not, write to the Free Software
	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */
package netwar.utils.vectorgraphics;
import netwar.utils.*;
import java.awt.Color;
import netwar.game.GameViewer;

/** Primitive GraphicThing.
 * This represents a parallelogram to be drawn filling the space between
 * four points in a particular color.
 * No warranty is made for the correctness of the results if the class is 
 * improperly used: The points should be provided to the constructor in 
 * adjacent order (i.e. two consecutive arguments are consecutive vertices).
 * It is the responsibility of the creating class and any other classes that 
 * call this to keep the points in a Parallelogram shape.
 */
public class GraphicParallelogram extends GraphicThing {
	private SelfConvertingPoint a;
	private SelfConvertingPoint b;
	private SelfConvertingPoint c;
	private SelfConvertingPoint d;
	private Color col;
	/** Create a GraphicParallelogram without external point control.
	 * The object can only be moved by calling translate and rotate.
	 * @param A One initial endpoint.
	 * @param B Another initial endpoint.
	 * @param C Another initial endpoint.
	 * @param D Yet another initial endpoint.
	 * @param COL The color of the line segment.
	 */
	public GraphicParallelogram(Point3D A, Point3D B, Point3D C, Point3D D, Color COL) {
		a = new SelfConvertingPoint(A);
		b = new SelfConvertingPoint(B);
		c = new SelfConvertingPoint(C);
		d = new SelfConvertingPoint(D);
		col = COL;
	}
	/** Create a GraphicParallelogram with external point control.
	 * The object can be manipulated by changing A, B, C and D outside the class.
	 * @param A One endpoint.
	 * @param B Another endpoint.
	 * @param C Another endpoint.
	 * @param D Yet another endpoint.
	 * @param COL The color of the line segment.
	 */
	public GraphicParallelogram(SelfConvertingPoint A, SelfConvertingPoint B, SelfConvertingPoint C, SelfConvertingPoint D, Color COL) {
		a = A;
		b = B;
		c = C;
		d = D;
		col = COL;
	}
	public float getZ(Transform t) {
		Point3D pt = new Point3D(a);
		float Z;
		Z = a.getScreenPoint(t).z;
		Z += b.getScreenPoint(t).z;
		Z += c.getScreenPoint(t).z;
		Z += d.getScreenPoint(t).z;
		Z /= 4;
		return Z;
	}
	public void draw(GameViewer v) {
		if(!isOnScreen(v.getTransform()))
			return;
		v.setColor(col);
		v.drawTriangle(a,b,c);
		v.drawTriangle(a,d,c);
	}
	public GraphicThing rotate(Point3D axisPt, Point3D axisDir, int angle)
	{
		a.doRotate(axisPt, axisDir, angle);
		b.doRotate(axisPt, axisDir, angle);
		c.doRotate(axisPt, axisDir, angle);
		d.doRotate(axisPt, axisDir, angle);
		update();
		return this;
	}
	public GraphicThing translate(Point3D offset)
	{
		a.doSum(offset);
		b.doSum(offset);
		c.doSum(offset);
		d.doSum(offset);
		update();
		return this;
	}
	public boolean isOnScreen(Transform t) {
		return (a.isOnScreen(t) || b.isOnScreen(t) || c.isOnScreen(t) || d.isOnScreen(t));
	}
	public void explode(Point3D epicenter) {
		//This is a case where the parallelogram shape is needed for correctness of function.
		kill();
		unlink();
		Point3D center = getCenter();
		Point3D velocity = center.getDifference(epicenter);
		netwar.game.Projectile.newProjectile(new netwar.game.projectile.DebrisFragment(this), center, velocity, 0, 0, 100, null, null);
	}
	Point3D getCenter() {
		return a.getSum(c).doProduct(0.5f);
	}
	void unlink() {
		a = new SelfConvertingPoint(a);
		b = new SelfConvertingPoint(b);
		c = new SelfConvertingPoint(c);
		d = new SelfConvertingPoint(d);
	}
	public GraphicThing copy() {
		GraphicParallelogram gp = new GraphicParallelogram(a,b,c,d,col);
		gp.unlink();
		return gp;
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美色精品在线视频| 色哟哟国产精品免费观看| 亚洲乱码中文字幕| 国产精品精品国产色婷婷| 欧美国产成人精品| 久久婷婷成人综合色| 久久日一线二线三线suv| 欧美不卡一区二区三区四区| 日韩欧美国产小视频| 欧美tk丨vk视频| 2023国产精品视频| 国产精品入口麻豆原神| 国产精品久久99| 亚洲精品视频免费看| 午夜私人影院久久久久| 免费成人在线影院| 国产精品伊人色| av网站免费线看精品| 色综合欧美在线视频区| 欧美区视频在线观看| 精品捆绑美女sm三区| 欧美国产精品专区| 亚洲一区二区三区自拍| 日韩—二三区免费观看av| 国产在线看一区| 色噜噜夜夜夜综合网| 欧美一级黄色大片| 国产精品天天摸av网| 亚洲高清免费视频| 国产精品一品二品| 欧美午夜精品久久久久久孕妇 | 亚洲一区二区欧美| 日韩成人一级大片| 成人中文字幕在线| 在线视频一区二区免费| 久久久亚洲精品一区二区三区 | 久久色在线视频| 亚洲精品成人精品456| 久久精品国产久精国产爱| 成人免费观看av| 欧美群妇大交群中文字幕| 欧美国产激情一区二区三区蜜月| 亚洲一区在线视频| 国产福利一区二区| 91精品国产综合久久精品麻豆| 国产精品另类一区| 久久精品国产999大香线蕉| 色88888久久久久久影院野外| 精品久久人人做人人爱| 亚洲高清视频的网址| 成人午夜激情影院| 精品国产乱码久久久久久久| 亚洲国产综合视频在线观看| 成人午夜伦理影院| 欧美最新大片在线看 | 亚洲国产一区二区a毛片| 国产成人精品亚洲午夜麻豆| 欧美精品一二三| 亚洲精品乱码久久久久久| 国产河南妇女毛片精品久久久| 欧美日韩电影一区| 亚洲女性喷水在线观看一区| 国产在线国偷精品产拍免费yy| 欧美人与禽zozo性伦| 悠悠色在线精品| heyzo一本久久综合| 国产欧美视频一区二区| 久久精品国产澳门| 91精品婷婷国产综合久久竹菊| 一区二区三区在线免费播放| 成人综合在线视频| 国产精品网友自拍| 成人小视频免费在线观看| 久久久久久久久久久99999| 美女国产一区二区三区| 4438x亚洲最大成人网| 午夜视频在线观看一区二区 | 韩国成人在线视频| 精品久久久久久久久久久久包黑料 | 欧美一级xxx| 美女视频免费一区| 精品国产一区二区三区av性色| 精品系列免费在线观看| 久久综合九色综合97婷婷女人| 蜜桃精品在线观看| 久久综合色一综合色88| 国产精品一二一区| 亚洲欧洲日产国码二区| 在线视频国产一区| 亚洲在线视频一区| 日韩一区二区三区视频| 国产在线观看一区二区| 国产精品看片你懂得| 日本电影欧美片| 麻豆一区二区三| 国产亲近乱来精品视频| 99在线视频精品| 天堂久久一区二区三区| 欧美va在线播放| av网站免费线看精品| 亚洲一区二区欧美| 欧美本精品男人aⅴ天堂| 成人中文字幕电影| 亚洲电影视频在线| 久久综合九色综合欧美98| 91网站最新地址| 奇米精品一区二区三区在线观看一| 精品免费国产一区二区三区四区| 欧美主播一区二区三区美女| 免费在线看一区| 国产精品久久二区二区| 91.成人天堂一区| 成人免费不卡视频| 日韩高清在线观看| 亚洲图片欧美激情| 日韩欧美电影在线| 99精品热视频| 蜜臀va亚洲va欧美va天堂| 亚洲视频电影在线| 亚洲精品一区二区三区四区高清 | 亚洲精品日产精品乱码不卡| 日韩免费观看2025年上映的电影| 99久久精品免费看国产免费软件| 天天综合网天天综合色| 亚洲丝袜制服诱惑| 久久久久久久网| 欧美一卡二卡在线观看| 色综合久久久久久久| 国产福利一区二区三区视频在线| 日韩黄色免费电影| 亚洲一二三四在线观看| 国产精品国产三级国产三级人妇 | 国产精品一区二区久久不卡 | 成人av午夜电影| 久久精品国产亚洲5555| 亚洲电影激情视频网站| |精品福利一区二区三区| 国产日韩成人精品| 精品国产露脸精彩对白| 日韩欧美一区二区三区在线| 欧美主播一区二区三区美女| 日韩午夜激情电影| 欧美久久久久久久久久| 欧美色图片你懂的| 色呦呦国产精品| 色综合中文字幕国产 | 欧美日韩专区在线| 91麻豆国产香蕉久久精品| 成人激情黄色小说| 成人开心网精品视频| 国产东北露脸精品视频| 国产一区二区不卡老阿姨| 激情文学综合网| 国产乱码精品一区二区三区av| 久久99精品一区二区三区| 激情综合色综合久久综合| 国产一区二区网址| 国产精品18久久久久久久久| 国产成人精品影视| www.亚洲国产| 色婷婷综合五月| 欧美精品在线一区二区三区| 7777精品伊人久久久大香线蕉的| 欧美日本在线视频| 日韩一级免费一区| 久久中文字幕电影| 国产清纯美女被跳蛋高潮一区二区久久w | 亚洲综合视频网| 美女视频免费一区| 国产69精品久久777的优势| 成人av资源下载| 欧美性受xxxx| 精品国产污网站| 欧美激情综合五月色丁香小说| 17c精品麻豆一区二区免费| 亚洲在线中文字幕| 激情深爱一区二区| www.欧美色图| 欧美夫妻性生活| 久久久久久一级片| 伊人色综合久久天天| 免费在线视频一区| 成人sese在线| 91精品国产综合久久婷婷香蕉| 精品va天堂亚洲国产| 亚洲欧美偷拍三级| 美国一区二区三区在线播放| 成人午夜视频福利| 制服丝袜成人动漫| 国产精品视频一二三区 | 精品国产伦理网| 亚洲视频电影在线| 久久99国产精品尤物| 色狠狠一区二区三区香蕉| 欧美α欧美αv大片| 亚洲国产日韩综合久久精品| 国产一区不卡精品| 在线不卡一区二区| 中文字幕在线观看不卡| 九色综合狠狠综合久久|