Isis 3 Programmer Reference
ControlPointGraphicsItem.h
1 #ifndef ControlPointGraphicsItem_h
2 #define ControlPointGraphicsItem_h
3 
4 #include <QGraphicsRectItem>
5 
6 class QPointF;
7 
8 namespace Isis {
9  class ControlPoint;
10  class MosaicSceneWidget;
11  class SerialNumberList;
12 
46  public:
47  ControlPointGraphicsItem(QPointF center, QPointF apriori,
48  ControlPoint *cp, SerialNumberList *snList, MosaicSceneWidget *scene,
49  QGraphicsItem *parent);
50  virtual ~ControlPointGraphicsItem();
51 
52  void paint(QPainter *, const QStyleOptionGraphicsItem *,
53  QWidget * widget = 0);
54 
55  ControlPoint *controlPoint();
56 
57  void setArrowVisible(bool visible, bool colorByMeasureCount, int measureCount,
58  bool colorByResidualMagnitude, double residualMagnitude);
59 
60  protected:
61  void contextMenuEvent(QGraphicsSceneContextMenuEvent * event);
62 
63  private:
64  QRectF calcRect() const;
65  QRectF calcCrosshairRect() const;
66  QPolygonF calcArrowHead() const;
67  QString makeToolTip(SerialNumberList *snlist);
68 
69  QPointF *m_centerPoint;
70  QPointF *m_origPoint;
71  MosaicSceneWidget *m_mosaicScene;
72  ControlPoint *m_controlPoint;
73  bool m_showArrow;
82  };
83 }
84 
85 #endif
This widget encompasses the entire mosaic scene.
bool m_colorByMeasureCount
Are we coloring the movement arrow based on CP measure count.
void paint(QPainter *, const QStyleOptionGraphicsItem *, QWidget *widget=0)
This virtual paint method is called anytime an update() or paintEvent() is called.
ControlPointGraphicsItem(QPointF center, QPointF apriori, ControlPoint *cp, SerialNumberList *snList, MosaicSceneWidget *scene, QGraphicsItem *parent)
Create a CP graphics item.
double m_residualMagnitude
Residual magnitude threshold for colored vs. black.
A single control point.
Definition: ControlPoint.h:369
The visual display of a single control point.
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
int m_measureCount
Measure count threshold for colored vs. black.
Serial Number list generator.
bool m_colorByResidualMagnitude
Are we coloring the movement arrow based on max CM residual magnitude.