objrectangle.java
来自「用java编写的画图面板程序(有源代码)」· Java 代码 · 共 64 行
JAVA
64 行
package project.paint;
import java.awt.Graphics2D;
import java.awt.Point;
import java.awt.geom.Rectangle2D;
//矩形类
class ObjRectangle extends BaseObject {
public ObjRectangle() {
super();
type=BaseObject.RECTANGLE;
}
public String toString() {
String s="矩形("+String.valueOf(getMinX())+","+String.valueOf(getMinY())+")";
s+=" 宽: "+String.valueOf(getWidth())+", 高: "+String.valueOf(getHeight());
if (filled)
s+=", 填充";
return s;
}
public void addPoint(int x,int y) {
if (gradientPaint>0) {
if (p1==null) {
p1=new Point(x,y);
p2=new Point(x,y);
} else {
if (X.size()==2) {
int xB=getPointX(1);
int yB=getPointY(1);
if (gradientPaint==1) {
p2.x+=x-xB;
} else if (gradientPaint==2) {
p2.y+=y-yB;
} else if (gradientPaint==3) {
p2.x+=x-xB;
p2.y+=y-yB;
}
}
}
setGradientPaint(p1,p2);
}
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 draw(Graphics2D g2d) {
shape=new Rectangle2D.Float(getMinX(),getMinY(),getWidth(),getHeight());
shape2=new Rectangle2D.Float(0,0,getWidth(),getHeight());
doDraw(g2d,shape);
}
public void fill()
{
filled=true;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?