// Program 15.8: A Pizza on a Canvas
import java.applet.Applet;    
import java.awt.Canvas;
import java.awt.Label;
import java.awt.Dimension;
import java.awt.Graphics;

public class DrawPizza extends Applet {

  public void init() {
    add(new Label("This is a pizza", Label.CENTER));
    add(new PizzaCanvas());
  }
    
}

class PizzaCanvas extends Canvas {

  public void paint(Graphics g) {
    int CanvasWidth = size().width;
    int CanvasHeight = size().height;
        
    g.drawOval(0, 0, CanvasWidth-1, CanvasHeight-1);
    // Slice the pizza
    g.drawLine(0, CanvasHeight/2, CanvasWidth-1, 
      CanvasHeight/2);
    g.drawLine(CanvasWidth/2, 0, CanvasWidth/2, 
      CanvasHeight-1);
    int gap = (int) ((CanvasWidth/2) * (1.0 - 
      1.0/Math.sqrt(2.0)));
    g.drawLine(gap, gap, CanvasWidth - 1 - gap, 
      CanvasHeight - 1 - gap);
    g.drawLine(CanvasWidth - 1 - gap, gap, gap, 
      CanvasHeight - 1 - gap);
  
  }

  public Dimension minimumSize() {
    return new Dimension(50, 50);
  }

  public Dimension preferredSize() {
    return minimumSize();
  }
  
}
