本科毕业时使用MapGuide OS做了一个导出kml的功能,不过那个框架是在MapGuide Studio的trial版本里做的,那会儿webstudio和maestro(还没到1.0版本)完全不给力,还好Studio有trial版本。
这几天有同学要快速的实现一个具有空间--属性互查的Demo,本来想用GeoServer,后来发现还是MapGuide快些,就用了MG。下面介绍下整个的搭建过程:
2. 分别安装MapGuide OS2.1和Maestro
3. 在Maestro中创建地图
登录以后显示的界面:
加载数据,我使用的是shp数据。File--new--DataConnection
选shp provider,点击OK
点击带有图标“Upload a new file to the server”,上传一个新文件
Ctrl+S保存一下,命名如“Demo”
新建一个图层,File--New--Layer:
点击Feature Resource右边的按钮,将弹出下面这个对话框。点击左侧的http://localhost:8008/mapguide,右侧将出现可用的数据
保存一下,我这里命名为demo_layer
新建一个地图:
在layers中点击 Add a layer to the map
点击Setting下面Initial map view右侧的“Set view to current layers extent”按钮
保存一下,我命名为demo_map
新建一个layout File--new--layout
点击Map Reource右侧的按钮,在弹出窗口中找到demo_layer
保存一下,我命名为demo_layout
这时一个基本的WebGIS就搭建起来了,可以点击Preview在浏览器中预览一下效果
我的预览效果:
3. 添加属性查询功能
虽然MapGuide OS内置了很多功能,但属性查询空间这种操作却不是内置的(极为出乎我的预料)。好在官方给的demo中是有这个功能的,因此可以先用他们的代码来做个demo,然后在参考他们的代码写自己的查询功能。