📄 pencil.java
字号:
package LYD.Draw;
import java.awt.Graphics;
import java.awt.Cursor;
import java.awt.event.MouseEvent;
import java.awt.Color;
import java.awt.Point;
import java.util.ArrayList;
public class Pencil implements ITypeDrawCommand
{
protected ArrayList altPoint=new ArrayList();
protected int brushType=0;
protected Color _color=Color.BLACK;
protected IBasicBrush _IBasicBrush=new Brush();
public Pencil(){}
public Pencil(Graphics g){_IBasicBrush.setGraphics(g);}
public Pencil(int _x1,int _y1,int _x2,int _y2,Color c,IBasicBrush i)
{
addPoint(_x1,_y1);
_color=c;
_IBasicBrush.setColor(i.getColor());
_IBasicBrush.setWidth(i.getWidth());
}
public void addPoint(int x,int y){altPoint.add(new Point(x,y));}
public void ReDo(Graphics g)
{
_IBasicBrush.setGraphics(g);
for(int i=1;i<altPoint.size();i++)
{
Point temp1=(Point)altPoint.get(i-1);
Point temp2=(Point)altPoint.get(i);
_IBasicBrush.paintLine((int)temp1.getX(),(int)temp1.getY(),(int)temp2.getX(),(int)temp2.getY());
}
}
public void UnDo(){}
public void setWidth(int w){_IBasicBrush.setWidth(w);}
public Cursor getCursor(){return new Cursor(Cursor.DEFAULT_CURSOR);}
public void setColor(Color color){_IBasicBrush.setColor(color);}
public Color getColor(){return _IBasicBrush.getColor();}
public void setGraphics(Graphics g){_IBasicBrush.setGraphics(g);}
public void setType(int type)
{
if(type==0)
this._IBasicBrush=new Brush();
}
public void mouseReleased(MouseEvent e)
{
Pencil p=(Pencil)TypeDrawController.peek();
p.addPoint(e.getX(),e.getY());
}
public void mousePressed(MouseEvent e)
{
TypeDrawController.addToTop(new Pencil(e.getX(),e.getY(),0,0,Draw.foreColor,_IBasicBrush));
}
public void mouseExited(MouseEvent e)
{
}
public void mouseEntered(MouseEvent e)
{
}
public void mouseClicked(MouseEvent e)
{
}
public void mouseMoved(MouseEvent e)
{
}
public void mouseDragged(MouseEvent e)
{
Pencil p=(Pencil)TypeDrawController.peek();
p.addPoint(e.getX(),e.getY());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -