Files
2022-02-10 23:02:29 +08:00

53 lines
1.1 KiB
C++

#include "VirtualMargin.h"
#include <QDateTime>
namespace mapcontrol {
VirtualMargin::VirtualMargin(int index, internals::PointLatLng const & coord, int const & altitude, QBrush color, MapGraphicItem *map) : QGraphicsItem(map), number(index) , coord(coord), m_brush(color), m_map(map)
{
//qDebug() << "VirtualMargin:" << index << coord.Lat() << coord.Lng();
this->setZValue(5);
connect(map, SIGNAL(childRefreshPosition()), this, SLOT(RefreshPos()));
//qDebug() << this->pos();
RefreshPos();
}
void VirtualMargin::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
{
Q_UNUSED(option);
Q_UNUSED(widget);
painter->setBrush(m_brush);
painter->drawPoint(0,0);
}
QRectF VirtualMargin::boundingRect() const
{
return QRectF(-2, -2, 4, 4);
}
int VirtualMargin::type() const
{
return Type;
}
void VirtualMargin::setPosSLOT()
{
//qDebug() << "virtual set pos";
setPos(m_map->FromLatLngToLocal(this->coord).X(), m_map->FromLatLngToLocal(this->coord).Y());
emit localPositionChanged(this->pos(),this);
}
void VirtualMargin::RefreshPos()
{
setPosSLOT();
}
}