6 class Arc: public Object
9 Arc(Vector, double, double, double, Object * p = 0);
12 virtual void Draw(Painter *);
13 virtual Vector Center(void);
14 virtual bool Collided(Vector);
15 virtual void PointerMoved(Vector);
16 virtual void PointerReleased(void);
17 virtual void Enumerate(FILE *);
18 // virtual Object * Copy(void);
21 bool AngleInArcSpan(double angle);
24 double radius; // Center is Object::position
25 double startAngle; // Starting angle in radians
26 double angleSpan; // # of degrees the arc spans in radians
29 bool hitHandle1; // Moving
30 bool hitHandle2; // Rotation
31 bool hitHandle3; // Setting span of the arc
32 bool hitHandle4; // Resizing
33 bool objectWasDragged;
34 Vector oldPoint; // Used for dragging
35 double oldAngle; // Used for user feedback
36 double oldRadius; // Used for user feedback