class interface DRAWABLE_CHORD

creation
   make

feature(s) from DRAWABLE_ELLIPSE
   --  Position

   set_bounding_rectangle (rect: RECTANGLE)
      --  Set the rectangle defining the ellipse from which 
      --  the arc is extracted.

      require
         valid_rectangle: rect /= Void

feature(s) from DRAWABLE_ARC
   --  Position

   set_starting_secant (pt: POINT)
      --  Set the point defining the starting radial from which 
      --  the arc will be drawn. The radial is the line containing 
      --  this point and the centre of the ellipse.

      require
         valid_point: pt /= Void

   set_ending_secant (pt: POINT)
      --  Set the point defining the ending radial to which 
      --  the arc will be drawn.

      require
         valid_point: pt /= Void

   set_direction_anticlockwise
      --  Draw ellipse anticlockwise (default).

      ensure
         done: clockwise = false

   set_direction_clockwise
      --  Draw ellipse clockwise.

      ensure
         done: clockwise = true

invariant
   valid_ellipse: bounding_rectangle /= Void;
   valid_arc: start /= Void and final /= Void;

end of DRAWABLE_CHORD