/**
   * Draw a filled ellipse with given semimajor and semiminor axes, centred on (x, y).
   *
   * @param x the x-coordinate of the centre of the ellipse
   * @param y the y-coordinate of the centre of the ellipse
   * @param semiMajorAxis is the semimajor axis of the ellipse
   * @param semiMinorAxis is the semiminor axis of the ellipse
   * @throws RuntimeException if either of the axes are negative
   */
  public static void filledEllipse(double x, double y, double semiMajorAxis, double semiMinorAxis) {

    offscreen.fill(ShapeAssist.ellipse(x, y, semiMajorAxis, semiMinorAxis));
    draw();
  }