Netlogo gis(道路网络):复制从gis到Netlogo中道路连接的距离(特征)
我有一个由道路网络组成的netlogo gis模型。.shp文件具有测量道路距离的属性长度。在.shp文件中构成道路的多段线将被分解,以便可以找到每个顶点之间的距离。 而不是使用netlogo来计算距离(我假设它使用坐标来计算顶点之间的距离),这将以netlogo单位计算距离值。我想知道是否可以将长度属性从gis文件复制到相应的链接?这将给出道路上的实际距离 有什么办法吗 谢谢 在netlogo模型中,我循环了每个功能列表,从.shp文件复制了“距离”。然后在顶点上循环,创建顶点(节点)。然后在上一个顶点和当前顶点(节点)之间形成链接。 i、 e节点/顶点列表:顶点137顶点141顶点150顶点205。。。。 i、 e链接列表:链接137 141(end1:顶点137 end2:顶点141)、链接150 205(end1:顶点150 end2:顶点205) 这个想法是将一些变量,比如以米为单位的距离作为一个变量。此变量将存储链接的距离值Netlogo gis(道路网络):复制从gis到Netlogo中道路连接的距离(特征),netlogo,Netlogo,我有一个由道路网络组成的netlogo gis模型。.shp文件具有测量道路距离的属性长度。在.shp文件中构成道路的多段线将被分解,以便可以找到每个顶点之间的距离。 而不是使用netlogo来计算距离(我假设它使用坐标来计算顶点之间的距离),这将以netlogo单位计算距离值。我想知道是否可以将长度属性从gis文件复制到相应的链接?这将给出道路上的实际距离 有什么办法吗 谢谢 在netlogo模型中,我循环了每个功能列表,从.shp文件复制了“距离”。然后在顶点上循环,创建顶点(节点)。然后在
breed [vertices vertex]
links-own [distance_in_meters]
foreach gis:feature-lists-of roads[
i ->
set dist_meters gis:property-value i "LENGTH"
foreach gis:vertex-list-of i[
j ->
let first-node nobody
let previous-node nobody
foreach j[
k ->
let location gis:location-of k
if not empty? location[
ifelse any? vertices with [xcor = item 0 location and ycor = item 1
location]
[]
[
create-vertices 1[
set xcor item 0 location
set ycor item 1 location
set shape "circle"
set size 0.2
]
]
let node-here (vertices with [xcor = item 0 location and ycor = item 1
location]
if-else previous-node-point = nobody
[set first-node node-here]
[let who-node 0
let who-prev 0
as node-here
[create-link-with previous-node
set who-node who]
ask previous-node-point [set who-prev who]
]
set previous-node one-of nodes-here
]]]]
您感兴趣的距离属性是道路的总距离还是顶点之间的距离?嗨,luke。我对顶点之间的距离感兴趣。因为我试图从我的模型中获得的是在一个滴答声中看到我的代理移动了多少距离。我的代理将移动两个顶点,直到它到达另一个代理,在这一点上,我想通过将存储在列表中的顶点之间的距离相加来计算他已行驶的总距离是您感兴趣的道路总距离还是顶点之间的距离?嗨,luke。我对顶点之间的距离感兴趣。因为我试图从我的模型中获得的是在一个滴答声中看到我的代理移动了多少距离。我的代理将移动几个顶点,直到它到达另一个代理,在这一点上,我正在考虑通过将顶点之间的距离相加来计算他已经移动的总距离,这些距离将存储在列表中