地理信息系统

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

4
外行人的空间查询工具是什么?
我对GIS一无所知,但我有一个GIS问题。花了几个小时来研究我的问题,我认为我需要做的是执行空间查询,但是我不确定该怎么做。 我有一些要针对某个特定社区查看的犯罪数据(特定事件的列表,发生的时间和发生的地址)。我在地图上有一个邻域的轮廓,该轮廓足够具体,可以将其转换为描述邻域轮廓的多边形。我想过滤犯罪数据,以查看在该区域范围内发生了哪些特定事件。我认为这是一个空间查询,但我不确定。 我正在寻找有关该问题的一般指导。看来有一些在线免费工具可用于这些事情(Google Fusion Tables?),并且我可以访问ArcGIS Desktop和MS SQL Server。我熟悉SQL Server,但不熟悉ArcGIS Desktop,看起来好像我在一两天内就无法学习到,但是我不确定。

4
尝试查找.NET GeoJSON库
我正在尝试找到一个.NET GeoJSON库,该库可用于将.NET代码中的SqlServer2008空间边界(以二进制格式->例如STAsBinary())导出到HTML前端,以显示在Google地图上。 起初,我认为这可能是一个StackOverflow问题,但是我觉得这个站点更专门于帮助我。 有人知道吗? 注意:此dll不必导入到SqlServer2008中。实际上,它不会。我将在C#MVC网站中使用它。
9 .net  geojson 



3
查找基于矢量点的最近栅格像元值?
我在ArcGIS中有两层:一层是矢量点,另一层是栅格层。我想将栅格数据网格的值附加到矢量点。问题在于矢量点远离任何具有值的现有栅格网格,因此命令“ Sample”不为这些矢量点返回任何值。 所以我的问题是:如何在给定矢量点的情况下找到最近的栅格像元并从像元中提取值? 实际上,我需要做两件事: 识别测距仪内的轮廓绘制器(通常距离我现有的栅格1-2个像元) 如果它们在范围内,则从最近的栅格中为其分配一个值 编辑:我有大约3000矢量点,我的问题是: 我需要根据位置将栅格值附加到矢量点上。我使用了“样本”工具,它在大多数情况下都适用。 但是,有这样的情况 右边的点可以从栅格中获取值(“ Sample”有效),但是左边的点由于对齐问题而不能。 栅格转多边形不起作用,因为出现错误消息,因为它们不在域之内,所以无法将它们转换为矢量。我也有这样的观点 这些高点不应获得任何值,因为它们离栅格太远。 我想到了一些解决方法: 步骤1.首先进行“采样” 步骤2.在“样本”操作之后选择空值 步骤3.根据零点构造缓冲区(小数点后1位以内) 步骤4.使用区域统计???或其他工具来遍历缓冲区中的所有栅格像元,找到最接近的栅格像元,提取其值并将其放在矢量点中。 我陷入了第4步。我不知道我可以使用ArcSDK中的哪个工具来实现此功能。 否则...您有更好的主意应对吗? 我有20个这样的栅格图层,我想自动制作(使用模型生成器和arcobject)。


3
如何比较2条折线数据集?
我有一个用于行人路的网络数据集,该数据集是通过整理来自各种来源的路径网络而生成的。 我想将其与也包含路径网络的另一个数据集进行比较,以查看哪个更完整/其中一个数据集中可能有特征,而另一个数据集中可能没有。 表示同一路径的要素可能在数据集之间是不同的,但它们之间的距离在几米之内。 我该怎么办?
9 network 

2
GDF-有人可以建议一些阅读好书吗?
谁能给我关于地理数据文件格式的简要说明,或者发布一些我认为可能很有启发性的URL? 我感到(尽管不确定)GDF意味着在空间数据库中建立某些拓扑关系,摩擦,规则等。不过,到目前为止,我还没有完全了解我所读到的内容。看起来格式似乎与诸如管道,水电网络,车队导航路由等路由类型的应用程序最相关。这不是通过Network Analyst这样的扩展来最好地完成,还是通过脚本或编程语言来完成? 。 为什么在GIS应用程序之外使用“独立”环境。我找不到导致我追求的答案的任何东西。谁能给我“假人”版本?为什么会有任何理由在GIS环境“外部”进行此操作。从我阅读的内容来看,最终产品似乎是以某种“文本”框架交付的。

2
使用arcpy或ArcObjects以编程方式修改栅格图层的显示和符号系统属性
我需要超过1500个NITF文件,才能在ArcMap中以编程方式修改图层显示和符号系统。我需要设置以下以红色概述的属性: 我已经浏览了arcpy文档,但看起来这些属性似乎并未公开-老实说,我没想到它们会如此。我有种可以通过ArcObjects接触到它们的感觉。任何人都具有通过编程修改这些属性的经验/运气吗?

