C++ 写的地图控件,支持google 百度 在线离线地图
C++处理google 百度地图在网上查阅了很多都是通过浏览器方式显示地图信息, 跟我目前项目很不符合,
所以仔细研究了一下C++方式显示地图。通过地图投影以及墨卡托投影,在通过平面地图计算经纬度。
最终今天终于搞定的初步功能,鼠标移动位置显示经纬度。切换Zoom 选择地图信息。
再也不用为C++调用浏览器控件不方便等因素发愁了。 每天进步一点点。
放上部分代码:
//墨卡托坐标转像素坐标
void MercatorToPixel(DOUBLE pdX, DOUBLE pdY, int piZoom, DOUBLE* pdPixelPoint)
{
DOUBLE pixelX = floor(pdX * pow(2, piZoom - 18));
DOUBLE pixelY = floor(pdY * pow(2, piZoom - 18));
pdPixelPoint[0] = pixelX;
pdPixelPoint[1] = pixelY;
}