A line or other path is a one-dimensional object. However in order to be visible, the rendering of a line must occupy some non-zero area on the display hardware. A line style represents the advice of CLIM to the rendering substrate on how to perform the rendering. [annotate]
[line style, Concept← A Glossary]
[line style, Concept← A Glossary]
[line style, Concept← 10.3 Line Styles, line-style-p]
[line style, Concept← 10.1 Medium Components, (setf medium-line-style)]
The protocol class for line styles. If you want to create a new class that behaves like a line style, it should be a subclass of line-style. All instantiable subclasses of line-style must obey the line style protocol. [annotate] |
Returns true if object is a line style, otherwise returns false. [annotate] |
An instantiable class that implements line styles. A subclass of line-style. This is the class that make-line-style instantiates. Members of this class are immutable. [annotate] |
Returns an object of class standard-line-style with the supplied characteristics. The arguments and their default values are described in Section 10.3.1. [annotate] |
Each of these suboptions has a corresponding reader that can be used to extract a particular component from a line style. The generic functions decribed below comprise the line style protocol; all subclasses of line-style must implement methods for these generic functions. [annotate]
Gives the unit used for measuring line thickness and dash pattern length for the line style. Possible values are :normal, :point, or :coordinate. The meaning of these options is: [annotate]
|
The thickness, in the units indicated by line-style-unit, of the lines or arcs drawn by a drawing function. The thickness must be a real number. The default is 1, which combined with the default unit of :normal, means that the default line drawn is the "comfortably visible thin line". [annotate] |
Specifies the shape of joints between segments of unfilled figures. The possible shapes are :miter, :bevel, :round, and :none; the default is :miter. Note that the joint shape is implemented by the host window system, so not all platforms will necessarily fully support it. [annotate] |
Specifies the shape for the ends of lines and arcs drawn by a drawing function, one of :butt, :square, :round, or :no-end-point; the default is :butt. Note that the cap shape is implemented by the host window system, so not all platforms will necessarily fully support it. [annotate] |
Controls whether lines or arcs are drawn as dashed figures, and if so, what the dashing pattern is. Possible values are: [annotate]
(See also make-contrasting-dash-patterns.) [annotate] |
If k is not supplied, this returns a vector of n dash patterns with recognizably different appearance. Elements of the vector are guaranteed to be acceptable values for :dashes, and do not include nil, but their class is not otherwise specified. The vector is a fresh object that may be modified. [annotate] If k is supplied, it must be an integer between 0 and n - 1 (inclusive), in which case make-contrasting-dash-patterns returns the k'th dash-pattern rather than returning a vector of dash-patterns. [annotate] If the implementation does not have n different contrasting dash patterns, make-contrasting-dash-patterns signals an error. This will not happen unless n is greater than eight. [annotate] |
Returns the number of contrasting dash patterns that can be rendered on any medium on the port port. Implementations are encouraged to make this as large as possible, but it must be at least 8. All classes that obey the port protocol must implement a method for this generic function. [annotate] |