4
ArcView 3.x Avenue位图(Tabs?)与ArcView 10 Python光标
注意:尽管这个问题有答案,但是对优化游标过程的其他提示将不胜感激。我将监视任何更新。 目前,我的老板(在Avenue工作)和我(在Python中工作)都试图解决同一问题。相反,我们都解决了这个问题,但是至少可以说,我们的解决方案的运行速度是不相干的。他的脚本在2个小时内所处理的内容最多可能达到6个。语法和逻辑实现方面的唯一真正区别在于3.x的位图和10.x的游标。我们两个: 1)存储表1中的值 。2)使用这些值查询表2中的一行 。3)存储表2中的值,作为新行插入表3中。 在这两个脚本中,这些过程都是在两个嵌套循环中完成的。在我开始探索代码优化的美好世界之前,将Avenue脚本性能与Python进行比较时,是否会发生这种情况?在操作时间方面,这并不是他的脚本第一次超过我的脚本,因此我想知道在为恐怖的脚本而钉死自己之前是否应该注意一些事情。 这是我的脚本,没有多余的地方: import arcpy import time import sys import os def recordfindcopy(inFile,query,outFile): findRecord = arcpy.SearchCursor(inFile,query) for record in findRecord: copyRecord = arcpy.InsertCursor(outData) # <--- D'oh! (See answer) field = record.FIELD copy = copyRecord.newRow() copy.FIELD = field copyRecord.insertRow(copy) StreetsFileList = [r"Path", r"Path"] for sfile in StreetsFileList: …

3
确定流梯度的工作流程?
就数据而言,我正在处理NHD .shp文件,1000万个DEM和一些LIDAR数据。 我的目标是确定流网络中100m段的坡度。 我已经能够做到这一点,但是我希望我的工作流程不理想,尤其是因为我根本无法处理分支网络。 如果所有人都打算这样做,那么您将使用哪种步骤? 另外,我在这里发布了有关该问题的文章,我认为我在描述我的目标方面做得更好。

5
有没有办法在ArcMap中本地查看KML?
回答此问题:如何将KML导入/导出到ArcGIS Desktop? 提出了另一个。有大量工具可以导入/导出kml / kmz。是否有可用于在ArcMap中本地查看KML的工具? 我很好奇,是否有人建立了一个自定义要素图层,可以读取kml,类似于ZigGIS使用PostGIS作为数据源的方式。 或者也许是像inmemoryworkspacefactory这样的东西,它可能不算作本地的,但是会有一些优势:http : //geobabble.wordpress.com/2007/07/10/consumption-georss-in-arcmap-with-inmemoryworkspacefactory/

3
在其他Python脚本中使用一个Python脚本中的变量?
我想设置一个包含变量的python文件,该变量具有我所有数据源的位置。然后,我所有其他脚本都将使用它,然后随着数据源的更改,我只需要编辑一个文件。 我的Data_sources.py看起来像这样: BC_BEC = "Database Connections\\BC.sde\\FOREST_BC.BC_Eco\\BC.BC_BEC" BC_TFL = "Database Connections\\Forest_BC.sde\\BC.BC_Admin\\BC.TFL_Boundary" 等等... 如何获取所有其他脚本以加载或访问Data_sources.py中的这些变量?
9 python 

3
世界层的磁盘空间和切片数
我正在考虑测试用于Web映射的世界图层的图块生成。 在这种情况下,我想知道如何计算图块的数量(如果我记得,我将需要256x256的图块缓存)在WGS84坐标中需要n个级别。 也许我会使用带有预生成图块的复合解决方案,并在运行时使用它,但是最后我必须知道可用磁盘空间(如果生成了每个图块)以及它将代表的文件数量。 有两个目标,所需的时间和所需的磁盘空间。 欢迎任何信息 编辑: 我发现此脚本可以根据缩放级别和数据范围来计算要生成的切片数。看到这个要点https://gist.github.com/1675606

4
ArcGIS Python工具-将自定义脚本导入ToolValidator类
我已经发布了一个问题,上周有关自定义ToolValidator类,并得到了一些很好的答案。在使用建议的解决方案时,我创建了一个自定义模块,该模块在db上执行查询,并且将由ToolValidator类(为下拉列表提供值)以及稍后在地理处理脚本(以获取其他信息)中调用参数(基于下拉列表中选择的项目)。但是,我似乎无法实际调用ToolValidator类中的自定义模块。我一直在尝试追加到没有运气的路径。当我尝试将这些更改应用于脚本时,出现运行时错误:[Errno 9]错误的文件描述符。如果我注释掉导入行,则没有错误。 sys.path.append('my_custom_module_directory') import my_custom_module 你们中的许多人可能会问为什么我不只是使用ArcObjects实现自定义工具。原因是我的最终用户没有在计算机上注册任何dll所必需的特权。 更新:这是在ArcGIS 10中发生的。很有趣的是,我最初是附加到ToolValidator类的initialiazeParameters函数内部的路径。如果我在ToolValidator类的外部(即,在其顶部)进行附加操作,则一切都会按预期进行。 sys.path.append('C:/Working/SomeFolder') import somescript -------->THIS WORKS class ToolValidator: """Class for validating a tool's parameter values and controlling the behavior of the tool's dialog.""" def __init__(self): """Setup arcpy and the list of tool parameters.""" import arcpy sys.path.append('C:/Working/SomeFolder') import somescript -------> THIS DOESNT WORK self.params …

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.