地理信息系统

制图师,地理学家和GIS专业人员的问答

5
Web墨卡托投影中更好的距离测量
我正在使用ESRI堆栈,将图层存储在启用了sql-spatial的SDE地理数据库(几何类型,Web Mercator-3857)中。 我正在构建一个Web制图应用程序,因此默认情况下,图块也位于Web Merator 3857中。 通过存储的proc,我使用STDistance来查询从用户位置(Web Mercator中的坐标)到各个层的距离。 问题是,由于网络墨卡托变形,距离距离赤道越远,我的距离计算越来越少。 我曾想过将图层存储在sql-spatial-geography(而非几何)类型中,但是: 我想我的距离查询将花费更长的时间(球面上的距离计算) 我将需要重新导入很多数据 arcgis服务不会像他们需要的那样快速地进行投影 如果我去Google地图并进行距离计算,即使在北/北地区,返回的距离也要精确得多,因此我认为Google必须纠正由网络墨卡托投影引起的失真。 那么我的问题是:是否有一个简单的因子值可以应用于网络墨卡托投影中进行的距离计算,以获得“正确的”距离?

4
在Windows中使用R'raster'包读取.DEM文件时NA值出现问题
我正在尝试使用R中的'raster'包在Windows上读取.DEM格式的光栅文件。 在Windows 7中将数据加载到R中时,NA值出现问题,但在装有OSX Lion的Mac上却没有问题。在Windows上,似乎无法正确读取NA值。问题是为什么会这样? 使用以下R代码从USGS下载了使用的光栅文件: download.file('http://edcftp.cr.usgs.gov/pub/data/gtopo30/global/e020n90.tar.gz', 'e020n90.tar.gz') untar('e020n90.tar.gz') 然后,我使用“ raster”包将栅格读入R。在OSX Lion和R64版本2.13.1中,可以识别NA值: > onMac <- raster('E020N90.DEM') > onMac class : RasterLayer dimensions : 6000, 4800, 28800000 (nrow, ncol, ncell) resolution : 0.008333333, 0.008333333 (x, y) extent : 20, 60, 40, 90 (xmin, xmax, ymin, ymax) coord. ref. : +proj=longlat +ellps=WGS84 +towgs84=0,0,0,0,0,0,0 …
10 raster  r  windows  osx 

3
Shapefile和OpenStreetMap数据在QGIS中不重叠吗?
因此,我对GIS并不陌生,并且我正在使用加拿大温哥华的数据进行制图项目。我想将OpenStreetMap数据与温哥华市提供的数据结合起来。但是当我在QGIS中映射城市数据时,它们与OSM数据不一致。 遵循对投影地图答案的建议,但不应在ArcMap中重叠?,我对照第三个(世界地图)检查了两个数据源。OSM数据是正确的-不列颠哥伦比亚省是正确的位置-但纽约市的数据使温哥华位于法国南部。 我的数据来源是: 温哥华市的自行车道和图书馆。(两个都是SHP文件。)这些数据与其他数据不一致。 Open Street Map中的不列颠哥伦比亚省地图。我使用osm2pgsql将数据放入数据库中。 世界地图,这是“开放街道风格”项目的一部分。 投影: 城市数据预计在NTM83(CSRS)的UTM zone10中进行。我已经在QGIS的“图层属性”屏幕中为这些图层选择了它。投影字符串:+proj=utm +zone=5 +ellps=GRS80 +datum=NAD83 +units=m +no_defs OSM地图位于墨卡托投影中。QGIS有许多墨卡托选择,我不确定要使用哪个,所以我猜到了“大众可视化CRS /墨卡托”。+proj=merc +lon_0=0 +k=1 +x_0=0 +y_0=0 +a=6378137 +b=6378137 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs 对于世界地图,Quantum GIS从.prj文件中加载了投影。那是+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +over +no_defs 投影地图在ArcMap中应该但不重叠吗?谈论区域问题。这听起来像我可能正在经历的。因此,我尝试将库从UTM区域10N更改为其他区域(15N和60N),但没有任何更改。 有人对下一步尝试有建议吗?

