import java.awt.BasicStroke;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.TexturePaint;
import java.awt.image.BufferedImage;
import javax.swing.JComponent;
import javax.swing.JFrame;
public class BasicDraw {
BasicDraw(){
JFrame frame = new JFrame();
frame.add(new MyComponent());
frame.setSize(300, 300);
frame.setVisible(true);
}
public static void main(String[] args) {
new BasicDraw();
}
}
class MyComponent extends JComponent{
public void paint(Graphics g){
Graphics2D g2d = (Graphics2D) g;
// float strokeThickness = 15.0f;//thickness:厚度
// BasicStroke stroke = new BasicStroke(strokeThickness);
// g2d.setStroke(stroke);
// g2d.draw(new Rectangle(20,20,200,200));
// int x = 10;
// int y = 10;
// int width = 50;
// int height = 25;
// BufferedImage bi = new BufferedImage(20,20,BufferedImage.TYPE_INT_RGB);
// TexturePaint texture = new TexturePaint(bi,new Rectangle(x,y,width,height));//纹理
// g2d.setPaint(texture);
float strokeThickness = 5.0f;
float miterLimit = 10f;
float[] dashPattern = { 10f };
float dashPhase = 5f;
BasicStroke stroke = new BasicStroke(strokeThickness, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER,
miterLimit, dashPattern, dashPhase);//虚线
g2d.setStroke(stroke);
g2d.draw(new Rectangle(20,20,200,200));
}
}