#include "gcross.h" gCross::gCross(qreal px, qreal py) { x = px; y = py; dim=5; col = QColor(Qt::lightGray); } gCross::gCross(QPointF p) { x = p.x(); y = p.y(); dim=5; col = QColor(Qt::lightGray); } QRectF gCross::boundingRect() const { qreal d = dim; return QRectF(x-d, y-d, 2*d, 2*d); } void gCross::setColor(QColor c) { if (col!=c) { prepareGeometryChange(); col = c; } } void gCross::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) { qreal d = dim; painter->setPen(QPen(col)); QPointF p1(x-d, y-d); QPointF p2(x+d, y+d); QPointF p3(x-d, y+d); QPointF p4(x+d, y-d); painter->drawLine(p1, p2); painter->drawLine(p3, p4); } void gCross::setPos(QPointF p) { qreal px, py; px= p.x(); py= p.y(); if ((x!=px)||(y!=py) ) { prepareGeometryChange(); x=px; y=py; } } void gCross::setSize(qreal d) { if (dim!=d) { prepareGeometryChange(); dim=d; } }