亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        分類房屋面積自動(dòng)統(tǒng)計(jì)的程序?qū)崿F(xiàn)

        2016-03-04 14:27:31廖維榮
        無線互聯(lián)科技 2015年8期

        廖維榮

        摘要:在新城建設(shè)或者舊城改造中,決策者往往想先了解征地拆遷工作量及成本,這樣一來,房屋的建筑面積統(tǒng)計(jì)工作變得尤為重要,傳統(tǒng)的手工計(jì)算既費(fèi)時(shí)費(fèi)力,又難以保證其準(zhǔn)確性,文章應(yīng)用VBA編制程序,實(shí)現(xiàn)了房屋分類面積的自動(dòng)統(tǒng)計(jì)計(jì)算,使繁重的工作變得簡(jiǎn)單高效,并且能保證其準(zhǔn)確與可靠性。

        關(guān)鍵詞:房屋面積;分類統(tǒng)計(jì);程序計(jì)算;VBA

        1引言

        隨著社會(huì)經(jīng)濟(jì)的發(fā)展,人們對(duì)居住環(huán)境要求越來越高,新城建設(shè)和舊城改造項(xiàng)目進(jìn)行的如火入茶;然而在項(xiàng)目的前期,決策者往往想先了解項(xiàng)目的征地拆遷工作量及成本,這樣一來,房屋的建筑面積統(tǒng)計(jì)便成了該項(xiàng)工作的重中之重。傳統(tǒng)的計(jì)算方法是逐間房屋分類手工計(jì)算,然后再匯總手工計(jì)算,這樣既費(fèi)時(shí)費(fèi)力,也難以保證其準(zhǔn)確性,筆者通過思考并結(jié)合實(shí)際項(xiàng)目,應(yīng)用VB語言編制程序,實(shí)現(xiàn)了分類房屋面積的批量自動(dòng)統(tǒng)計(jì)。

        2傳統(tǒng)手工統(tǒng)計(jì)方法

        傳統(tǒng)的手工處理方法一般是借助excel辦公軟件,將房屋預(yù)先編號(hào),逐間房屋分類輸入電子表格,然后計(jì)算,分類統(tǒng)計(jì),這樣一來,如果需要統(tǒng)計(jì)的房屋較多,工作量巨大,全部手工輸入很難保證其正確性,對(duì)于大范圍的城區(qū)改造,該種方法顯然不可行。

        3計(jì)算機(jī)程序自動(dòng)統(tǒng)計(jì)

        3.1開發(fā)工具介紹

        VBA是基于ActiveX技術(shù)的AutoCAD二次開發(fā)工具,可以通過ActiveX與AutoCAD進(jìn)行通信,并操縱AutoCAD的許多功能。它基于Visual Basic版本,是面向?qū)ο篌w系結(jié)構(gòu)的一種編程語言,有著與VB幾乎相同的開發(fā)環(huán)境和語法。VBA依附于主應(yīng)用程序AutoCAD,它與主程序的通信簡(jiǎn)單而高效,由于共享內(nèi)存空間,使它有更快的執(zhí)行速度,且其語法結(jié)構(gòu)簡(jiǎn)潔,深受廣大工程技術(shù)人員喜愛。

        3.2程序思路

        第一步,房屋分類歸入不同圖層,樓層數(shù)放入房屋中以備后續(xù)程序讀取。

        第二步,程序?qū)AD圖進(jìn)行預(yù)處理,如刪除房屋的多余節(jié)點(diǎn),判斷房屋內(nèi)樓層數(shù)的唯一性,如果樓層數(shù)不等于1(有兩個(gè)以上或者一個(gè)都沒有),程序終止,將房屋換顏色顯示,回手工處理階段。

        第三步,程序按圖層讀取房屋面積及樓層數(shù),按順序?qū)⒆x取的房屋編號(hào),將編號(hào)、面積、樓層數(shù)輸出至EXCEL表格,將編號(hào)及面積寫入相應(yīng)房屋中心位置己備查詢。

        第四步,程序自動(dòng)統(tǒng)計(jì)所有房屋的總面積輸出至EXCEL表格的匯總行,然后結(jié)束程序。

        3.3程序界面

        程序界面如圖l所示。

        3.4部分源代碼

        創(chuàng)造房屋選擇集部分

        On Error Resume Next

        Call ThisDrawing.SelectionSets("MyssFw").Delete

        On Error Resume Next

        Set MySelectFw=ThisDrawing.SelectionSets.Add("MyssFw")

        If Err Then

        Err.Clear

        Set MySelect Fw = This Drawing.SeleetionSets("MyssFw")

        End If

        Dim gpCode(0.To 1)As Integer,dataValue(0.To 1)As Variant

        gpCode(0)=0:dataValue(0)="LWPolyline"

        gpCode(1)=8:dataValue(1)=layer99

        MySelectFw.SelectOnScreen gpCode,dataValue選擇JMD房屋

        MySelectFw.Select acSelectionSetAll,,,gpCode,dataValue

        N=MvSelectFw.Count

        MJZn=0

        For I=0 To N-1

        Set PL=MySelectFw.Item(I)

        M=(UBound(PL.Coordinates)+1)/2

        ReDim pointsArray(0 To 3*(M-1)+2)AsDouble

        ReDim x(0 To M-1)As Double

        ReDim y(0 To M-1)As Double

        創(chuàng)建文字選擇集部分

        0n Error Resume Next

        Call ThisDrawing.SelectionSets("MyssTx").Delete

        On Error Resume Next

        Set MyselectTx=ThisDrawing.SelectionSets.Add("MyssTx")

        If Err Then

        Err.Clear

        Set MyselectTx =This Drawing.SelectionSets("MyssTx")

        End If

        輸出至Excel表格部分

        mySheet.Ceils(I+3,1).Value="合計(jì)"

        mySheet.Cells(I+3,2).Value="一層面積(磚混)"

        mySheet.Cells(I+3,3).Value="二層面積(磚混)"

        mySheet.Cells(I+3,4).Value="三層面積(磚混)"

        mySheet.Cells(I+3,5).Value="四層以上面積(磚混)"

        mySheet.Cells(I+3,6).Value="房屋總面積(磚混)"

        mySheet.Cells(I+3,11).Value="一層面積(磚木)"

        mySheet.Cells(I+3,12).Value="二層面積(磚木)"

        mySheet.Cells(I+3,13).Value="三層面積(磚木)"

        mySheet.Cells(I+3,14).Value="四層以上面積(磚木)"

        mySheet.Cells(I+3,15).Value="房屋總面積(磚木)"

        mySheet.Cells(I+3,21).Value="一層面積(簡(jiǎn)易)"

        mySheet.Cells(I+3,22).Value="二層面積(簡(jiǎn)易)"

        mySheet.Cells(I+3,23).Value="三層面積(簡(jiǎn)易)"

        mySheet.Cells(I+3,24).Value="四層以上面積(簡(jiǎn)易)"

        mySheet.Cells(I+3,25).Value="房屋總面積(簡(jiǎn)易)"

        mySheet.Cells(I+4,1).Value=N

        mySheet.Ceils(I+4,2).Value=ZHI

        mySheet.Cells(I+4,3).Value=ZH2

        mySheet.Cells(I+4,4).Value=ZH3

        mySheet.Ceils(I+4,5).Value=ZH4

        mySheet.Cells(I+4,6).Value=ZHZ

        mySheet.Ceils(I+4,11).Value=ZM1

        mySheet.Cells(I+4,12).Value=ZM2

        mySheet.Cells(I+4,13).Value=ZM3

        mySheet.Ceils(I+4,14).Value=ZM4

        mySheet.Cells(I+4,15).Value=ZMZ

        mySheet.Cells(I+4,21).Value=JY1

        mySheet.Cells(I+4,22).Value=Jf2

        mySheet.Cells(I+4,23).Value=JY3

        mySheet.Cells(I+4,24).Value=JY4

        mySheet.Cells(I+4,25).Value=UYZ

        3.5程序運(yùn)行前CAD截圖

        程序運(yùn)行前CAD截圖如圖2所示。

        3.6程序運(yùn)行后生成的Excel表格

        程序運(yùn)行后生成的Excel表格如圖3所示。

        4結(jié)語

        分類房屋面積統(tǒng)計(jì)程序基本實(shí)現(xiàn)了房屋面積的自動(dòng)統(tǒng)計(jì)累加,前期僅需少量的人工干預(yù)(僅將不同結(jié)構(gòu)或用途的房屋歸入不同的圖層即可),后續(xù)程序自動(dòng)讀取房屋面積與層數(shù),并自動(dòng)分算至各個(gè)樓層,方便快捷,省時(shí)省力。特別對(duì)于大面積的房屋面積統(tǒng)計(jì)尤能顯示其優(yōu)越性,譬如幾千甚至上萬個(gè)房屋,程序運(yùn)行僅幾秒鐘即可統(tǒng)計(jì)完畢,并且保證準(zhǔn)確可靠。由于筆者本身的學(xué)識(shí)和實(shí)踐經(jīng)驗(yàn)受限,程序在自動(dòng)糾錯(cuò)和速度方面仍有許多可以改進(jìn)提高的地方,筆者在今后的學(xué)習(xí)和工作中不斷將其完善。

        美国黄色片一区二区三区| 欧美丰满熟妇bbb久久久| 久久久久女人精品毛片| 一本色道久久综合亚洲精品小说| 婷婷精品国产亚洲av| 亚洲激情综合中文字幕| 亚洲 中文 欧美 日韩 在线| 成人免费ā片在线观看| 日本丰满少妇高潮呻吟| 久久麻传媒亚洲av国产| 18精品久久久无码午夜福利 | 中文字幕av人妻一区二区| 精品亚洲一区二区三区四区五| 国产av无码专区亚洲av中文| 久久成年片色大黄全免费网站 | 国产精品一区二区韩国av| 亚洲av精品一区二区三区| 国产精品一区二区 尿失禁| 日本人妻少妇精品视频专区| 性生大片免费观看性少妇| 无码aⅴ免费中文字幕久久| 国产一级二级三级在线观看视频| 丰满多毛的大隂户毛茸茸| 大香视频伊人精品75| 人妻少妇精品视频中文字幕国语| 美女很黄很色国产av| 国产真人性做爰久久网站| 91精品国产色综合久久不卡蜜| 精品一区2区3区4区| 韩国三级在线观看久| 艳妇乳肉豪妇荡乳av无码福利| 日韩精品有码在线视频| 国产高清在线视频一区二区三区| 天天躁日日躁狠狠很躁| 精品国产福利片在线观看| 亚洲国产一区二区三区在观看| 国内自拍偷国视频系列| 亚洲一区 日韩精品 中文字幕| 国内精品伊人久久久久av| 亚洲一区二区日韩精品| 青青草大香蕉视频在线观看|