8 class Line: public Object
11 Line(Vector, Vector, Object * p = 0);
14 virtual void Draw(Painter *);
15 virtual Vector Center(void);
16 virtual bool Collided(Vector);
17 virtual void PointerMoved(Vector);
18 virtual void PointerReleased(void);
19 virtual bool HitTest(Point);
20 virtual Vector * GetPointAt(Vector);
21 virtual void Enumerate(FILE *);
22 virtual Object * Copy(void);
23 virtual Vector GetPointAtParameter(double parameter);
24 virtual QRectF Extents(void);
25 // virtual ObjectType Type(void);
26 virtual void Translate(Vector);
27 virtual void Rotate(Vector, double);
28 virtual void Scale(Vector, double);
29 void SetDimensionOnLine(Dimension * d = 0);
30 Object * FindAttachedDimension(void);
34 bool StateChanged(void);
37 Vector endpoint; // Starting point is Object::position
38 Vector oldPoint; // Used for dragging
44 bool objectWasDragged;
47 bool hitPoint1, hitPoint2, hitLine;
48 bool oldHitPoint1, oldHitPoint2, oldHitLine;