class interface DRAWABLE_POLYGON
creation
   make
      --  Create.
feature(s) from DRAWABLE_POLYLINE
   --  Position
   empty: BOOLEAN
      --  Is the polyline empty (no points)?
   reset
      --  Reset the point list representing the polyline.
      ensure
         done: empty
   add_point (pt: POINT)
      --  Add a new point at the end of the polyline.
      require
         valid_point: pt /= Void
      ensure
         ok: not empty
feature(s) from DRAWABLE_POLYGON
   --  Drawing mode
   reset_filling_mode
      --  Set default filling mode (fill everything inside the 
      --  polygon).
      ensure
         done: alternate_fill = false
feature(s) from DRAWABLE_POLYGON
   --  Drawing mode
   set_filling_mode_winding
      --  Set default filling mode (fill everything inside the 
      --  polygon).
      ensure
         done: alternate_fill = false
   set_filling_mode_alternate
      --  Set alternate filling mode (fill area between odd-numbered and 
      --  even-numbered polygon sides on each scan line).
      ensure
         done: alternate_fill = true
invariant
   valid_position: line /= Void;
end of DRAWABLE_POLYGON