唐蜜 戴蕾 岳元旺
摘要:燃?xì)夤芫W(wǎng)矢量化繪圖插件技術(shù)研究與實(shí)現(xiàn),提出了一套基于AutoCAD軟件進(jìn)行燃?xì)夤芫W(wǎng)矢量化工藝中圖形繪制的插件技術(shù)開(kāi)發(fā)方法,指出了一個(gè)全面采用統(tǒng)一軟件過(guò)程實(shí)施軟件項(xiàng)目的研究方向,采用RUP的規(guī)范進(jìn)行項(xiàng)目管理、運(yùn)用UML進(jìn)行業(yè)務(wù)和系統(tǒng)的建模與設(shè)計(jì),并用面向?qū)ο蟮乃枷脒M(jìn)行編碼和設(shè)計(jì)。通過(guò)多個(gè)實(shí)際項(xiàng)目的應(yīng)用表明:采用本文提供的插件開(kāi)發(fā)技術(shù)和設(shè)計(jì)思路,研發(fā)的矢量化繪圖軟件系統(tǒng),能很好地滿足燃?xì)忸I(lǐng)域?qū)芫W(wǎng)GIS的數(shù)據(jù)管理需求、提高項(xiàng)目實(shí)施效率、降低項(xiàng)目實(shí)施成本。
關(guān)鍵詞:GIS;矢量化;插件技術(shù);燃?xì)夤芫W(wǎng);統(tǒng)一軟件過(guò)程;UML;面向?qū)ο螅粫r(shí)序圖
中圖分類號(hào):TP399 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)05-1108-07
Gas Pipe Network GIS Vector Drawing Based on AutoCAD Plug-in Technology Research
TANG Mi, DAI Lei,YUE Yuan-wang
(School of Science Eng. AND Info.,South West Petroleum Univ.,Chengdu 610065,China)
Abstract: Research and Implementation of the gas pipe network GIS vector drawing based on AutoCAD plug-in technology, proposed a new set of plug-ins based on AutoCAD software vectorization process gas network graphing technology development, pointed out that a comprehensive implementation of the unified software processthe research direction of the software project, the RUP norms for project management, the use of UML for business modeling and system design, detailed design and coding using object-oriented technology. This article provides a plug-in development technology and design ideas, vector drawing software R & D system, to meet the data management needs of the gas field pipe network GIS, shorten the project cycle vectorization show that the application of a number of practical projects:The implementation of the project, reduce costs.
Key words: GIS; vectorization; plug-in technology; gas pipeline network; unified Process; the UML; object-oriented; timing diagram
矢量化,是將紙質(zhì)設(shè)計(jì)圖轉(zhuǎn)化成電子格式、并對(duì)其處理的過(guò)程,其在計(jì)算機(jī)顯示出的圖形為矢量圖。矢量圖為一系列由點(diǎn)、線、多邊形和弧線等組成的圖形,可通過(guò)計(jì)算機(jī)指令來(lái)描述和記錄。此外,矢量圖具有存儲(chǔ)量小,易于編輯,易進(jìn)行放大或壓縮處理等優(yōu)點(diǎn),因此常用于計(jì)算機(jī)的輔助設(shè)計(jì)中。常見(jiàn)的矢量圖處理軟件有CoreDRAW、AutoCAD、FreeHand等。
燃?xì)夤芫W(wǎng)矢量化,是將燃?xì)夤芫W(wǎng)的相關(guān)地圖、管線、管件等資料,經(jīng)過(guò)計(jì)算機(jī)圖形或者圖像系統(tǒng)光—電轉(zhuǎn)換,量化為點(diǎn)陣數(shù)字圖像,再經(jīng)圖像處理和曲線矢量化,生成可顯示的地理信息系統(tǒng)地圖數(shù)據(jù)文件,并對(duì)文件可以進(jìn)行計(jì)算、修改、漫游、標(biāo)注、管理和打印的處理功能。
初期設(shè)計(jì)的燃?xì)夤芫W(wǎng)常用的開(kāi)發(fā)方案有三種:一、在大型的GIS平臺(tái)上進(jìn)行開(kāi)發(fā),其優(yōu)點(diǎn)是地圖信息的顯示和地理信息的共享等處理非常方便,但由于對(duì)城市的地理信息系統(tǒng)依賴較高,沒(méi)法獨(dú)立實(shí)施;二、 基于底層開(kāi)發(fā),缺點(diǎn)是開(kāi)發(fā)成本高,工作量大,且開(kāi)發(fā)出來(lái)的性能也不及GIS系統(tǒng);三、采用AutoCAD繪圖軟件進(jìn)行開(kāi)發(fā),雖然AutoCAD只提供的圖形數(shù)據(jù)管理等有限功能,但可以在其基礎(chǔ)上開(kāi)發(fā)一套合適的軟件,這不僅可以減少開(kāi)發(fā)成本,而且對(duì)城市的地理信息系統(tǒng)沒(méi)有依賴性,可離網(wǎng)獨(dú)立實(shí)施。在對(duì)三種進(jìn)行對(duì)比分析后,采用第三種開(kāi)發(fā)方式。
1 總體設(shè)計(jì)方案簡(jiǎn)述
燃?xì)夤芫W(wǎng)矢量化整個(gè)實(shí)施過(guò)程包含管網(wǎng)繪制、圖形處理、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)檢驗(yàn)等環(huán)節(jié),上一環(huán)節(jié)的結(jié)果是下一個(gè)的數(shù)據(jù)來(lái)源,在每完成一次管網(wǎng)的繪制和圖形處理環(huán)節(jié),都將按照已制定的業(yè)務(wù)規(guī)則和質(zhì)量標(biāo)準(zhǔn),對(duì)該階段成果進(jìn)行檢驗(yàn),達(dá)到數(shù)據(jù)質(zhì)量管理標(biāo)準(zhǔn)方能進(jìn)入下一個(gè)處理環(huán)節(jié),若經(jīng)數(shù)據(jù)檢驗(yàn)未達(dá)標(biāo),則返還數(shù)據(jù)進(jìn)行修正,直至合格,同時(shí)記錄返還次數(shù),著重標(biāo)出返還次數(shù)多的數(shù)據(jù),在統(tǒng)計(jì)查詢模塊中有按返回次數(shù)排序功能,以便于提示。
本文中的燃?xì)夤芫W(wǎng)GIS矢量化繪圖軟件, 其主要功能為實(shí)現(xiàn)管件、管線、閥門、調(diào)壓設(shè)施等管網(wǎng)設(shè)施的數(shù)據(jù)管理和圖形繪制,存儲(chǔ)方式為圖形或關(guān)系數(shù)據(jù)庫(kù)。
由于專業(yè)的大型GIS系統(tǒng)和單一的矢量化繪圖軟件的開(kāi)發(fā)成本高、周期長(zhǎng)并且常無(wú)法離網(wǎng)實(shí)施,所以在AutoCAD矢量化繪圖軟件上,開(kāi)發(fā)同時(shí)滿足燃?xì)夤芫W(wǎng)矢量化數(shù)據(jù)存儲(chǔ)需求和能提高工程實(shí)施的實(shí)施效率和降低成本效用的全新的矢量化繪圖插件。具體做法如下,采用兩套數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)行圖-數(shù)關(guān)聯(lián)存儲(chǔ)信息的保存:用文件數(shù)據(jù)庫(kù)SQLite存儲(chǔ)管網(wǎng)設(shè)施業(yè)務(wù)數(shù)據(jù),用AutoCAD矢量化文件中的dwg存儲(chǔ)圖形數(shù)據(jù),另在圖形數(shù)據(jù)庫(kù)中用圖形元素對(duì)應(yīng)的屬性數(shù)據(jù)庫(kù)表的主鍵來(lái)對(duì)應(yīng)圖-數(shù)之間的關(guān)系,將矢量化信息與業(yè)務(wù)屬性聯(lián)系起來(lái)。
燃?xì)夤芫W(wǎng)GIS矢量化繪圖插件,在概述中提到的開(kāi)發(fā)方法的基礎(chǔ)上,該文采用了COM(組件對(duì)象模型)和數(shù)據(jù)庫(kù)技術(shù)對(duì)系統(tǒng)進(jìn)行了開(kāi)發(fā),采用面向?qū)ο蠹夹g(shù)進(jìn)行軟件系統(tǒng)的分析、設(shè)計(jì),采納統(tǒng)一軟件過(guò)程(RUP)的規(guī)范來(lái)組織軟件項(xiàng)目的開(kāi)發(fā)實(shí)施,運(yùn)用UML進(jìn)行軟件系統(tǒng)的需求分析、業(yè)務(wù)建模、邏輯設(shè)計(jì)。編碼的語(yǔ)言為Microsoft 的C#語(yǔ)言,CAD開(kāi)發(fā)驅(qū)動(dòng)和圖形GIS算法基礎(chǔ)庫(kù)為Autodesk開(kāi)發(fā)包,并基于AtuoCAD2010版本進(jìn)行設(shè)計(jì)和開(kāi)發(fā)。
2 系統(tǒng)框架設(shè)計(jì)
2.1 核心類設(shè)計(jì)
遵照系統(tǒng)架構(gòu)設(shè)計(jì)的分層設(shè)計(jì)要求,結(jié)合面向?qū)ο笙到y(tǒng)設(shè)計(jì)的指導(dǎo)原則,燃?xì)夤芫W(wǎng)GIS矢量化繪圖插件的內(nèi)部核心對(duì)象分交互界面層、應(yīng)用算法層、實(shí)體對(duì)象層和驅(qū)動(dòng)層共4個(gè)層次進(jìn)行類設(shè)計(jì)。
交互界面層,按照用戶操作和外部交互的要求抽象出CommandEntry、frmProject、frmPipe、frmPipeRiser、frmPipeFitting、frmBooster、frmGauge、frmValve、frmStation等主要交互類,實(shí)現(xiàn)AutoCAD命令解析與響應(yīng),提供工程、管線、管件、立管、閥門、計(jì)量設(shè)備、調(diào)壓設(shè)施等管網(wǎng)設(shè)施的屬性操作界面。
應(yīng)用算法層,按照燃?xì)夤芫W(wǎng)設(shè)施圖形處理、屬性讀寫應(yīng)用算法的要求抽象出ProjectManager、FileManager、LayerManager、LayerConfig、SpatialOperator、AttributeRule、GISRule等核心算法類,實(shí)現(xiàn)對(duì)文件管理、工程管理、CAD圖層配置與管理、屬性規(guī)則檢查、圖形規(guī)則檢查等核心算法的封裝。
實(shí)體對(duì)象層,按照燃?xì)夤芫W(wǎng)設(shè)施圖形、屬性信息的存儲(chǔ)要求抽象出DBProject、DBPipe、DBPipeFit、DBBooster、DBValve、DBGauge等主要屬性類,以及GISPoint、GISLine、GISPolyLine、GeometryMediator等主要圖形類,實(shí)現(xiàn)對(duì)圖形、屬性的存取、數(shù)據(jù)校驗(yàn)等業(yè)務(wù)實(shí)體數(shù)據(jù)及功能的封裝。
驅(qū)動(dòng)層,按照插件與外部的軟件系統(tǒng)、驅(qū)動(dòng)程序、數(shù)據(jù)庫(kù)和文件的交互要求抽象出DBSQLite、ImgFile、LogFile、Geometry、CADDriver等驅(qū)動(dòng)接口類,實(shí)現(xiàn)對(duì)SQLite數(shù)據(jù)庫(kù)、圖像文件、工程管理日志、GIS基礎(chǔ)算法庫(kù)、AutoCAD軟件的接口封裝。
燃?xì)夤芫W(wǎng)GIS矢量化繪圖插件的類設(shè)計(jì)總圖如圖1所示。
2.2 體系架構(gòu)設(shè)計(jì)
燃?xì)夤芫W(wǎng)GIS矢量化繪圖插件,其分層架構(gòu)設(shè)計(jì)在邏輯上劃分為交互界面層、應(yīng)用算法層、實(shí)體對(duì)象層和驅(qū)動(dòng)層4個(gè)層次。交互界面層,是用戶對(duì)燃?xì)夤芫W(wǎng)設(shè)施進(jìn)行繪制操作的界面及所有AutoCAD命令解析和功能接口。應(yīng)用算法層封裝所有的燃?xì)恻c(diǎn)、線、面設(shè)施的圖形和屬性的關(guān)聯(lián)存儲(chǔ)和加載顯示算法,不僅可接收來(lái)自交互界面層的操作請(qǐng)求,還可組合調(diào)用實(shí)體對(duì)象層中各實(shí)體類的public方法,構(gòu)造出一個(gè)個(gè)復(fù)雜的應(yīng)用算法。實(shí)體對(duì)象層,分為圖形對(duì)象和屬性對(duì)象,包含有燃?xì)夤芫W(wǎng)中各個(gè)具體的點(diǎn)、線、面設(shè)施,屬性對(duì)象封裝管網(wǎng)設(shè)施的業(yè)務(wù)信息,對(duì)應(yīng)SQLite屬性數(shù)據(jù)庫(kù),包括工程、管件、管線、立管、閥門、調(diào)壓設(shè)施、計(jì)量設(shè)備等;圖形對(duì)象封裝管網(wǎng)設(shè)施的GIS信息,對(duì)應(yīng)AutoCAD的dwg文件,包括點(diǎn)、線、面等圖形元素。驅(qū)動(dòng)層包括對(duì)SQLite數(shù)據(jù)庫(kù)操作訪問(wèn)的封裝、外部文件、GIS基礎(chǔ)算法庫(kù)接口的封裝和AutoCAD二次開(kāi)發(fā)接口的封裝,為應(yīng)用算法層、實(shí)體對(duì)象層提供數(shù)據(jù)庫(kù)操作、圖形計(jì)算、CAD命令響應(yīng)和操作控制的接口,完成矢量化繪圖插件與所有外部的軟件系統(tǒng)、驅(qū)動(dòng)程序、數(shù)據(jù)庫(kù)和文件等交互的統(tǒng)一管理。
燃?xì)夤芫W(wǎng)GIS矢量化繪圖插件的體系架構(gòu)設(shè)計(jì)如圖2所示。
圖2 燃?xì)夤芫W(wǎng)GIS矢量化繪圖插件的體系架構(gòu)
3 系統(tǒng)交互設(shè)計(jì)
燃?xì)夤芫W(wǎng)GIS矢量化繪圖插件的主要業(yè)務(wù)流程包括加載矢量化工程,繪制管件、管線、立管、閥門、調(diào)壓設(shè)施、計(jì)量設(shè)備,以及檢查管網(wǎng)設(shè)施屬性、工藝關(guān)系、幾何圖形等。根據(jù)統(tǒng)一軟件過(guò)程的面向?qū)ο笤O(shè)計(jì)思路,采用細(xì)化業(yè)務(wù)流程中各業(yè)務(wù)對(duì)象之間的交互來(lái)設(shè)計(jì)對(duì)象的方法和數(shù)據(jù),由此完成類的詳細(xì)設(shè)計(jì)。列舉其中典型的加載矢量化工程、打斷管線、管網(wǎng)設(shè)施屬性檢查、管網(wǎng)拓?fù)潢P(guān)系檢查4個(gè)業(yè)務(wù)流程的交互設(shè)計(jì)。
3.1 加載矢量化工程交互設(shè)計(jì)
加載矢量化工程的過(guò)程為,用戶在AutoCAD軟件的命令行輸入工程加載命令,插件提示用戶選擇將要加載的工程文件,用戶選擇文件后再點(diǎn)擊確定按鈕;矢量化插件打開(kāi)用戶指定的工程文件,首先加載屬性數(shù)據(jù)庫(kù)SQLite文件,再讀取對(duì)應(yīng)的dwg文件到內(nèi)存中,遍歷dwg文件中的矢量化GIS元素,調(diào)用CAD驅(qū)動(dòng)程序和GIS基礎(chǔ)算法庫(kù),依次裝載圖形元素和屬性元素;最后根據(jù)矢量化工程的坐標(biāo),在相應(yīng)的坐標(biāo)區(qū)域顯示加載的工程。
加載矢量化工程的業(yè)務(wù)流程涉及CommandEntry、FileManager、DBProject、LiteDBOperation、LayerManager、CADDriver等對(duì)象。
加載矢量化工程的交互過(guò)程設(shè)計(jì)如圖3所示。
圖3 加載矢量化工程的交互過(guò)程
3.2 打斷管線交互設(shè)計(jì)
對(duì)打斷管線的處理為,用戶在AutoCAD軟件操作界面中,點(diǎn)擊工具欄上的“打斷管線”按鈕,然后選擇需被打斷的管線;插件將復(fù)制所選管線的圖形元素和屬性元素,從點(diǎn)設(shè)施所在坐標(biāo)重新計(jì)算打斷后兩段管線的長(zhǎng)度,并分別設(shè)置兩段管線的長(zhǎng)度;管道打斷操作結(jié)束后,插件將操作區(qū)域自動(dòng)平移到管道被打斷處,并顯示操作結(jié)果。
打斷管線的業(yè)務(wù)流程涉及CommandEntry、GeometryMediator、DBDevice、LiteDBOperation、CADDriver等對(duì)象。
打斷管線的交互過(guò)程如圖4所示。
圖4 打斷管線的交互過(guò)程
3.3 管網(wǎng)設(shè)施屬性檢查交互設(shè)計(jì)
管網(wǎng)設(shè)施屬性檢查的處理為,通過(guò)用戶對(duì)AutoCAD軟件操作界面中的工具欄上的“屬性檢查”按鈕的點(diǎn)擊,使插件自動(dòng)遍歷當(dāng)前矢量化工程的所有圖形元素,并加載對(duì)應(yīng)的附屬屬性,對(duì)管件、立管、管線、閥門、計(jì)量設(shè)備、調(diào)壓設(shè)施等逐一進(jìn)行屬性數(shù)據(jù)的合法性、一致性和有效性檢查;檢查過(guò)程中自動(dòng)記錄錯(cuò)誤信息;屬性檢查結(jié)束時(shí),插件提示檢查結(jié)果,并在矢量化圖上標(biāo)識(shí)出檢查到的錯(cuò)誤數(shù)據(jù),提示用戶進(jìn)行錯(cuò)誤數(shù)據(jù)修改。
管網(wǎng)設(shè)施屬性檢查的業(yè)務(wù)流程涉及LiteDBOperation、CommandEntry、LayerManager、GeometryMediator、AttributeRule等對(duì)象。
管網(wǎng)設(shè)施屬性檢查的交互過(guò)程如圖5所示。
圖5 管網(wǎng)設(shè)施屬性檢查的交互過(guò)程
3.4 管網(wǎng)拓?fù)潢P(guān)系檢查交互設(shè)計(jì)
管網(wǎng)拓?fù)潢P(guān)系檢查的處理過(guò)程為,用戶在AutoCAD軟件操作界面中,點(diǎn)擊工具欄上的“拓?fù)潢P(guān)系檢查”按鈕,插件自動(dòng)遍歷當(dāng)前矢量化工程的所有圖形元素,對(duì)點(diǎn)、線、面等圖形元素逐一進(jìn)行燃?xì)夤芫W(wǎng)拓?fù)涔に囮P(guān)系檢查,包括孤立點(diǎn)、孤立線、點(diǎn)重疊、線重疊、面重疊、線自相交、線同平面相交等情況;檢查過(guò)程中自動(dòng)記錄錯(cuò)誤信息;管網(wǎng)拓?fù)潢P(guān)系檢查結(jié)束時(shí),插件提示檢查結(jié)果,并在矢量化圖上標(biāo)識(shí)出檢查到的錯(cuò)誤數(shù)據(jù),提示用戶進(jìn)行錯(cuò)誤數(shù)據(jù)修改。
管網(wǎng)拓?fù)潢P(guān)系檢查的業(yè)務(wù)流程涉及CommandEntry、LayerManager、GISRule、GeometryMediator、Geometry等對(duì)象。
管網(wǎng)拓?fù)潢P(guān)系檢查檢查的交互過(guò)程設(shè)計(jì)如圖6所示。
4 系統(tǒng)核心算法源碼
燃?xì)夤芫W(wǎng)GIS矢量化繪圖插件,涉及AutoCAD接口技術(shù)、數(shù)據(jù)庫(kù)技術(shù)、圖形處理算法、業(yè)務(wù)規(guī)則引擎等大量復(fù)雜的核心技術(shù)。列舉其中幾處典型的代碼片段。
4.1 刪除AutoCAD中指定圖層
public static void EreaseLayer(string layername)
{
Document doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
DocumentLock locker = doc.LockDocument();
using (Transaction tm = doc.Database.TransactionManager.StartTransaction())
{
ObjectId idModel = SymbolUtilityServices.GetBlockModelSpaceId(doc.Database);
BlockTableRecord btr=tm.GetObject(idModel, OpenMode.ForWrite) as BlockTableRecord;
foreach (ObjectId oid in btr)
{
DBObject ob=tm.GetObject(oid, OpenMode.ForWrite);
if (ob == null) continue;
Entity ent = ob as Entity;
if (ent == null) continue;
if (ent.Layer.Equals(layername))
{
ent.Erase();
}}
tm.Commit();
}
locker.Dispose();
}
4.2 判斷點(diǎn)是否在線上
public static bool IsPointInLine(Point3d pos, Line line)
{
Point3d spos = line.StartPoint;
Point3d epos = line.EndPoint;
Vector3d v1 = substract(pos, spos);
Vector3d v2 = substract(epos, spos);
Vector3d d = v1.CrossProduct(v2);
Vector3d zeroV = new Vector3d(0, 0, 0);
if (vectorEqual(d,zeroV))
{
double minx = Math.Min(spos.X, epos.X);
double maxx = Math.Max(spos.X, epos.X);
double miny = Math.Min(spos.Y, epos.Y);
double maxy = Math.Max(spos.Y, epos.Y);
if (greatandeqthan(pos.X,minx)&&littleandeqthan(pos.X,maxx)&&greatandeqthan(pos.Y,miny)&&littleandeqthan(pos.Y,maxy))
return true;
}
return false;
}
5 結(jié)束語(yǔ)
相對(duì)于其他的燃?xì)庑袠I(yè)管網(wǎng)GIS矢量化工程,該文闡述了一種矢量化繪圖插件開(kāi)發(fā)技術(shù),其中采用面向?qū)ο蟮乃枷脒M(jìn)行架構(gòu)設(shè)計(jì)、詳細(xì)設(shè)計(jì)和編碼,開(kāi)發(fā)出了運(yùn)行效率不錯(cuò)、成本適中、操作便捷的燃?xì)夤芫W(wǎng)矢量化繪圖插件。該文闡述的技術(shù)方案不僅對(duì)燃?xì)夤芫W(wǎng)矢量化軟件系統(tǒng)的開(kāi)發(fā)與實(shí)施一定的借鑒作用,對(duì)GIS領(lǐng)域其他應(yīng)用軟件的分析與設(shè)計(jì)都有部分參考價(jià)值。
參考文獻(xiàn):
[1] 雅各布森,布謝,朗博.統(tǒng)一軟件開(kāi)發(fā)過(guò)程[M].周伯生,等,譯.北京:機(jī)械工業(yè)出版社,2002.
[2] 克魯森.Rational 統(tǒng)一過(guò)程實(shí)踐者指南——軟件工程系列[M].徐正生,陳逸,鄧啟威,譯.北京:中國(guó)電力出版社,2004.
[3] ??怂?軟件工程設(shè)計(jì)導(dǎo)論:過(guò)程、原理與模式(UML2.0版)[M].韓毅,羅穎,譯.北京:清華大學(xué)出版社,2007.
[4] 布謝.面向?qū)ο蠓治雠c設(shè)計(jì)[M].2版.馮博琴,等,譯.北京:機(jī)械工業(yè)出版社,2003.
[5] Alfred V Aho, Monica S Lam.編譯原理[M].2版.北京:機(jī)械工業(yè)出版社,2012.
[6] 湯國(guó)安,趙牡丹.地理信息系統(tǒng)[M].北京:科學(xué)出版社,2000.
[7] 苗小莉.城市空間數(shù)據(jù)生產(chǎn)質(zhì)量控制[A].數(shù)字城市的理論與實(shí)踐[C].世界圖書出版公司,2001.
[8] 內(nèi)格爾,埃夫琴.C#高級(jí)編程[M].7版.李銘,譯.北京:清華大學(xué)出版社,2010.
[9] 岳元旺.城市燃?xì)夤芫W(wǎng)矢量化技術(shù)方案研究[J].制造業(yè)自動(dòng)化,2013,35(3).
[10] 田丹丹.基于AutoCAD的燃?xì)夤芫W(wǎng)GIS矢量化拼接插件技術(shù)研究與實(shí)現(xiàn)[J].制造業(yè)自動(dòng)化,2013, 35(7).