Circle() draws a circle with the center point and radius given. Subsequent arguments specify additional radii.
Circle() also has a final optional argument, "fill". This string indicates that all circles defined in the function are filled with the current fill color. If "fill" is omitted, the circle is empty.
Rect() draws a rectangle from the diagonal coordinates you specify. The coordinates can be specified either as four arguments in order (left, top, right, bottom), or as a pair of lists ({left, top}, {right, bottom}).
Rect() has an optional fifth argument, fill. Specify 0 to get an unfilled rectangle and 1 to get a filled rectangle. The default value for fill is 0. The rectangle is filled with the current fill color.
Oval() also has an optional fifth argument, fill. Specify 0 to get an unfilled rectangle and 1 to get a filled oval. The default value for fill is 0. The oval is filled with the current fill color.
图 12.16 shows rectangles and ovals, drawn both filled and unfilled. Notice that filled rectangles do not have outlines. Ovals do have outlines. If you want a filled rectangle with an outline, you must draw the filled rectangle and then draw an unfilled rectangle with the same coordinates.