我无法SqlGeography从 MS SQL DB获取对象,我使用 .net core app 和 linq2db 作为提供程序,但我有一个例外:“无法为几何创建‘GIS_CH_DB.sys.geography’类型或‘’特定类型。 ”
但我用
var provider = (SqlServerDataProvider)DataConnection.GetRegisteredProviders()[LinqToDB.ProviderName.SqlServer2014];
provider.AddUdtType<SqlGeography>("Geography", null, LinqToDB.DataType.Udt);
provider.AddUdtType<SqlGeometry>("Geometry", null, LinqToDB.DataType.Udt);
Run Code Online (Sandbox Code Playgroud)
这应该将 SQLGeography 转换为正确的对象。有人知道如何解决这个问题吗?
我在地图上有2个点,周围有一个区域(比如说5英里),我需要弄清楚它们是否相交.例如,假设每个点周围都有一个圆,其半径为5英里.我需要弄清楚这两个圆是否重叠.有人能指出我可以做到这一点的数学吗?
另外,我正在使用Solr进行其他地理空间搜索.有谁知道这是否可以用Solr完成?
谢谢!
使用d3.geo,我想绘制一个我不想通过尝试和错误找到的投影地图,但是使用可视化工具来帮助我.
有一个工具:Kartograph.js 的Visual Map配置器.有没有可以用来为d3.geo生成投影的工具?
你怎么找到你想要的投影,没有尝试和错误?我可以从任何地图获取原始参数但是为了比例和翻译?
我尝试在div中显示我的地图 - 但是我希望这个地图被限制为div-size - 现在,它也忽略了w,h值和vis css设置.
设置svg高度和宽度是否有意义?当我把投影的比例放大时,它总是比组织大.SVG.
var w = 200;
var h = 300;
// this will attach a svg-element with the class "map" to "mydiv"
var map = d3.select("#mydiv").append("svg:svg")
.attr("width", w)
.attr("height", h)
.attr("class", "map");
var projection = d3.geo.albers()
.origin([10.5,51])
.scale(2000)
.translate([100, 150]);
var path = d3.geo.path().projection(projection);
d3.json('germany.json', function(json) {
map.selectAll('path')
.data(json.features)
.enter().append('path').attr('d', path);
});
Run Code Online (Sandbox Code Playgroud)
和我的css:
#vis {
overflow: hidden;
width: 350px;
height: 220px;
}
Run Code Online (Sandbox Code Playgroud) 好的,所以我已经有了这个问题的答案,但我花了很长时间才达到它,所以我想我会分享它,特别是因为有人问我但是在一个不相关的问题
我创建了一个基于Phonegap的导航应用程序,用于引导步行,使用GPS跟踪用户在预定义路线周围的位置.我的路线在路线周围的特定地理位置设置了触发器,根据用户的当前位置向用户发出指令.问题是GPS不是超级准确或可靠,所以即使我允许在大约20米的位置附近"访问半径",实际测试导致这些触发有时会被错过,因为GPS位置更新会稍微发生之前用户稍后输入访问半径.我尝试增加半径,但这意味着触发器过早触发与用户的当前位置相关.
那么如何以一种使用"真实世界"GPS数据的方式解决这个问题呢?
我需要格式为County-> Region-> City的地理数据库。我使用这个数据库:
https://www.maxmind.com/cn/worldcities
据我了解,国家/地区代码使用ISO:https : //en.wikipedia.org/wiki/ISO_3166-1_alpha-2。例如以下行:
us,sand point,Sand Point,AK,,55.3397222,-160.4972222
Run Code Online (Sandbox Code Playgroud)
意思:
US - County United States
Sand Point - City name
AK - Region Alaska
Run Code Online (Sandbox Code Playgroud)
但是我在哪里可以获得地区代码列表?
谢谢。
在下图中,您可以看到从一个点(黑色圆圈)到其 3 个相关点 () 绘制了 3 条线。
图片
题
如何使用两点之间距离的百分比计算每条线上点之间的纬度和经度点?
例如,如果我想让位置能够沿着每条线绘制额外的圆圈,差异为 20%?
我现在有什么代码
var data = [
{ "coords" : [ 53.409045, -2.985406 ]},
{ "coords" : [ 53.408747, -2.982862 ]},
{ "coords" : [ 53.407630, -2.984136 ]},
{ "coords" : [ 53.407142, -2.986931 ]}
];
var pointA = new L.LatLng(53.409045, -2.985406);
var pointB;
data.forEach(function(d) {
pointB = new L.LatLng(d.coords[0], d.coords[1]);
L.polyline([pointA, pointB]).addTo(map);
L.circle([d.coords[0], d.coords[1]], 10).addTo(map);
});
Run Code Online (Sandbox Code Playgroud)
上面的代码唯一要做的就是为每个点画一个圆,并从主圆(点A)到其他圆(点B)画一条线
我非常需要知道如何按距离百分比计算点 A 及其相关点之间的多个坐标。
我需要确保所有绿色圆圈与中心圆圈的距离相同
用于测试的 CODEP
编辑 - 到目前为止我使用以下正确答案的图像
我正在尝试转换我的数据,以便它可以绘制在地图上。例如,数据如下所示:
# A tibble: 2 x 2
Latitud Longitud
<chr> <chr>
1 10º 35' 28.98'' N 3º 41' 33.91'' O
2 10º 35' 12.63'' N 3º 45' 46.22'' O
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用以下方法对其进行变异:
df %>%
mutate(
Latitud = str_replace_all(Latitud, "''", ""),
lat_edit = sp::char2dms(Latitud), "°")
Run Code Online (Sandbox Code Playgroud)
返回和错误:
Error in if (any(abs(object@deg) > 90)) return("abs(degree) > 90") :
missing value where TRUE/FALSE needed
In addition: Warning message:
In asMethod(object) : NAs introduced by coercion
Run Code Online (Sandbox Code Playgroud)
我想在 ggplot (或其他空间包)的地图上绘制这两个点
数据:
structure(list(Latitud = c("40º 25' 25.98'' N", "40º …Run Code Online (Sandbox Code Playgroud) 在ABAP中,我们需要从 HERE API 获取详细路线https://router.hereapi.com/v8/routes?transportMode=car&origin=21.11336,39.21516&destination=21.52779,39.25381&return=polyline&app_id={APPID}&apiKey={APIKEY}。
该 API 返回折线,我们需要对其进行解码以获得地理坐标。我们尝试使用https://github.com/heremaps/flexible-polyline给出的算法进行解码,但它没有提供正确的坐标。
我可以获得 HERE 用于编码折线的确切算法,以便在 ABAP 中解码折线吗?
(如何)是否可以在具有 d3/透视视图的地球上绘制地理数据 \xe2\x80\x93 例如多边形层 \xe2\x80\x93 ,类似于此图形?
\n我想要一个带有sf和 的解决方案ggplot但欢迎任何解决方案。
(我问这个主要是出于好奇,但由于我经常看到这样的图形,我想这个问题可能有用)
\n