1
如何在网络地图上显示动态栅格(激光)数据?
我有一些高质量的LiDAR数据。我需要动态处理它,并根据该点的输入和高程更新一个字段(不是高程字段)。完成此操作后,我需要尽可能实时地在Web Map(Bing Map,Google Map等)上显示此栅格数据。到目前为止,这是我能做的:我使用ArcGIS Python Lib提出了一些脚本,该脚本处理我的激光雷达剪辑,添加一个字段,并根据输入的内容更新该字段。所以现在我基本上已经拥有了所有脚本每5分钟将栅格上的点分为3类。如果我在arcGIS中查看此栅格,则可以查看基本地图上重叠的漂亮的3色栅格。 但是现在我需要在Web地图上渲染这些栅格剪辑。我的第一个操作是将这些分类的剪辑多边形化,并在JavaScript Map上显示这些多边形。但是多边形化需要很多时间,因此消除了多边形化。 现在,我要做的其他选择是使用GeoServer的Raster渲染功能来显示图像。然后使用我创建的WMS,将其重叠在Bing Maps上。这就是我卡住的地方。我不知道如何从我的ADF文件中自动获取Geoserver支持的栅格,如Geotiff,jpg200o等,先在开放层上渲染它们,然后尝试在bing地图上重叠它们。 如果有人知道有任何好的教程可以在地图上进行这种动态变化的栅格渲染,那么如果可以的话,那将很棒。 另外,如果还有其他更好的方法来建立这种系统,请提出建议。我愿意接受几乎所有解决方案。 谢谢 PS:我在Web编程,Web服务,数据库和脚本编写等方面非常擅长。但是对于使用Lidar和Geo-Rasters来说是新手。

2
如何使用开源工具从shapefile溶解多边形?
在我当前的项目中,我正在可视化地图上的数据,该数据代表一个国家每个行政区域的某些值。我得到了这个国家的shapefile,我将其转换为GeoJSON以与PolyMaps一起使用。现在,我已经要求将多个区域聚集成更大的区域,因为一些较小的部分没有数据,但是可以获取较大区域的汇总数据。这些群集是预定义的(例如A + B + C = D),因此我认为生成群集的shapefile并将其随后转换为GeoJSON会更容易。 但是,如何创建这样的集群(最好是自动化的并且使用开源工具)?当然也欢迎任何其他明智的方式。

3
如何基于核密度对点进行聚类?
我有一个大型数据集,其中有36k个点代表商业土地用途,每个点都有一个包含平方英尺的字段。我已经对该数据集进行了内核密度分析,生成了一个栅格,显示了整个都市区域内商业平方英尺的密度。我需要将此栅格划分为与局部最大值相对应的区域,我称其为“中心”。我已经确定了中心的位置,现在我需要做以下两件事之一: 使用点聚类工具(例如“围绕类固醇分区”)将点分组到围绕我确定的中心的聚类中。这种方法的问题在于计算量大,如果我尝试使用相异矩阵按大小对点加权,则更是如此。 以某种方式将内核密度栅格(大致类似于地形栅格)划分为每个中心周围的各个“山丘”。但是我想不出什么工具可以做到这一点。 这个问题困扰了我一阵子,我希望我能够在R中执行聚类方法,但是这很耗时,我已经没时间了。有谁知道将密度栅格划分为强度邻域或快速聚类大型数据集的简单方法吗?

2
怎么把Distance,Azimuth,Dip转换成XYZ?
我有一个带有表头和调查钻取数据的Excel电子表格。标头数据包含孔ID和位置坐标,测量数据包含具有“距离”,“方位角”和“倾角”值的相关井下测量。 由于我知道孔的位置和表面高程,因此我也希望能够将测量表转换为XYZ坐标。有人有功能/程序/示例吗?(VB和ArcObjects) 标头数据: 调查数据:

2
如何在QGIS中标记栅格像元?
我尝试在QGIS打印管理器工具中显示一个小分辨率的光栅文件。我想,以显示与每个单元格的值(位置-一个小标签大约每个单元的中间)。 我该怎么办?有没有可以帮助我完成此任务的插件? 我的想法是使用gdal2xyz,使用CSV插件加载此类文件,然后将其另存为矢量文件。不幸的是,这很麻烦,因为我有很多栅格文件。 另一个想法是使用gdal2xyz.py,然后使用ogr2​​ogr将其另存为矢量文件。 有什么方法可以分批处理吗?有什么开源程序可以让我更轻松地做到这一点?
10 qgis  raster  gdal  ogr 

3
真实的圆在哪些坐标系统中出现?
我已经在Google Maps中开发了一段时间了,并且切换到OpenLayers,但是停留在一点上:我绘制的矢量大多是圆形的,但也包含一些自定义的几何图形,因此我不能使用createRegularPolygon。我正在创建一个点数组并将其发送到OpenLayers.Layer.Vector对象。这很好用,但最终的“圆”仅在赤道附近,而不是在较高的纬度处。它们在高纬度时与底图的压缩量大致相同,这似乎是有道理的。如果我将Google用作基础层,那么它们在所有纬度上都是正确的形状,但是我正在制作一个离线移动解决方案,所以不会这样做。 我要对基本图层使用什么(或设置哪些参数),以便在不使用Google或在线地图的情况下,我的几何图形在所有纬度上都保持圆形?

