MapObject控件的使用之加入图层

MapObject控件的使用之加入图层

 作者:北京 张松伟

zswzwy@163.com

 

MapObject控件是ArcInfo公司开发的一套功能强大的GIS地理信息系统控件,该控件功能非常强大,在软件开发行业中有着很大范围的覆盖率,因其在VC中的使用非常复杂,帮助文档对一个刚入门的程序员来说不是很容易看懂,并且示例代码都是基于VB的,所有我写了这一系列的文章,供大家参考,有问题欢迎大家指正。

MapObject(以下简称MO)有自己格式的图层文件,是有.shp为扩展名,在使用时首先要将MO控件引入到我们的程序中来,并包函一些头文件。好了,让我们开始吧。

 

1、新建单文档程序,在第四步时设置窗口启动最大化。点击Project->Add to Project->Components And ….,先择已注册的控件,选择MapObjects 2.2 Map Control,全选其中的类,加入工程当中。

2、在工程目录下新建一个文件夹,命名为Common,将MapHelper.h MapHelper.cpp MapObjects2.h pedef.h拷贝到其中,以上文件可以到MO安装目录或VC例程目录下找到。

3、打开stdafx.h ,在其中加入#include "Common/mapobjects2.h" #include "Common/maphelper.h"句话,并将Common目录下的所有文件包函到工程当中。

4、给CMyView加入成员变量CMap1 m_map,并在OnInitialUpdate()函数中创建它。

         GetClientRect(&rect);

m_map.Create("WeatherGis", WS_CHILD | WS_VISIBLE, rect, this, ID_GISMAP);

拦截WM_SIZE消息,加入如下代码以使MO控件占满整个视图。

         if(m_map.m_hWnd)

                  m_map.SetWindowPos(0, 0, 0, cx, cy, SWP_NOZORDER);

5、把你找来的图层文件(.shp)文件放到工程目录下,并你下面这样加入到MO当中去。

   AddLayer(m_map, TEXT("shp// country.shp"), moPaleYellow)

   AddLayer(m_map, TEXT("shp//city.shp"), moRed);

   …….

6、好了,运行吧,看一幅地图已经呈现在你面前了,是不是很有成就感呢?在下次我将说明如何对图层进行放大缩小、改变鼠标样式等操作,好了先到这吧。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
mapobject 是一种地图数据下载工具,用于获取地图数据并进行离线使用。它可以帮助用户在无网络连接的情况下浏览地图、进行导航以及其他地图相关应用。 要下载 mapobject,首先需要访问官方网站或相关地图服务提供商的网站。在该网站上,应该能够找到关于 mapobject 的下载链接或相关的文档和指南。一般来说,mapobject 提供多个版本和不同的功能套件,用户可以根据自己的需求选择要下载的版本。 在下载 mapobject 之前,用户需要先了解自己的操作系统和开发环境的要求。因为 mapobject 提供了适用于不同操作系统(如 Windows、Linux 等)和不同开发语言(如 Java、C++、Python 等)的版本。根据自己的需求选择适合自己的下载版本。 下载完成后,用户可以按照相关的安装指南进行安装和配置。通常情况下,将下载的文件解压并添加到项目就可以使用 mapobject 了。在使用之前,可能还需要进行一些必要的设置和授权操作,以确保 mapobject 的正常运行。 完成安装和配置之后,用户可以使用 mapobject 提供的 API 进行地图操作。这些 API 包括地图显示、地图交互、搜索、路径规划等功能。使用这些 API,用户可以在自己的应用程序嵌入地图,并实现各种地图功能。 总而言之,下载 mapobject 需要访问相关网站、选择适合自己的版本、按照指南进行安装和配置,并使用提供的 API 进行地图操作。这样,用户就可以在自己的应用程序使用 mapobject 实现各种地图功能了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值