1 36 37 40 41 42 package java2d.demos.Paths; 43 44 import static java.awt.Color .*; 45 import java.awt.*; 46 import java.awt.geom.GeneralPath ; 47 import java.awt.geom.Rectangle2D ; 48 import java2d.Surface; 49 50 51 54 public class Append extends Surface { 55 56 public Append() { 57 setBackground(WHITE); 58 } 59 60 61 public void render(int w, int h, Graphics2D g2) { 62 GeneralPath p = new GeneralPath (GeneralPath.WIND_NON_ZERO); 63 p.moveTo(w*0.25f, h*0.2f); 64 p.lineTo(w*0.75f, h*0.2f); 65 p.closePath(); 66 p.append(new Rectangle2D.Double (w*.4, h*.3, w*.2, h*.1), false); 67 g2.setColor(GRAY); 68 g2.fill(p); 69 g2.setColor(BLACK); 70 g2.draw(p); 71 g2.drawString("Append rect to path", (int)(w*.25), (int)(h*.2)-5); 72 73 p.reset(); 74 p.moveTo(w*0.25f, h*0.6f); 75 p.lineTo(w*0.75f, h*0.6f); 76 p.closePath(); 77 p.append(new Rectangle2D.Double (w*.4, h*.7, w*.2, h*.1), true); 78 g2.setColor(GRAY); 79 g2.fill(p); 80 g2.setColor(BLACK); 81 g2.draw(p); 82 g2.drawString("Append, connect", (int) (w*.25), (int) (h*.6)-5); 83 } 84 85 86 public static void main(String s[]) { 87 createDemoFrame(new Append()); 88 } 89 } 90 | Popular Tags |