2
Mapnik可以从SQL Server渲染空间数据吗?
这是一个非常简单的问题-我只想知道是否有人可以确认他们已成功使用Mapnik直接从SQL Server中保存的数据渲染图块。(如果可以,您是怎么做的?)除非您已亲自确认这是可能的,否则请不要回复...不仅仅是应该这样做 我见过人们推荐Mapnik在这样的线程中从SQL Server渲染数据:任何用于SqlGeometry / SqlGeography的好的Map渲染引擎 另外,mapnik网站指出“支持所有OGR格式”:http ://mapnik.org/faq/#data 但是,我完全无法使用到本地SQL Server数据库的连接作为Mapnik图层的数据源。作为测试,我使用了一个简单的测试OGR VRT,它在SQL Server上执行一条SQL语句,以选择单个内联地理多边形作为“知名文本”,如下所示: <OGRVRTDataSource> <OGRVRTLayer name="test"> <SrcDataSource>MSSQL:server=zangief\DENALICTP3;database=TempDB;</SrcDataSource> <SrcSQL>SELECT geography::STPolyFromText('POLYGON((0 50, 2 50, 2 53, 0 53, 0 50))', 4326).STAsText() AS geomWKT</SrcSQL> <GeometryField encoding="WKT" field="geomWKT"/> <LayerSRS>EPSG:4326</LayerSRS> <GeometryType>wkbPolygon</GeometryType> </OGRVRTLayer> </OGRVRTDataSource> (请注意,我也尝试使用更常规的SELECT * FROM Table语法进行此操作)。OGRINFO成功打开此VRT并报告以下内容: ogrinfo mssql.ovf -so -al INFO: Open of `mssql.ovf' using …

3
使用ArcGIS for Desktop填写甜甜圈多边形吗?
我有一组代表水体的多边形。 在同一要素中还有作为水域中岛的多边形。因此,对于给定的湖泊,内部存在较小的多边形,这些多边形表示同一要素中的岛屿。但是,该湖的实际水多边形本身在岛上存在“洞”。 因此,对于中间有一个岛的湖泊而言,水多边形看起来像一个甜甜圈。 现在,我想创建一个填充有孔的水多边形层,以便在查看地图中的所有湖泊时,可以看到所有没有孔的水多边形。 注意:岛屿内部可能包含水体。一个岛内甚至可能有嵌套的水体,这是另一个岛的水体的一部分。有点像水/岛的诞生:-)。 如何在ArcGIS for Desktop中做到这一点?

2
DXF属性为z值
我们给了一个包含Elevation属性的DXF,但是我们想生成一个3D DXF。我知道我可以使用以下代码从shapefile生成3D dxf: ogr2ogr -f "DXF" out.dxf in.shp -zfield Elev 但是,ogr驱动程序似乎没有将属性作为dxf中的字段。 有谁知道这是否可能。 如果可能,我想要一个免费的解决方案。我们确实有FME,但我正在寻找其他选择。
10 3d  ogr  fme  dxf 

1
通过GIST索引获得多边形查询中点的性能
我有两个表:locations(id,region_id,the_geom)和regions(id,the_geom)。对于每个定位点,我想确定其位于的区域: UPDATE locations SET region_id = (SELECT id FROM regions WHERE ST_Within(locations.the_geom,regions.the_geom) ); 在位置点上建立GIST索引是否有意义?我将在区域多边形上建立索引,但是不确定这些点。会加快查询速度吗?

4
SHAPE_Length是否考虑了海拔值?
该Shape_Length属性是否考虑了海拔?举例来说,如果我有3点:A,B,和C A.X = 10 A.Y = 10 A.Z = 10 B.X = 10 B.Y = 10 B.Z = 50 C.X = 0 C.Y = 0 C.Z = 10 然后创建两行:L1和L2。 L1.fromPoint = A L1.toPoint = C L2.fromPoint = B L2.toPoint = C 我所观察的结果是,SHAPE_Length属性上是相同的L1和L2。我已经确认所有点和所有折线都是ZAware。 因此,假设SHAPE_Length属性将形状的Z考虑在内是我的错误吗? 我可以毫无问题地存储Z值或对其进行操作。我正在使用IPolyline。 据我所知,SHAPE_Length仅是2D且不可编辑。

2
查找沿河的点之间的距离(线性参考)
我是gis的新手,并为此感到震惊。我有一个由小线串(折线)组成的河流网络。在不同的shapefile中,我在河上有几个工作站的位置。我需要找到从每个车站到河尾的沿河距离。 问题是我没有一条完整的河线。而且没有通用属性可以用来合并或合并线串。另外,一些车站在支流上。 因此,最重要的是,我需要建立包括支流的大型河流网络并执行班轮参考。但是我不知道该怎么做。任何帮助深表感谢。请尽可能清楚地说明。 如果您需要更多信息,请发表评论。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.