Many of the drawing functions come in pairs. One function in the pair takes two arguments to specify a point by its x and y coordinates; the other function takes one argument, a point object. The function accepting coordinates of the point has a name with an asterisk (*) appended to it, and the function accepting a point object has the same name without an asterisk. For example, draw-point accepts a point object, and draw-point* accepts coordinates of a point. We expect that using the starred functions and specifying points by their coordinates will be more convenient in most cases.
Any drawing functions may create an output record that corresponds to the figure being drawn. Chapter 15, Extended Stream Input Facilities for a complete discussion of output recording. During output recording, none of these functions capture any arguments that are points, point sequences, coordinate sequences, or text strings. Line styles, text styles, transformations, and clipping regions may be captured.
The drawing functions are all specified as ordinary functions, not as generic functions. This is intended to ease the task of writing compile-time optimizations that avoid keyword argument taking, check for such things as constant drawing options, and so forth. If you need to specialize any of the drawing methods, use define-graphics-method .
Although the functions in this section are specified to be called on sheets, they can also be called on streams and mediums.
Common Lisp Interface Manager 2.0 User's Guide - 7 Aug 2017