余劍
(蚌埠市勘測設(shè)計研究院,安徽蚌埠 233000)
利用.Net實現(xiàn)縱橫斷面中百米樁的自動繪制
余劍?
(蚌埠市勘測設(shè)計研究院,安徽蚌埠 233000)
利用VB.NET對AutoCAD進行二次開發(fā),實現(xiàn)了縱橫斷面中百米樁的自動繪制,極大地方便了內(nèi)業(yè)工作量。
縱橫斷面;百米樁;Visual Basic 2005
縱橫斷面測量在平常的市政工程中經(jīng)常會遇到,在外業(yè)數(shù)據(jù)采集完成后,就要進行內(nèi)業(yè)成果的整理了。根據(jù)設(shè)計院的要求,要提交規(guī)定的Excel格式、帶狀平面圖。而帶狀平面圖上要有百米樁的高程數(shù)據(jù)。以前的做法就是根據(jù)Excel表格手工輸入里程樁高程。非常不方便,費時費力,而且容易出錯。
Visual Basic 2005是微軟開發(fā)的一種基于.NET類庫的語言,它雖然簡單,但能解釋某些復(fù)雜的事件。隨著語言的不斷發(fā)展,AutoDesk公司為了讓AutoCAD的二次開發(fā)具有更多的語言,他們把CAD的常用功能封裝成類庫,并提供給了.Net語言。這樣開發(fā)者就可以利用Visual Basic 2005開發(fā)出簡單的功能了。
(1)讀取斷面文件
由于提供的是Excel文件,所以程序設(shè)計時采用xls擴展名的文件。當然可以根據(jù)不同的需要來設(shè)置不同的文件擴展名。
(2)提取百米樁的高程
縱橫斷面文件格式如圖1所示。
圖1 縱橫斷面格式
提取如0+100、0+200這樣的百米樁數(shù)據(jù),如圖2所示。
圖2 提取的數(shù)據(jù)
(3)選取要繪制百米里程樁的道路中心線
所選取的多線段必須是連續(xù)的,如果多線段的方向和道路的里程方向不相符,那么可以把多線段的方向重置,使得與之相符。
(4)繪制百米里程樁。結(jié)果如圖3所示。
圖3 百米里程樁
在.Net開發(fā)AutoCAD時,是利用類來實現(xiàn)各種功能的。主要內(nèi)容如下:
(1)為百米里程樁建立一個Data類,用來存儲里程數(shù)據(jù)。
Visual Basic 2005是一種易學(xué)易懂的語言。用此語言來進行AutoCAD二次開發(fā)非常方便。本程序根據(jù)在實際中的應(yīng)用而開發(fā)出來的,實現(xiàn)了縱橫斷面百米里程樁的自動繪制,在工作中方便了內(nèi)業(yè)人員,提高了工作效率。
[1] AutoCAD.NET開發(fā)人員手冊.
[2] AutoCAD 2006幫助文件.
Civil 3D Application in the Calculation of Earthwork
Yu Jian
(Bengbu Geotechnical Engineering and Surveying Institute,Bengbu 233000,China)
This article is to AutoCad with vb.net secondary exploitation,to achieve a cross-section in 100 m automatic draw pile,which greatly eases the workload within the industry.
cross-section;Hundred meters piles;Visual Basic 2005
1672-8262(2011)02-139-02
P209
B
2010—09—17
余劍(1981—),男,工程師,主要從事城市測量工作。