Java by API/java.awt/BasicStroke

Материал из Java эксперт
Перейти к: навигация, поиск

BasicStroke.CAP_BUTT

   <source lang="java">

import java.awt.BasicStroke; import java.awt.Graphics; import java.awt.Graphics2D; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 public void paint(Graphics g) {
   Graphics2D g2 = (Graphics2D) g;
   BasicStroke bs = new BasicStroke(16.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL);
   g2.setStroke(bs);
   g.drawLine(30, 20, 270, 20);
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



BasicStroke.CAP_ROUND

   <source lang="java">

import java.awt.BasicStroke; import java.awt.Graphics; import java.awt.Graphics2D; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 public void paint(Graphics g) {
   Graphics2D g2 = (Graphics2D) g;
   BasicStroke bs = new BasicStroke(16.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_BEVEL);
   g2.setStroke(bs);
   g.drawLine(30, 20, 270, 20);
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



BasicStroke.CAP_SQUARE

   <source lang="java">

import java.awt.BasicStroke; import java.awt.Graphics; import java.awt.Graphics2D; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 public void paint(Graphics g) {
   Graphics2D g2 = (Graphics2D) g;
   BasicStroke bs = new BasicStroke(16.0f, BasicStroke.CAP_SQUARE, BasicStroke.JOIN_BEVEL);
   g2.setStroke(bs);
   g.drawLine(30, 20, 270, 20);
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



BasicStroke.JOIN_BEVEL

   <source lang="java">

import java.awt.BasicStroke; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.geom.GeneralPath; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 public void paint(Graphics g) {
   Graphics2D g2 = (Graphics2D) g;
   RenderingHints rh = g2.getRenderingHints();
   rh.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
   g2.setRenderingHints(rh);
   BasicStroke bs = new BasicStroke(36.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL);
   g2.setStroke(bs);
   GeneralPath path = new GeneralPath();
   path.moveTo(30.0f, 90.0f);
   path.lineTo(150.0f, 20.0f);
   path.lineTo(270.0f, 90.0f);
   g2.draw(path);
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



BasicStroke.JOIN_MITER

   <source lang="java">

import java.awt.BasicStroke; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.geom.GeneralPath; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 public void paint(Graphics g) {
   Graphics2D g2 = (Graphics2D) g;
   RenderingHints rh = g2.getRenderingHints();
   rh.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
   g2.setRenderingHints(rh);
   BasicStroke bs = new BasicStroke(36.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER);
   g2.setStroke(bs);
   GeneralPath path = new GeneralPath();
   path.moveTo(30.0f, 90.0f);
   path.lineTo(150.0f, 20.0f);
   path.lineTo(270.0f, 90.0f);
   g2.draw(path);
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



BasicStroke.JOIN_ROUND

   <source lang="java">

import java.awt.BasicStroke; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.geom.GeneralPath; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 public void paint(Graphics g) {
   Graphics2D g2 = (Graphics2D) g;
   RenderingHints rh = g2.getRenderingHints();
   rh.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
   g2.setRenderingHints(rh);
   BasicStroke bs = new BasicStroke(36.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND);
   g2.setStroke(bs);
   GeneralPath path = new GeneralPath();
   path.moveTo(30.0f, 90.0f);
   path.lineTo(150.0f, 20.0f);
   path.lineTo(270.0f, 90.0f);
   g2.draw(path);
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}

      </source>
   
  
 
  



new BasicStroke(float width)

   <source lang="java">

import java.awt.BasicStroke; import java.awt.Color; import java.awt.Container; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.Ellipse2D; import javax.swing.JComponent; import javax.swing.JFrame; public class MainClass{

 public static void main(String[] args) {
   JFrame jf = new JFrame("Demo");
   Container cp = jf.getContentPane();
   MyCanvas tl = new MyCanvas();
   cp.add(tl);
   jf.setSize(300, 200);
   jf.setVisible(true);
 }

} class MyCanvas extends JComponent {

 public void paint(Graphics g) {
   Graphics2D g2 = (Graphics2D)g;
   
   g2.setPaint(Color.black);
   g2.setStroke(new BasicStroke(8));
   g2.draw(new Ellipse2D.Double(20,20, 50, 50));
 }

}

      </source>
   
  
 
  



new BasicStroke(float width, int cap, int join, float miterlimit, float[] dash, float dash_phase)

   <source lang="java">

import java.awt.BasicStroke; import java.awt.Color; import java.awt.Container; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Shape; import java.awt.Stroke; import java.awt.geom.Rectangle2D; import javax.swing.JComponent; import javax.swing.JFrame; public class MainClass{

 public static void main(String[] args) {
   JFrame jf = new JFrame("Demo");
   Container cp = jf.getContentPane();
   MyCanvas tl = new MyCanvas();
   cp.add(tl);
   jf.setSize(300, 200);
   jf.setVisible(true);
 }

} class MyCanvas extends JComponent {

 Shape shape;
 public MyCanvas() {
   shape = create();
 }
 protected Shape create() {
   float cm = 72 / 2.54f;
   return new Rectangle2D.Float(cm, cm, 2 * cm, cm);
 }
 public void paint(Graphics g) {
   Graphics2D g2 = (Graphics2D) g;
   Stroke stroke = new BasicStroke(1, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0,
       new float[] { 3, 1 }, 0);
   g2.setStroke(stroke);
   
   g2.setPaint(Color.black);
   g2.draw(shape);
   
 }

}

      </source>