package paint;! c: T6 Q) J7 p; A' Y
import javax.swing.JFrame;* u9 D) `" M! \" e
public class Graph2DG extends JFrame{+ `1 H$ E- \1 U1 ^- \! ?( ]; U
public Graph2DG(){
$ D/ D3 z, A$ [; Z8 J G2DPanel jp=new G2DPanel();
* n8 h, Q9 Q- p' W, x getContentPane().add(jp);
; {- E; `' v# d" G- F setSize(200,200);& N5 D$ f4 l! _: e% y
setVisible(true);
- l: `7 A+ o- s5 O }4 X) y: Z' [6 w1 K
public static void main(String args) {, G, W6 P2 j& Q# r
new Graph2DG();
/ w" q, _& D$ U- V, D: s% o8 M; O }! l2 K+ Y; t. J4 U
}
4 h" b) a9 O0 K# G. S* a package paint;# g' n% a8 j9 i# P
import java.awt.Color;3 R9 E( m0 j, h- O5 v
import java.awt.Graphics;" O. e; o( S; G4 w$ |$ n& {* |4 `4 N: p/ U( k
import java.awt.Graphics2D;
7 k. d' n, z9 F% c3 l import java.awt.geom.Arc2D;2 A7 w9 \; e' w1 v% B) p/ V8 u
import java.awt.geom.Rectangle2D;
: z7 C2 G, _+ J( `! `& e5 q2 t# W import java.awt.geom.RoundRectangle2D;
' v& w! x; y* K1 \ import javax.swing.JPanel;
1 a* v0 G b. K public class G2DPanel extends JPanel{
" f$ L3 S, Y4 \; u# ]% K public void paintComponent(Graphics g){) [' B7 ?. }0 x! D5 H [& ~5 u: [
super.paintComponent(g);6 o. \* T; t( F1 W/ u
Graphics2D g2d=(Graphics2D)g;0 C1 Y* H) l5 ^$ i, W
g2d.setColor(Color.cyan);8 a5 `' F; ?$ ]: l8 N1 Z
Rectangle2D rect=new Rectangle2D.Double(0,0,200,200);
$ N, ?, B& S. C. O, c- g$ \0 E g2d.fill(rect);3 g1 s7 t* n+ `2 R
Arc2D arc1=new Arc2D.Double(0,0,200,200,0,180,Arc2D.CHORD);- t* e5 q: Q# U# \
Arc2D arc2=new Arc2D.Double(0,0,200,200,0,-180,Arc2D.CHORD);
9 G$ L& M/ W) h0 i! y. u RoundRectangle2D round1=new RoundRectangle2D.Double(0,50,100,100,100,100);
( h' j& E. q/ f/ W/ x; s( N RoundRectangle2D round2=new RoundRectangle2D.Double(100,50,100,100,100,100);1 [+ r+ q0 l6 Y7 `' x
RoundRectangle2D round3=new RoundRectangle2D.Double(37.5,87.8,25,25,25,25);
, R, _% r* F( u& Z) D( z RoundRectangle2D round4=new RoundRectangle2D.Double(137.5,87.8,25,25,25,25);
" M7 Z. |# B4 Q g2d.setColor(Color.white); X% X. N) q$ k2 j5 Y9 x
g2d.fill(arc1);
, S9 C9 n v P8 F1 T: h g2d.setColor(Color.black);8 S9 \ M/ [* g. I' @/ Y! z
g2d.fill(arc2);7 M! j* V$ n: C7 \
g2d.fill(round1);6 f- M8 i( e* t0 s9 ?
g2d.setColor(Color.white);
" K, T) ]" b+ v; A( U g2d.fill(round2);3 _- `- u* |, y- n! D2 P
g2d.fill(round3);
$ C. g& ?! ~$ \0 i8 n% U g2d.setColor(Color.black);2 d# {# E% w8 X/ w I2 e
g2d.fill(round4);1 J7 ?, F6 m6 {! | T [, _# j
}! ?* V+ V7 G/ B$ k# y; a- m, I9 C
} |