virtualcylinder.java

来自「java编的模拟一个小球的非弹性碰撞」· Java 代码 · 共 57 行

JAVA
57
字号
import java.awt.*;

public class VirtualCylinder
{
	int x,y,width,height;
	Color color;
	
	public VirtualCylinder(int x,int y,int width,int height)
	{
		this.x=x;
		this.y=y;
		this.width=width;
		this.height=height;
		color=new Color(128,36,16);
	}
	
	public void setColor(Color color)
	{
		this.color=color;
	}
	
	public void draw(Graphics g)
	{
		if(width==0)return;
		Color colorOld=g.getColor();
		float red=color.getRed();
		float green=color.getGreen();
		float blue=color.getBlue();
		float rInc=(2.0f*(255-red))/width;
		float gInc=(2.0f*(255-green))/width;
		float bInc=(2.0f*(255-blue))/width;
		
		for(int ix=0;ix<width/2;ix++)
		{
			Color colorTemp=new Color((int)red,(int)green,(int)blue);
			g.setColor(colorTemp);
			g.drawLine(x+ix,y,x+ix,y+height-1);
			g.drawLine(x+width-ix-1,y,x+width-ix-1,y+height-1);
			red+=rInc;
			green+=gInc;
			blue+=bInc;
		}
		g.setColor(Color.white);
		g.drawLine(x+width/2,y,x+width/2,y+height-1);
		g.setColor(colorOld);
	}
}









⌨️ 快捷键说明

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