• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于VBA技術(shù)的AutoCAD智能自動(dòng)評(píng)分系統(tǒng)的設(shè)計(jì)

    2023-03-11 01:30:34聊城大學(xué)機(jī)械與汽車(chē)工程學(xué)院廖瑞雪李凱龍許亞輝趙傳哲徐立鵬
    內(nèi)江科技 2023年2期
    關(guān)鍵詞:圖元圖紙程序

    ◇聊城大學(xué)機(jī)械與汽車(chē)工程學(xué)院 廖瑞雪 李凱龍 許亞輝 趙傳哲 徐立鵬

    自動(dòng)評(píng)分技術(shù)就是借助于計(jì)算機(jī)來(lái)輔助人工評(píng)分的一項(xiàng)技術(shù)。自動(dòng)評(píng)分系統(tǒng)可以幫助閱卷者快速、準(zhǔn)確、公平公正的評(píng)分,以達(dá)到減少人力、物力、財(cái)力的目的,因此需要設(shè)計(jì)一種可自動(dòng)評(píng)分的系統(tǒng),以便減輕教師的工作量。該系統(tǒng)以VBA為開(kāi)發(fā)語(yǔ)言,通過(guò)對(duì)AutoCAD的二次開(kāi)發(fā),具備讀取標(biāo)準(zhǔn)圖紙,輸入評(píng)分標(biāo)準(zhǔn),自動(dòng)評(píng)卷,統(tǒng)計(jì)成績(jī)以及成績(jī)管理功能。

    1 引言

    工程圖學(xué)是工科類(lèi)學(xué)生必修的一門(mén)技術(shù)基礎(chǔ)課,在工程圖學(xué)的考試中一直沿用教師手動(dòng)閱卷、成績(jī)統(tǒng)計(jì),在這種考察模式下教師需要付出大量的時(shí)間和精力[1]。目前,在針對(duì)填空、選擇、判斷等客觀題型的CAD系統(tǒng)中,自動(dòng)測(cè)評(píng)技術(shù)已經(jīng)相當(dāng)完善,如判斷題只需將考生所選的內(nèi)容與正確答案進(jìn)行匹配對(duì)比即可,填空中文字錄入內(nèi)容的評(píng)判則可通過(guò)在一定字?jǐn)?shù)范圍內(nèi)從某一個(gè)字開(kāi)始進(jìn)行精準(zhǔn)對(duì)比來(lái)實(shí)現(xiàn)[2]。相對(duì)于客觀題型的考試,AutoCAD課程的測(cè)評(píng)的目的則在于考查學(xué)生操作的熟練程度正確性和熟練性,所以題目類(lèi)型多是圖形的繪制、尺寸的標(biāo)注、圖形的編輯、塊類(lèi)型的標(biāo)注等主觀題[3]。在AutoCAD自動(dòng)評(píng)分系統(tǒng)中對(duì)于圖元數(shù)據(jù)的提取和屬性的表達(dá)以及自動(dòng)測(cè)評(píng)功能是該系統(tǒng)開(kāi)發(fā)的核心所在。

    2 智能評(píng)分的實(shí)現(xiàn)原理

    VBA是Visual Basic for Application的簡(jiǎn)寫(xiě),它是基于Visual Basic發(fā)展而來(lái)的,它寄生于AutoCAD模塊中,它不但繼承了VB的開(kāi)發(fā)機(jī)制,而且還具有與VB相似的語(yǔ)言結(jié)構(gòu)[4]。AutoCADVBA提供了訪問(wèn)AutoCAD文檔的接口,在AutoCAD繪圖過(guò)程中,每一個(gè)圖元的繪制和格式的設(shè)置均作為不同對(duì)象的屬性保存在文檔中。在自動(dòng)評(píng)分系統(tǒng)中只需要讀取每個(gè)學(xué)生的圖紙中圖元的屬性與標(biāo)準(zhǔn)圖對(duì)比即可得出成績(jī),并利用Excel打印出成績(jī)。

    3 智能評(píng)分的實(shí)現(xiàn)過(guò)程

    3.1 標(biāo)準(zhǔn)圖紙的輸入設(shè)計(jì)

    利用選擇集對(duì)標(biāo)準(zhǔn)圖紙的讀取,讀取方式采用手動(dòng)選取需要評(píng)分的圖元并輸入對(duì)應(yīng)的分?jǐn)?shù),見(jiàn)圖1。

    圖1 建立標(biāo)準(zhǔn)圖形數(shù)據(jù)庫(kù)流程圖

    (1)選擇集的初始化與建立。刪除圖紙中可能包含的選擇集,以免影響新的選擇集的建立。初始化程序如下:

    (2)圓屬性的讀取實(shí)例。判斷選擇的圖元是否為圓,然后再讀取標(biāo)準(zhǔn)圖紙中圓的圓心坐標(biāo)、半徑、線寬、顏色等參數(shù),并把得到的屬性參數(shù)進(jìn)行儲(chǔ)存,程序如下:

    其它圖元屬性的讀取也是可以借鑒以上圖元屬性讀取的方法進(jìn)行,最主要的是知道每個(gè)圖元在VBA中的表示方法才能判斷是否為所需要的圖元,再根據(jù)每個(gè)圖元的特點(diǎn)提取圖元屬性,并儲(chǔ)存起來(lái),以便于需要評(píng)分的圖紙進(jìn)行對(duì)比,圖元的表示方法主要參考VBA中對(duì)象模型庫(kù)[5],見(jiàn)圖2。

    圖2 CAD對(duì)象模型庫(kù)

    (3)標(biāo)準(zhǔn)圖紙分?jǐn)?shù)的輸入。標(biāo)準(zhǔn)圖紙的分?jǐn)?shù)的輸入,應(yīng)該在圖元屬性的讀取后進(jìn)行,同一個(gè)圖元的分?jǐn)?shù)與屬性的讀取應(yīng)該在同一個(gè)過(guò)程中進(jìn)行,以便一一對(duì)應(yīng)。對(duì)于圖元分?jǐn)?shù)的輸入首先需要判斷圖元再輸入分?jǐn)?shù),分輸入的輸入可以采用InputBox函數(shù)進(jìn)行。以直線圖元的分?jǐn)?shù)輸入為例進(jìn)行說(shuō)明:

    ElseIf StrComp(objEntity(0).EntityName,"AcDbline",vbTextCompare)=0 Then

    ScoreL(a)=InputBox("請(qǐng)輸入該圖元的分?jǐn)?shù)(默認(rèn)每個(gè)1分):","標(biāo)準(zhǔn)評(píng)分標(biāo)準(zhǔn)的輸入:",1)

    a=a+1

    3.2 評(píng)分圖紙的評(píng)分系統(tǒng)設(shè)計(jì)

    (1)新圖紙的打開(kāi)與關(guān)閉。在對(duì)需要評(píng)分的圖紙?jiān)u分時(shí),首先需要打開(kāi)新的圖紙,并在評(píng)完分?jǐn)?shù)后關(guān)閉該圖紙。以下以打開(kāi)“學(xué)生A”的圖紙為例,程序如下:

    在該程序中首先打開(kāi)新圖紙,新圖紙應(yīng)該放在指定的文件夾中,才能被讀取,打開(kāi)新圖紙后調(diào)用評(píng)分程序進(jìn)行評(píng)分并得出最后分?jǐn)?shù)儲(chǔ)存在數(shù)組Score(m)中,以便在最后以Excel輸出是讀取該圖紙的分?jǐn)?shù)。在得到該圖紙分后,圖紙需要關(guān)閉,以減少電腦的卡頓,關(guān)閉程序?yàn)門(mén)hisDrawing.Close,但值得注意的是關(guān)閉程序一定在另一個(gè)新圖紙打開(kāi)前,否則可能造成下一個(gè)新圖紙的評(píng)分為0或者出現(xiàn)錯(cuò)誤導(dǎo)致程序無(wú)法進(jìn)行。

    (2)對(duì)新圖紙進(jìn)行遍歷評(píng)分。第一步對(duì)新圖紙進(jìn)行遍歷取出該圖紙中的全部圖元[6],第二步對(duì)所有圖元按類(lèi)進(jìn)行篩選,如在所有圖元中篩選出圓這個(gè)圖元,在對(duì)所有圓與前邊標(biāo)準(zhǔn)圖中所取出的標(biāo)準(zhǔn)圓進(jìn)行對(duì)比評(píng)分,最終得出分?jǐn)?shù),見(jiàn)圖3。

    圖3 CAD圖形判別流程圖

    (3)對(duì)圓圖元進(jìn)行評(píng)分。在上一步中對(duì)圖紙進(jìn)行遍歷時(shí),已經(jīng)提取了圖紙中所有圖元的屬性,所以在該過(guò)程中只需要調(diào)出圓圖元的屬性并與標(biāo)準(zhǔn)圖對(duì)比即可,調(diào)取該圖元的圓心、半徑徑等進(jìn)行評(píng)分。

    在該程序中首先判斷哪個(gè)圖元是圓,使用程序StrComp(objEntity.EntityName,"AcDbcircle",vbTextCompare)=0,再用ptCen=objEntity.Center提取圓的圓心坐標(biāo),并儲(chǔ)存在數(shù)組ptCen中,用radius=objEntity.radius提取圓的半徑,并儲(chǔ)存在radius中,下面對(duì)該圖元屬性與標(biāo)準(zhǔn)圖元屬性進(jìn)行對(duì)比得出正誤,對(duì)比程序?yàn)閜tCen(0)=P1(d) And ptCen(1)=P2(d) And radius=r(d),再利用IF函數(shù)進(jìn)行對(duì)比,值得注意的是,在對(duì)比過(guò)程中一定保證數(shù)組的對(duì)應(yīng),判斷出正誤后,對(duì)分?jǐn)?shù)進(jìn)行讀取ScoreC(s),與原分?jǐn)?shù)相加,得出最后分?jǐn)?shù)。

    (4)對(duì)其他圖元進(jìn)行評(píng)分。在對(duì)其他圖元的評(píng)分時(shí),需要知道該圖元的一些屬性,該屬性也可以在VBA中的本地窗口中看到,便于對(duì)圖元屬性的確定和程序的調(diào)試。

    3.3 成績(jī)的輸出設(shè)計(jì)

    (1)學(xué)生信息的采集。本系統(tǒng)最終分?jǐn)?shù)以Excel表格的形式輸出。該系統(tǒng)需要學(xué)生把做好的圖紙放在指定的文件夾中,讀取“2021級(jí)車(chē)輛工程3班”該文件下的所有后綴為.dwg的圖紙,并讀取圖紙名稱(chēng),程序如下:

    該程序把讀取的圖紙名稱(chēng)放在輸入j2(j1)中以遍輸入excel中。

    (2)分?jǐn)?shù)的輸入。把前期得到的學(xué)生分?jǐn)?shù),以Excel形式輸出,見(jiàn)圖4。

    圖4 評(píng)分結(jié)果對(duì)比

    4 結(jié)束語(yǔ)

    本課題設(shè)計(jì)一種AutoCAD的自動(dòng)評(píng)分系統(tǒng),并利用VBA和EXCEL進(jìn)行設(shè)計(jì),可進(jìn)行標(biāo)準(zhǔn)圖紙的讀取,分?jǐn)?shù)的輸入,自動(dòng)測(cè)評(píng),輸出分?jǐn)?shù)等功能。本課題在對(duì)評(píng)分系統(tǒng)的設(shè)計(jì)中,對(duì)于標(biāo)準(zhǔn)圖紙的輸入采用單個(gè)圖元的手動(dòng)輸入和單個(gè)圖元的分?jǐn)?shù)輸入,這樣可以做到根據(jù)圖元的重要性進(jìn)行評(píng)分,得到的評(píng)分結(jié)果更加具代表性。同時(shí),已經(jīng)對(duì)評(píng)分系統(tǒng)的開(kāi)發(fā)過(guò)程進(jìn)行了完整設(shè)計(jì)。該系統(tǒng)已經(jīng)具備了基礎(chǔ)圖紙的完整評(píng)分,有一定的實(shí)用價(jià)值,在一定程度上彌補(bǔ)了國(guó)內(nèi)高校對(duì)工程圖自動(dòng)評(píng)分系統(tǒng)需求的不足。

    猜你喜歡
    圖元圖紙程序
    一種組態(tài)控件技術(shù)在電力監(jiān)控系統(tǒng)中的運(yùn)用
    學(xué)術(shù)出版物插圖的編排要求(一):圖注
    聯(lián)鎖表自動(dòng)生成軟件的設(shè)計(jì)與實(shí)現(xiàn)
    淺談汽車(chē)線束產(chǎn)品圖紙管理
    看圖紙
    試論我國(guó)未決羈押程序的立法完善
    “程序猿”的生活什么樣
    英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
    基于Qt繪圖系統(tǒng)的圖形應(yīng)用優(yōu)化研究與實(shí)現(xiàn)
    軟件(2016年12期)2016-02-13 05:58:14
    創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
    贺州市| 东光县| 博乐市| 九江市| 玛纳斯县| 综艺| 宁波市| 阳春市| 双鸭山市| 长汀县| 吴江市| 木里| 大关县| 丹东市| 赣榆县| 井研县| 永吉县| 定安县| 康定县| 保康县| 安多县| 安徽省| 达州市| 鄱阳县| 洪江市| 济源市| 麻城市| 胶州市| 苏尼特右旗| 白玉县| 韩城市| 阿拉善右旗| 佛冈县| 怀柔区| 荔波县| 道真| 普格县| 建始县| 浮山县| 南陵县| 常州市|