标签: spatial

如何从clojureql查询postgres Point类型?

如何从clojureql查询postgres Point类型?我希望使用PostGIS功能,但clojureql似乎不包含此功能.

postgresql postgis clojure spatial

23
推荐指数
1
解决办法
843
查看次数

SQL Server 2008 Spatial:在多边形中查找点

我正在使用SQL Server 2008空间数据类型.我有一个表所有状态(作为多边形)作为数据类型GEOMETRY.现在我想检查作为数据类型GEOGRAPHY的点的坐标(纬度,经度)是否在该状态内.

我找不到使用新空间数据类型的任何示例.目前,我有一个多年前实施的解决方法,但它有一些缺点.

我有SQL Server 2008和2012.如果新版本有一些增强功能,我也可以开始使用它.

谢谢.

更新1:

我正在添加一个代码示例,以便更清晰.

declare @s geometry  --GeomCol is of this type too.
declare @z geography --GeogCol is of this type too.

select @s = GeomCol
from AllStates
where STATE_ABBR = 'NY'

select @z = GeogCol
from AllZipCodes
where ZipCode = 10101
Run Code Online (Sandbox Code Playgroud)

sql-server spatial geospatial sql-server-2008 sql-server-2008-r2

23
推荐指数
1
解决办法
4万
查看次数

Linq2Sql或EF4中支持空间数据类型

有没有人知道(理想情况下,参考),LinqToSQL或EntityFramework v4的VS2010版本是否支持SQL 2008空间数据类型的查询?

entity-framework spatial linq-to-sql

20
推荐指数
2
解决办法
6566
查看次数

SQL Server空间和链接服务器

我有一个SQL Server实例,我已经将链接服务器添加到另一个SQL实例.我在链接服务器上访问的表包含空间类型.当我尝试查询表时,我收到一个错误:

在分布式查询中不允许使用CLR类型公开列的对象.请使用传递查询来访问远程对象.

如果我使用OPENQUERY相同的查询,我会收到另一个错误:

当前命令发生严重错误.结果(如果有的话)应该被丢弃.

有没有办法通过链接服务器查询包含空间类型的表?

sql-server spatial linked-server sql-server-2008

20
推荐指数
3
解决办法
2万
查看次数

如何使用st_join()与sf包进行空间连接

这是我一直在努力的玩具示例

# Make points
point1 <- c(.5, .5)
point2 <- c(.6, .6)
point3 <- c(3, 3)
mpt <- st_multipoint(rbind(point1, point2, point3))  # create multipoint

# Make polygons
square1 <- rbind(c(0, 0), c(1, 0), c(1,1), c(0, 1), c(0, 0))
square2 <- rbind(c(0, 0), c(2, 0), c(2,2), c(0, 2), c(0, 0))
square3 <- rbind(c(0, 0), c(-1, 0), c(-1,-1), c(0, -1), c(0, 0))
mpol <- st_multipolygon(list(list(square1), list(square2), list(square2)))  # create multipolygon

# Convert to class' sf'
pts <- st_sf(st_sfc(mpt))
polys <- st_sf(st_sfc(mpol))

# …
Run Code Online (Sandbox Code Playgroud)

r spatial r-sf

20
推荐指数
2
解决办法
3674
查看次数

是否有任何记录的.NET免费R-Tree实现?

我在C#中找到了一些开源的R-Tree实现,但没有一个带有文档,也没有被开发者以外的其他人使用的迹象.

.net tree spatial spatial-index r-tree

19
推荐指数
2
解决办法
4340
查看次数

Python:从matplotlib.pyplot.contour()中查找轮廓线

我试图为某些数据找到(但不是绘制!)轮廓线:

from pprint import pprint 
import matplotlib.pyplot 
z = [[0.350087, 0.0590954, 0.002165], [0.144522, 0.885409, 0.378515], 
     [0.027956, 0.777996, 0.602663], [0.138367, 0.182499, 0.460879], 
     [0.357434, 0.297271, 0.587715]] 
cn = matplotlib.pyplot.contour(z) 
Run Code Online (Sandbox Code Playgroud)

我知道cn包含我想要的轮廓线,但我似乎无法找到它们.我尝试了几件事:

print dir(cn) 
pprint(cn.collections[0]) 
print dir(cn.collections[0]) 
pprint(cn.collections[0].figure) 
print dir(cn.collections[0].figure) 
Run Code Online (Sandbox Code Playgroud)

