BasicStroke Example
The BasicStroke class can be used to provide a variety of styles for line thicknesses and how line joins and caps (ends) are rendered. The first of its constructor calls has a single parameter, line thickness, and this uses the default cap and join.
The subsequent calls have two extra parameters, one for cap, one for join. The two caps not shown are CAP_ROUND and CAP_SQUARE.
// BasicStroke Example
import javax.swing.*;
import java.awt.geom.*;
import java.awt.*;
class BasicStrokeExample extends JApplet {
@Override public void paint(Graphics g) {
super.paint(g);
Graphics2D g2 = (Graphics2D)g;
BasicStroke bs = new BasicStroke(10);
Rectangle2D r = new Rectangle2D.Double(10, 50, 280, 90);
g2.setStroke(bs);
g2.draw(r);
bs = new BasicStroke(20,BasicStroke.CAP_BUTT,BasicStroke.JOIN_BEVEL);
r = new Rectangle2D.Double(30, 75, 60, 40);
g2.setStroke(bs);
g2.draw(r);
bs = new BasicStroke(20,BasicStroke.CAP_BUTT,BasicStroke.JOIN_MITER);
r = new Rectangle2D.Double(120, 75, 60, 40);
g2.setStroke(bs);
g2.draw(r);
bs = new BasicStroke(20,BasicStroke.CAP_BUTT,BasicStroke.JOIN_ROUND);
r = new Rectangle2D.Double(210, 75, 60, 40);
g2.setStroke(bs);
g2.draw(r);
}
}
