我有数据想要创建一个 GIS 类型应用程序,该应用程序将具有添加和删除不同类型图层的典型功能。最好的架构方法是什么?
该数据包含 Eastings 和 Northings 中的房产位置。
我还有 GML 和 Shapefile 格式的军械测量数据。
我知道这是一个非常广泛的问题,但主题领域对我来说似乎也非常广泛,我不确定该往哪个方向走。
我正在考虑使用 SQL 2008 空间和 Bing Silverlight 控件来可视化该地图。为此,我是否必须将东距和北距转换为 GWS84 地理数据类型?但是,如果我将 shapefile 转换为 GML 并使用 GeomFromGML 将所有 GML 文件导入到 sql,它们将采用几何数据类型。这两种类型不是不兼容吗?
另外,ESRI ArcGIS API for Silverlight 应该
方程中的特征?这是一个创建地图的好环境吗?我可以将其指定为 SQL sqerver 2008 作为数据源(如果需要,使用 WCF 服务)?
任何建议都非常感谢!
I have data that I want to create a GIS type application that will have the typical features of adding and removing layers of different types. What is the best architectural approach?
The data consists of property locations in Eastings and Northings.
I also have ordnance survey data in GML and Shapefiles.
I know this is a very broad question but the subject area also seems very broad to me and I am unsure which direction to go.
I was thinking of using SQL 2008 spatial and Bing Silverlight control to visualise that maps.To do this would I have to convert the eastings and northings to GWS84 geography datatype? But then if I converted the shapefiles to GML and imported all the GML files to sql using GeomFromGML they would be in geometry datatypes. Wouldn’t the two types be incompatible?
Also, should ESRI ArcGIS API for Silverlight
feature in the equation? Is this a good environment to create maps that I can point as SQL sqerver 2008 as the datasource (using a WCF service if necessary)?
Any advice greatly appreciated!
发布评论
评论(1)
这是我已经做过多次的事情,在 Bing Maps AJAX 和 Silverlight 控件中使用来自 SQL Server 的操作系统数据。下面是一些一般性评论(排名不分先后!):
使用 Bing 地图的 GIS 功能。
简单的查询、检索和
数据显示一切正常(+
一些简单的编辑),但之后
你会为可能发生的事情而苦苦挣扎
在浏览器中实现。
WGS85 坐标,EPSG:4326。
并使用(投影)显示
球面墨卡托系统,EPSG:3857。
我想这就是空间结果选项卡本身限制您一次显示 5,000 条记录的原因)。
http://msdn.microsoft.com/en-us/library/bb259689.aspx 并将它们显示为tilelayer。平铺层比显示等效的矢量形状要快得多,尽管这意味着数据是静态的。
或预渲染它们以提高性能 - 即您可以设置
进行一项作业来渲染和更新缓慢变化的数据的图块集
每天晚上/每月等等。
参与意味着你需要更仔细地思考什么
您想要显示的功能以及您想要如何显示它们。采取
以大伦敦为例,其面积约为 50 公里 x 40 公里。到
以缩放级别 19 创建栅格图块(每个图块均为 256 像素 x 256 像素)
覆盖这个区域你需要渲染和存储 130 万个单独的
瓷砖。如果其中每一个都是从数据库查询生成的,比如说
运行时间为 200 毫秒,准备好所有内容将需要很长的时间
数据。另外,一旦生成文件,您可能会想
关于将它们存储在数据库中而不是将它们保存在文件系统上。
有几种可以从 GML 或 shapefile 导入 SQL 的工具
服务器,并处理 EPSG:27700(地形测量
国家电网)到 WGS84 沿途。尝试使用 GDAL/OGR 或 Safe FME
首发。
我在 http://alastaira.wordpress.com 上有一个博客,其中有几篇博客文章,您可能会发现这些文章对描述很有用集成 Bing 地图和 SQL Server 的各个方面。特别是,您可能需要查看:
http://alastaira.wordpress.com/2011/02/16/loading-ordnance-survey-open-data-into-sql-server-2008/
http://alastaira.wordpress.com/2011/01/23/the-google-maps-bing-maps-spherical-mercator-projection/
http://alastaira.wordpress.com/2011/02/21/using-ogr2ogr-to-convert-reproject-and-load-spatial-data-to-sql-server/
This is something I've done several times, using OS data from SQL Server in both Bing Maps AJAX and Silverlight controls. Some general comments below (in no particular order!):
GIS functionality using Bing Maps.
Simple querying, retrieval and
display of the data is all fine (+
some simple editing), but after that
you'll be struggling with what can be
achieved in the browser.
WGS85 coordinates, EPSG:4326.
and displayed using (projected)
Spherical Mercator system, EPSG:3857.
I imagine is the reason why the spatial results tabs itself limits you to displaying 5,000 records at once).
http://msdn.microsoft.com/en-us/library/bb259689.aspx and displaying them as a tilelayer. Tile layers are significantly faster than displaying the equivalent vector shapes, although it means the data is static.
or pre-render them to improve performance - i.e. you could set
up a job to render and update the tileset for slowly-changing data
every night/every month etc.
involved means that you need to think more carefully about what
features you want to display, and how you want to display them. Take
greater London, for example, which covers an area about 50km x 40km. To
create raster tiles (each of which are 256px x 256px) at zoom level 19
covering this area you'd need to render and store 1.3 million separate
tiles. If each of those is generated from a database query that takes, say
200ms to run, it's gonna take a looooonggggg time to prepare all your
data. Also, once the files have been generated, you might want to think
about storing them in a DB rather than saving them on a file system.
are several tools that will import either from GML or shapefile into SQL
Server, and handle the projection from EPSG:27700 (Ordnance Survey
National Grid) to WGS84 along the way. Try GDAL/OGR or Safe FME for
starters.
I have a blog at http://alastaira.wordpress.com that has several blog posts that you may find useful describing various aspects of integrating Bing Maps and SQL Server. Particularly, you might want to look at:
http://alastaira.wordpress.com/2011/02/16/loading-ordnance-survey-open-data-into-sql-server-2008/
http://alastaira.wordpress.com/2011/01/23/the-google-maps-bing-maps-spherical-mercator-projection/
http://alastaira.wordpress.com/2011/02/21/using-ogr2ogr-to-convert-reproject-and-load-spatial-data-to-sql-server/