objline.java

来自「用java编写的画图面板程序(有源代码)」· Java 代码 · 共 43 行

JAVA
43
字号
package project.paint;

import java.awt.BasicStroke;
import java.awt.Graphics2D;
import java.awt.geom.Line2D;

//直线类
class ObjLine extends BaseObject {
	public ObjLine() {
		super();
		type=BaseObject.LINE;
	}
	public String toString() {
		String s="直线("+String.valueOf(getPointX(0))+","+String.valueOf(getPointY(0))+")";
		s+="-("+String.valueOf(getPointX(1))+","+String.valueOf(getPointY(1))+")";
		return s;
	}
	public void addPoint(int x,int y) {
		if (X.size()==0) {
			X.add(x);
			Y.add(y);
		} else {
			if (X.size()==1) {
				X.add(x);
				Y.add(y);
			} else {
				X.set(1,x);
				Y.set(1,y);
			}
		}
	}
	public void changeSize(int x,int y) {
		addPoint(x,y);
	}
	public void draw(Graphics2D g2d) {
		shape=new Line2D.Float(getPointX(0),getPointY(0),getPointX(1),getPointY(1));
		g2d.setPaint(color);
		g2d.setStroke(new BasicStroke(stroke,BasicStroke.CAP_ROUND,BasicStroke.JOIN_BEVEL));
		//g2d.drawLine(getPointX(0),getPointY(0),getPointX(1),getPointY(1));
		g2d.draw(shape);
	}
}

⌨️ 快捷键说明

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