一、開發思路
1.設定起點,和水管路線。
2.從起點開始分級遍歷樹結構管線,如果形成迴路的判斷上一級最短的路線作為流向連線點。
二、詳細**
private listlis;
private void 流向toolstripmenuitem_click(object sender, eventargs e)
drawline(points);
}private void drawline(ipoint points)
foreach (ipolyline item in lisline)}}
}//查詢點相交線
private listqueryline(ipoint points, listlisline)
}return lisp;
}//畫箭頭返回未點
private dictionarydrawarrow(ipolyline pline, ipoint interpoint)
else
lis.remove(pline);
dic.add(pline, point);
return dic;
}//判斷中間回路線
private void movelist(listlisline, ipoint interpoint)
else
foreach (ipolyline pline1 in lisline)
else
ipolyline pline2 = new polylineclass();
pline2.frompoint = startpoint;
pline2.topoint = endpoint;
ipolyline pline3 = new polylineclass();
pline3.frompoint = endpoint;
pline3.topoint = startpoint;
ipolyline remoline = null;
foreach (ipolyline itemline in lis)
else
remoline = itemline;
}if (itemline.topoint.x == startpoint.x && itemline.topoint.y == startpoint.y && itemline.frompoint.x == endpoint.x && itemline.frompoint.y == endpoint.y)
else
remoline = itemline;}}
if (remoline != null)}}
}}三、結果展示
CAN資料流向分析
1 記錄儀can收發器接收到資料首先送入過濾器 can收發器有28組過濾器,每組包含2個32位暫存器,可以設定成2個can id或掩碼後的一組can id,一般情況當採集can id超出56時,將採用掩碼方式。目前記錄儀已經最多採集300多個can id,已經無法精準過濾 2 經過濾器 過濾掉一部分...
GIS 空間分析(9)
歐式距離 在 gis 中距離可以表示為歐氏距離和成本距離。歐氏距離是量測源與目標之間的直線距離,而成本距離量測的是源與目標之間穿越歐氏距離的耗費。例如,卡車司機對穿越一條路徑的時間和燃料耗費比它的歐氏距離更感興趣。在這種情況下,成本距離不僅與自然距離有關,還與限速和路況有關,在後面章節中將詳細講述成...
GIS 空間分析(20)
找出某種珍貴藥材的生長區域 1.背景 某種珍貴藥材生長於山區,通過研究了解到這種藥材生長具有嚴格的生長條件,為了能更好地保護該藥材的生長環境,現在需要使用gis空間分析方法,將藥材適合生長區域找出來,以便為該五中保護提供依據 2.資料 山區等高線資料contour.shp 山區觀測點採集的年平均溫度...