import java.applet.Applet; import java.awt.*; import java.awt.event.*; import java.applet.*; import java.awt.geom.*; import java.math.*; public class OuterBilliards { Manager M; public OuterBilliards(Manager MM) { this.M=MM; } public void polyOutline(Graphics2D g,Poly P,Color C,int thick) { GeneralPath gp1=P.toGeneralPathOpen(); g.setStroke(new BasicStroke(thick)); g.setColor(C); gp1=transform(gp1,1); g.draw(gp1); g.setStroke(new BasicStroke(1)); } public void drawDisk(Graphics2D g,Complex z,double r,Color C) { GeneralPath gp=disk(z,r,20); gp=transform(gp,1); g.setColor(C); g.fill(gp); g.setColor(Color.white); g.draw(gp); } public GeneralPath disk(Complex z,double r, int N) { GeneralPath gp=new GeneralPath(); for(int k=0;k