Ellipse,   S_Ellipse,   F_Ellipse,  SF_Ellipse,  S_Circle,
       F_Circle, SF_Circle - abstract base class  and  predefined
       subclasses for elliptical structured graphics


SYNOPSIS

       #include <Unidraw/Graphic/ellipses.h>


DESCRIPTION

       Ellipse  is  an  abstract base class for elliptical struc-
       tured graphics objects.  It stores  geometric  information
       that  such  graphics require and provides helper functions
       for calculating extents and for hit detection.  Predefined
       subclasses  include  S_Ellipse, F_Ellipse, and SF_Ellipse,
       which draw stroked, filled, and  stroked-filled  ellipses,
       respectively; and S_Circle, F_Circle, and SF_Circle, which
       draw stroked, filled, and stroked-filled circles,  respec-
       tively.   The  stroked  subclasses  store  a  PSBrush, the
       filled subclasses store  a  PSPattern,  and  the  stroked-
       filled subclasses store one of each.


ELLIPSE PUBLIC OPERATIONS

       void GetOriginal(Coord& x, Coord& y, int& rx, int& ry)
              Return  the ellipse's geometry.  (x, y) defines the
              ellipse's center, while rx and ry define its  hori-
              zontal and vertical radii, respectively.


ELLIPSE PROTECTED OPERATIONS

       Ellipse(Coord x, Coord y, int rx, int ry, Graphic* = nil)
              The constructor is protected to disallow instantia-
              tion of the  abstract  base  class.   An  ellipse's
              geometry  is defined in terms of its center and its
              horizontal and  vertical  radii.   The  constructor
              also takes an optional graphic from which to obtain
              an initial set of graphics state.

       void s_getExtent(
           float&, float&, float&, float&, float&, Graphic*
       )

       void f_getExtent(
           float&, float&, float&, float&, float&, Graphic*
       )

       boolean s_contains(PointObj&, Graphic*)
       boolean f_contains(PointObj&, Graphic*)
       boolean s_intersects(BoxObj&, Graphic*)
       boolean f_intersects(BoxObj&, Graphic*)
              Helper functions that return extent and hit  detec-
              tion information based on the bounding box that the
              ellipse  defines.   s_getExtent,  s_contains,   and
              s_intersects  return  information that accounts for
              the width of a brush, as would be necessary if  the
              filled.   Subclasses can use the operations to help
              implement their getExtent, contains, and intersects
              operations.


SUBCLASS PUBLIC OPERATIONS

       S_Ellipse(Coord x, Coord y, int rx, int ry, Graphic* =
              nil)
       F_Ellipse(Coord x, Coord y, int rx, int ry, Graphic* =
              nil)
       SF_Ellipse(Coord x, Coord y, int rx, int ry, Graphic* =
              nil)
       S_Circle(Coord x, Coord y, int radius, Graphic* = nil)
       F_Circle(Coord x, Coord y, int radius, Graphic* = nil)
       SF_Circle(Coord x, Coord y, int radius, Graphic* = nil)
              Constructors for  the  various  predefined  Ellipse
              subclasses.


SEE ALSO

       Graphic(3U), geomobjs(3U), pspaint(3U)


































Man(1) output converted with man2html