qt 获取用户缩放_Qt QGraphics类应用——地图缩放选点

本文介绍了一个使用Qt实现的地图应用,通过QGraphicsView进行地图的缩放操作,并能在鼠标移动时显示当前地图坐标。代码示例中包含了地图读取、场景和视图坐标的转换以及滚轮缩放事件处理。
摘要由CSDN通过智能技术生成

功能:

1、地图缩放

2、显示鼠标点经纬度

需求:

1、一张地图

2、地图左上角经纬度和地图右下角经纬度

成品:

代码:

mapwidget.h

#ifndef MAPWIDGET_H

#define MAPWIDGET_H

#include

#include

#include

class MapWidget : public QGraphicsView

{

Q_OBJECT

public:

MapWidget();

void readMap();

QPointF mapToMap(QPointF point);//用于场景坐标与地图坐标转换

protected:

void drawBackground(QPainter *painter, const QRectF &rect);

void mouseMoveEvent(QMouseEvent *event);//拖动

void wheelEvent(QWheelEvent *event); //缩放

private:

QPixmap map;

qreal zoom;

QLabel *sceneCoord,*viewCoord,*mapCoord;

double x1,x2,y1,y2;

int scaleValue;

};

#endif // MAPWIDGET_H

mapwidget.cpp

#include "mapwidget.h"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值