问题标签 [nettopologysuite]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
957 浏览

xamarin.forms - Xamarin 表单获取地图区域中的位置

我开发了一个 xamarin 表单应用程序,我在数据库中存储了一些位置。我使用具有纬度和经度的 efcore 存储 Location NetTopology 套件。然后我可以从地图上的某个点找到最近的地方。

但是,如果我移动地图或缩小地图,我如何才能找到存储在我的数据库中的新区域中的地点以将它们固定在地图上?

有例子吗?

我真的很难找到一种方法来说明我数据库中的这个地点列表是地图显示的一部分。

我使用 xamarin 地图。

谢谢

0 投票
1 回答
803 浏览

c# - 尝试使用 Hangfire 时的自引用循环

我正在 ASP.NET Core 中开发 Web API,我们发现自己需要为大型批量插入操作运行后台任务。但是,我插入的模型包含.NET Topology SuiteGeometry类型的属性。

为了批量插入,我遵循我在这里找到的一种方法,它的性能非常好,但它的实现超出了这个问题的范围。尽管速度很快,但例如用户可能一次插入超过一百万条记录,因此我们决定将此处理移至后台任务。Hangfire扩展一开始看起来可以为我们节省大量时间,但它似乎不能很好地处理这种Geometry类型。在下面的代码中,该BackgroundTask方法也可能是一个空方法:

只是将列表Geometry作为参数传递BackgroundTask给操作 for 的行为Enqueue将引发不幸的错误:

Self referencing loop detected for property 'CoordinateValue' with type 'NetTopologySuite.Geometries.Coordinate'. Path '[0].Geometry.Coordinates[0]'.

事实上,Coordinates(一个 NTS 类)确实引用了自己:

在此处输入图像描述

不知道他们为什么要这样做,但他们做到了。无论如何,到目前为止一切都很好,但是除非我设法找到解决方案(或者甚至可以解决它),否则我将在从头开始实施后台工作人员时遇到一堆麻烦(我'将使用 Worker 服务,以防有人想知道)。任何指针?

0 投票
1 回答
44 浏览

entity-framework-core - 很想从实体中获取 Geojson 字符串?

我的实体框架实体City类型有一个Geometry属性。我得到如下数据:

所以我想如何使用 Npgsql 或 Nettopologysuite 获取 Geojson 字符串?

0 投票
1 回答
31 浏览

c# - 无法使用 nettopologysuite 调用 varbinary 上的方法

我尝试使用 efcore 和 linq 请求我的数据库,但出现错误:无法在 varbinary 上调用方法。

我无法整理。

代码是:

当前位置是:

如果我这样做,它会起作用。似乎这是不起作用的顺序。

input.radius 是一个整数。

你能帮忙吗?

谢谢,

0 投票
0 回答
149 浏览

asp.net-web-api - 如何使用/翻译 NetTopologySuite 几何到 GeoJSON 以在 Web API 中使用

我正在使用 NetTopologySuite 2.0,我想通过我的 Web API 返回一些地理数据。我想将 GeoJSON 用于 DTO,但我找不到任何与 NTS 兼容的 GeoJSON 模型。我知道存在用于 GeoJSON 的 NTS 读取器/写入器,但它的输出是字符串,我想要一个对象,因为我也想通过大摇大摆地看到一个模型。我想有类似这样的 Web API 方法:

我错过了什么吗?

0 投票
0 回答
54 浏览

c# - C# NetTopology CoordinateValue 无限循环

我尝试制作一个支持空间查询的 OData-API。我使用数据库优先方法(来自 PostGresql)构建我的模型,包括 PostGIS - 列。似乎正确导入它,在 DBContext 中有这个:

在模型中是这样的:

因此,在进行调用时会发生以下情况:所有数据都是从数据库中加载的,但几何有一个无限循环,如下所示:

无限循环

我不知道为什么会这样。

任何建议,如何解决这个问题以及问题可能出在哪里,将不胜感激。

亲切的问候

0 投票
1 回答
164 浏览

asp.net-core-mvc - .NET TopologySuite 多边形放大

我们正在使用 .NET TopologySuite 来解决与几何(例如多边形)有关的各种任务。

但是,我们一直在尝试找到一种方法,当给定一个多边形时,如何使用 .NET TopologySuite 库将同一个多边形扩大/放大 1 公里/100 米等。

0 投票
1 回答
295 浏览

c# - 使用 NetTopologySuite 删除 GeoJSON 的 bbox 字段

在 .NET Core 3 WebAPI 项目中,我正在使用 NetTopologySuite 创建一个 FeatureCollection。

然后我序列化为 GeoJSON 响应。完整代码如下:

问题是它还添加了字段框,对于点的集合是完全没用的:

如何告诉 NetTopologySuite 不要添加 bbox 字段?

0 投票
0 回答
1259 浏览

c# - 是否可以使用 .NetTopologySuite 与多边形相交/剪裁线?

我对与多边形相交的线段有疑问。我有一些代表一些步行路径的线(绿色)和一些代表多边形的限制多边形(黑色)。

您可以在下图中看到: 在此处输入图像描述

我现在想知道是否可以提取多边形外部的线段(左上角的红线) 在此处输入图像描述

首先,我使用这样的东西创建了多边形:

var geometryFactory = NtsGeometryServices.Instance.CreateGeometryFactory(srid: 4326);

然后像这样创建线串:

尝试过交叉路口

而且也有区别但没有运气

还尝试使用 WKT Reader 以及像这样的交集和差异的组合(我想知道这是否是正确的方法):

但是我遇到了这样的错误(使用 WKT 方法时)。

更新

我已经修复了 WKT Reader 的拓扑问题

在阅读器上,我添加了Boundary属性和固定的拓扑问题。但主要问题仍然存在,正如它可以在这里看到的那样。

我使用这段代码来提取不相交并添加到不同图层的线,但是正如您在红色方块中看到的那样,有些线是绿色的,它们应该是紫色(虚线),因为它们在黑色多边形之外但它们仍然是绿色的。 在此处输入图像描述

现在,我的主要问题是:是否可以提取多边形外部的线并且我是否在正确的轨道上?

0 投票
1 回答
660 浏览

.net - 尝试使用 NetTopologySuite 在地图上创建一个圆圈,但该圆圈覆盖了整个地球

我正在尝试学习如何使用 NetTopologySuite(用于 .NET),但要创建一个简单的圆圈作为我的搜索区域。当我使用该.Buffer()方法执行此操作时,创建的形状覆盖了整个地球。

这是 WKT 输出的结果:

这是放置在地图上时的样子:

在此处输入图像描述

如果您查看结果数据,数字远远超过 -90/90 -180/180。

我的猜测是我可能没有正确设置 SRID?