无济于事.我知道cn是一个ContourSet,并且cn.collections是一个LineCollections 数组.我认为a LineCollection是一系列线段,但我无法弄清楚如何提取这些段.

我的最终目标是创建一个KML文件,在世界地图上绘制数据,以及该数据的轮廓.

但是,由于我的一些数据点很接近,而其他数据点很远,我需要构成轮廓的实际多边形(线串),而不仅仅是轮廓的光栅化图像.

我有点惊讶qhull不做这样的事情.

使用Mathematica ListContourPlot然后导出为SVG工作,但我想使用开源的东西.

我不能使用众所周知的CONREC算法,因为我的数据不在网格上(对于给定的x值,并不总是有多个y值,反之亦然).

该解决方案不需要python,但必须是Linux上的开源和可运行的.

python numpy spatial matplotlib contour

19
推荐指数
2
解决办法
1万
查看次数

sql geography到dbgeography?

也许我错过了什么.我有一个"Geography"数据类型的SQL Server列.

我想在我的c#代码中使用DbGeography类型.有什么方法可以从sql的地理位置转换或转换为dbgeography吗?

sql-server gis spatial geospatial c#-4.0

18
推荐指数
2
解决办法
8385
查看次数

需要一个独立的Java库来对lat/lon数据执行空间计算

我正在寻找一个能够对lat/lon数据集进行空间计算的Java库.以下是我正在寻找的一些功能:

  • 计算两点之间的大圆距离
  • 确定点是否位于简单的闭合多边形内,其中多边形由有序的点列表定义
  • 确定点"A"和点"B"之间的直线是否与简单的闭合多边形相交,其中多边形由有序的点列表定义
  • 确定点"A"是否在点"B"的某个半径范围内

想要的:

  • 想要一个依赖于数据库地理空间组件的库,例如Oracle Spatial,并且不能独立运行.
  • 想要一个图书馆,其目的是生成图形/地图等.我正在为现有应用程序构建分析模块,最终目标不是创建漂亮的图片.
  • 想要一个库来搜索大量的空间数据.如果它也碰巧这样做,那没关系,但我不会使用该功能.

该组织计划最终获得Oracle Spatial的许可证(因此,此时将覆盖空间搜索),但是现在我需要在不依赖数据库提供的空间的情况下在小数据集上实现我上面提到的分析功能.支持.

java polygon spatial geospatial great-circle

17
推荐指数
2
解决办法
2万
查看次数

检查点是否在由多个多边形/孔组成的空间对象中

我有一个SpatialPolygonsDataFrame,包含11589个"polygons"类对象.这些对象中的10699个正好由1个多边形组成,但其余对象由多个多边形(2到22)组成.

如果一个对象由多个多边形组成,则可能有三种情况:

  1. 有时,这些附加多边形描述了由"多边形"类对象中的第一个多边形描述的地理区域中的"洞".
  2. 有时,这些额外的多边形描述了额外的地理区域,即该区域的形状非常复杂,并通过将多个部分组合在一起来描述.
  3. 有时,它可能是两者的混合,1)和2).

Stackoverflow帮助我正确地绘制了这样一个空间对象(绘制由多个多边形定义的空间区域).

但是,我仍然无法回答如何确定一个点(由经度/纬度定义)是否在多边形中.

以下是我的代码.我试图point.in.polygonsp包中应用该函数,但是没有办法处理这样一个由多个多边形/孔组成的对象.

# Load packages
# ---------------------------------------------------------------------------
library(maptools)
library(rgdal)
library(rgeos)
library(ggplot2)
library(sp) 


# Get data
# ---------------------------------------------------------------------------
# Download shape information from the internet
URL <- "http://www.geodatenzentrum.de/auftrag1/archiv/vektor/vg250_ebenen/2012/vg250_2012-01-01.utm32s.shape.ebenen.zip"
td <- tempdir()
setwd(td)
temp <- tempfile(fileext = ".zip")
download.file(URL, temp)
unzip(temp)

# Get shape file
shp <- file.path(tempdir(),"vg250_0101.utm32s.shape.ebenen/vg250_ebenen/vg250_gem.shp")

# Read in shape file
map <- readShapeSpatial(shp, proj4string = CRS("+init=epsg:25832"))

# Transform the geocoding from UTM to Longitude/Latitude
map <- …
Run Code Online (Sandbox Code Playgroud)

r polygon spatial geospatial point-in-polygon

17
推荐指数
2
解决办法
1万
查看次数