目標
按照客戶要求將提供的MDB表格生成cad線和註記,具體要求見下圖:
要求點:
1,在管段的兩端上方及下方標註對應的高程和埋深;
2,註記在端點內側距離端點1M的位置;
2,註記方向和管段方向保持一致;
難點:
找到註記點的位置以及註記文本旋轉角度。
實現步驟
①讀取表格——》②生成管段及管點圖形——》③計算管段斜率——》④計算註記點座標——》⑤生成註記——》⑥寫入管點、管段、註記。
生成管段圖形
將管段的兩個端點的座標以及要標記的屬性關聯到管段上。
統一按照從左到右的方向生成管段,確保註記在對應的端點上。
生成管段圖形並計算斜率
計算斜率公式:@atan((@Value(_indices{0}.y)-@Value(_indices{1}.y))/(@Value(_indices{0}.x)-@Value(_indices{1}.x)))*180/3.1415926。其中_indices{0}.y,_indices{1}.y爲管段端點的座標值。
生成註記點位置
思路,以端點位圓心,1m爲半徑生成圓,圓轉弧線,弧線和管段做相交求出交點點位,交點點位即爲註記位置。
生成註記
將前面計算的管段的方向賦值給文本旋轉角度,管段和圓交點作爲註記的對象 添加註記。
寫入cad文件
寫入管段圖形,寫入註記。效果如下圖: