初步统一了多航线采集和打开影像功能

This commit is contained in:
tangchao0503
2026-03-03 13:46:31 +08:00
parent bdf956ed99
commit 8d2fe91043
14 changed files with 249 additions and 108 deletions

View File

@ -12,7 +12,7 @@
#define VIEW_WIDTH viewport()->rect().width()
#define VIEW_HEIGHT viewport()->rect().height()
mapcavas::mapcavas(QWidget* pParent) :QGraphicsView(pParent)
Mapcavas::Mapcavas(QWidget* pParent) :QGraphicsView(pParent)
{
setRenderHint(QPainter::Antialiasing);
setRenderHint(QPainter::SmoothPixmapTransform);
@ -49,18 +49,18 @@ mapcavas::mapcavas(QWidget* pParent) :QGraphicsView(pParent)
setFrameShape(QFrame::NoFrame);
}
mapcavas::~mapcavas()
Mapcavas::~Mapcavas()
{
}
void mapcavas::DisplayFrameNumber(int frameNumber)
void Mapcavas::DisplayFrameNumber(int frameNumber)
{
m_framNumberLabel->setText(QString::number(frameNumber));
m_framNumberLabel->adjustSize();
}
void mapcavas::SetImage(QPixmap *image)
void Mapcavas::SetImage(QPixmap *image)
{
if (!HasImage())
{
@ -73,7 +73,7 @@ void mapcavas::SetImage(QPixmap *image)
ensureSceneVisible();
}
void mapcavas::ensureSceneVisible()
void Mapcavas::ensureSceneVisible()
{
resetTransform();
@ -90,7 +90,7 @@ void mapcavas::ensureSceneVisible()
centerOn(scene_rect.center());
}
bool mapcavas::HasImage()
bool Mapcavas::HasImage()
{
if (m_GraphicsPixmapItemHandle == nullptr)
{
@ -102,7 +102,7 @@ bool mapcavas::HasImage()
}
}
void mapcavas::wheelEvent(QWheelEvent *event)
void Mapcavas::wheelEvent(QWheelEvent *event)
{
if (HasImage())
{
@ -118,12 +118,12 @@ void mapcavas::wheelEvent(QWheelEvent *event)
}
}
void mapcavas::scaling(qreal scaleFactor)
void Mapcavas::scaling(qreal scaleFactor)
{
scale(scaleFactor, scaleFactor);
}
void mapcavas::mousePressEvent(QMouseEvent *event)
void Mapcavas::mousePressEvent(QMouseEvent *event)
{
if (event->button()==Qt::LeftButton)
{
@ -135,7 +135,7 @@ void mapcavas::mousePressEvent(QMouseEvent *event)
QGraphicsView::mousePressEvent(event);
}
void mapcavas::mouseMoveEvent(QMouseEvent *event)
void Mapcavas::mouseMoveEvent(QMouseEvent *event)
{
if (m_bMouseTranslate){
QPointF mouseDelta = mapToScene(event->pos()) - mapToScene(m_lastMousePos);
@ -146,28 +146,28 @@ void mapcavas::mouseMoveEvent(QMouseEvent *event)
QGraphicsView::mousePressEvent(event);
}
void mapcavas::mouseReleaseEvent(QMouseEvent *event)
void Mapcavas::mouseReleaseEvent(QMouseEvent *event)
{
m_bMouseTranslate = false;
QGraphicsView::mouseReleaseEvent(event);
}
void mapcavas::mouseDoubleClickEvent(QMouseEvent *event)
void Mapcavas::mouseDoubleClickEvent(QMouseEvent *event)
{
QGraphicsView::mouseDoubleClickEvent(event);
}
void mapcavas::zoomIn()
void Mapcavas::zoomIn()
{
zoom(1 + m_zoomDelta);
}
void mapcavas::zoomOut()
void Mapcavas::zoomOut()
{
zoom(1 - m_zoomDelta);
}
void mapcavas::zoom(float scaleFactor)
void Mapcavas::zoom(float scaleFactor)
{
qreal factor = transform().scale(scaleFactor, scaleFactor).mapRect(QRectF(0, 0, 1, 1)).width();
if (factor < 0.07 || factor > 100)
@ -177,38 +177,38 @@ void mapcavas::zoom(float scaleFactor)
m_scale *= scaleFactor;
}
void mapcavas::setTranslateSpeed(qreal speed)
void Mapcavas::setTranslateSpeed(qreal speed)
{
Q_ASSERT_X(speed >= 0.0 && speed <= 2.0,
"InteractiveView::setTranslateSpeed", "Speed should be in range [0.0, 2.0].");
m_translateSpeed = speed;
}
qreal mapcavas::translateSpeed() const
qreal Mapcavas::translateSpeed() const
{
return m_translateSpeed;
}
void mapcavas::setZoomDelta(qreal delta)
void Mapcavas::setZoomDelta(qreal delta)
{
Q_ASSERT_X(delta >= 0.0 && delta <= 1.0,
"InteractiveView::setZoomDelta", "Delta should be in range [0.0, 1.0].");
m_zoomDelta = delta;
}
qreal mapcavas::zoomDelta() const
qreal Mapcavas::zoomDelta() const
{
return m_zoomDelta;
}
// new: set associated raster layer
void mapcavas::setLayers(RasterLayer* layer)
void Mapcavas::setLayers(RasterLayer* layer)
{
m_rasterLayer = layer;
}
// new: refresh the map by rendering using the RasterLayer's render method
void mapcavas::freshmap()
void Mapcavas::freshmap()
{
if (!m_rasterLayer) return;