NCF参数化建筑论坛
标题:
嘗試在GH 裡用使用C#找出最短的路徑
[打印本页]
作者:
weiwei
时间:
2013-2-19 22:54
标题:
嘗試在GH 裡用使用C#找出最短的路徑
流程步驟 :
1.散佈隨機點在範圍內,
設index 0 為起始點,
用index 0 去跟除了自己的點搜尋,找到最近距離,並抽取最近點的index
把 "起始點(initial Point)" 與 "最近點(closest Point)"連線
注意: 比較距離時,當前點不用與自身相比較,因為與自身比較出來的數值一定是0,也是最小,沒意義。
2. 使用"最近點(closest Point)"搜尋最近點,並連線,找到"下個點(next Point)"
注意: 比較距離時,也不用與使用過的點作比較,因為目的是把最近點找出並當成下條連線的起點。例如: 如圖所示index 0 找到最近點 index 9 ,如果index 9 又與除了自身的其他點比較,將會找到 index0
,沒意義。
3. 替換"下個點(next Point)" 當成 "最近點(closest Point)",目的是把"下個點(next Point)"
做為下次連線的起點
4. 重複1-3步驟,完成最近距離連線
問題 :
在把使用過的index value 取出作檢查時,程式出現問題"索引超出範圍",希望哪位牛哥妙麗可以幫在下解決一下問題!!! 感激不盡。
檔案下載:[attach]37687[/attach]
Blog :
http://lochengwei.blogspot.tw/
[attach]37683[/attach]
[attach]37684[/attach]
[attach]37685[/attach]
[attach]37686[/attach]
作者:
weiwei
时间:
2013-2-19 22:55
抱歉了,剛上手,有些問題需要高手幫幫忙!
作者:
king_tc
时间:
2013-2-20 12:34
不知道楼主做这个的目的是什么,其实楼主现在随机布的点有很大的巧合性,如果在某些位置增加几个点,按照楼主的逻辑最后会形成自交叉的pl,我觉得自交叉是不是楼主不希望出现的情况?
作者:
Lxuezhao
时间:
2013-2-20 20:56
是没看明白目的,0到8之间最短路径不是直接连直线么?
作者:
阿浩
时间:
2013-2-22 17:34
有点意思。。。。。。。。。。。。。
作者:
wikii
时间:
2013-7-5 19:31
[attach]39320[/attach]
楼主的解题思路不对
显然这个不是最短路径。[attach]39321[/attach]
作者:
winkdong
时间:
2013-7-21 18:06
不懂c#,不过用过shortestwalk这个gh的插件,可以解决类似arcmap的最小路径生成问题。
欢迎光临 NCF参数化建筑论坛 (http://bbs.ncf-china.com/)
Powered by Discuz! X3.2