本發(fā)明涉及計(jì)算機(jī)軟件技術(shù)領(lǐng)域,尤其涉及一種基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng)。
背景技術(shù):
現(xiàn)有的繪制CAD圖的方案是,人根據(jù)測(cè)量的戶型數(shù)據(jù),在AutoCAD里面通過(guò)手動(dòng)繪制出墻體、門窗、家具等,再根據(jù)自己的經(jīng)驗(yàn)判斷,在相應(yīng)的位置上放上插座,存在出圖速度慢的問(wèn)題,以一個(gè)完整的施工圖來(lái)說(shuō),包含8-10張圖紙,需要花費(fèi)大量的人力時(shí)間,效率低,每張圖的基礎(chǔ)結(jié)構(gòu)都是一致的,人工需要完成很多重復(fù)性的工作,而這一部分工作可交給機(jī)器實(shí)現(xiàn);質(zhì)量不可控,繪制出來(lái)的圖紙效果完全依賴于人的水平,對(duì)結(jié)果質(zhì)量不可控,如果人的狀態(tài)好,控制CAD出圖的效果好,圖紙的質(zhì)量就高,如果人的狀態(tài)不好,控制CAD出圖的效果不好,圖紙的質(zhì)量就很低下,速度慢,需要花費(fèi)大量人力時(shí)間,效率低下,避免人進(jìn)行重復(fù)性的工作,圖紙質(zhì)量不可控,對(duì)人的高度依賴;
因此,本領(lǐng)域技術(shù)人員亟需開(kāi)發(fā)出一種提升繪制CAD施工圖的效率,一鍵生成CAD施工圖,大大地降低人力成本,圖紙質(zhì)量可控,圖紙質(zhì)量不受人力因素影響的基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問(wèn)題是提供一種基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng),該基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng)能提升繪制CAD施工圖的效率,一鍵生成CAD施工圖,大大地降低人力成本,圖紙質(zhì)量可控,圖紙質(zhì)量不受人力因素影響。
為解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng),包括:數(shù)據(jù)緩存處理器,用于主要是緩存所有還未處理的CAD導(dǎo)出任務(wù)相關(guān)數(shù)據(jù),并維護(hù)該任務(wù)隊(duì)列;
WEB前端處理器;
數(shù)據(jù)庫(kù),用于持久化存儲(chǔ)CAD導(dǎo)出任務(wù)數(shù)據(jù)及任務(wù)狀態(tài),導(dǎo)出生成的CAD文件名;
超文本預(yù)處理器,用于為web前端處理器提供與數(shù)據(jù)緩存處理器及數(shù)據(jù)庫(kù)交互的數(shù)據(jù)接口服務(wù);
CAD戶型圖導(dǎo)出處理器,用于實(shí)現(xiàn)Tumax戶型JSON到CAD文件的轉(zhuǎn)換;
文件存儲(chǔ)服務(wù)器,主要用于存儲(chǔ)CAD導(dǎo)出文件;
其中,所述數(shù)據(jù)緩存處理器設(shè)置有CAD導(dǎo)出隊(duì)列列表,
所述WEB前端處理器發(fā)送導(dǎo)出Tumax戶型CAD的任務(wù)請(qǐng)求,所述超文本預(yù)處理器接受WEB前端處理器發(fā)送的Tumax導(dǎo)出任務(wù)請(qǐng)求,并將任務(wù)信息寫(xiě)入數(shù)據(jù)庫(kù),所述超文本預(yù)處理器根據(jù)Tumax的導(dǎo)出任務(wù)請(qǐng)求,創(chuàng)建CAD戶型圖導(dǎo)出任務(wù),并插入到所述數(shù)據(jù)緩存處理器中的CAD導(dǎo)出隊(duì)列中,所述CAD戶型圖導(dǎo)出處理器從所述數(shù)據(jù)緩存處理器的CAD導(dǎo)出任務(wù)隊(duì)列中取出一個(gè)導(dǎo)出任務(wù),并解析戶型JSON數(shù)據(jù),并進(jìn)行CAD導(dǎo)出轉(zhuǎn)換,所述CAD戶型圖導(dǎo)出處理器將導(dǎo)出的CAD文件壓縮成zip文件后,再上傳到所述文件存儲(chǔ)服務(wù)器,所述CAD戶型圖導(dǎo)出處理器將導(dǎo)出CAD的文件名寫(xiě)入所述數(shù)據(jù)庫(kù),將任務(wù)完成的狀態(tài),更新到所述數(shù)據(jù)緩存處理器中,所述超文本預(yù)處理器取出當(dāng)前CAD導(dǎo)出任務(wù)的狀態(tài),所述超文本預(yù)處理器將CAD導(dǎo)出任務(wù)的狀態(tài)返回給所述WEB前端處理器。
優(yōu)選地,所述CAD圖紙導(dǎo)出處理器還包括戶型基礎(chǔ)結(jié)構(gòu)處理子模塊,所述戶型基礎(chǔ)結(jié)構(gòu)處理子模塊包括基礎(chǔ)結(jié)構(gòu)判斷單元、基礎(chǔ)結(jié)構(gòu)繪制單元、基礎(chǔ)結(jié)構(gòu)填充單元及基礎(chǔ)結(jié)構(gòu)CAD導(dǎo)出單元;
所述基礎(chǔ)結(jié)構(gòu)判斷單元判斷當(dāng)前墻體是否包含門窗,如果否,判斷墻體分段遍歷是否結(jié)束,如果是,則所述基礎(chǔ)結(jié)構(gòu)繪制單元在門窗所處墻體上的位置進(jìn)行挖洞,把墻體分成多段,所述基礎(chǔ)結(jié)構(gòu)繪制單元繪制門窗部分的線條,
所述基礎(chǔ)結(jié)構(gòu)填充單元填充當(dāng)前墻體分段,基礎(chǔ)結(jié)構(gòu)繪制單元繪制墻體分段的左右面線條,判斷墻體分段兩邊是否存在端墻,如果存在端墻,則所述基礎(chǔ)結(jié)構(gòu)繪制單元繪制墻體分段端墻部分的線條,如果不存在端墻或者墻體分段端墻部分的線條繪制完成,判斷墻體分段遍歷是否結(jié)束,如果墻體分段遍歷沒(méi)有結(jié)束,則所述基礎(chǔ)結(jié)構(gòu)填充單元重新填充當(dāng)前墻體分段,所述基礎(chǔ)結(jié)構(gòu)繪制單元繪制線條,如果墻體分段遍歷結(jié)束,則所述基礎(chǔ)結(jié)構(gòu)繪制單元將繪制的數(shù)據(jù)傳輸給所述基礎(chǔ)結(jié)構(gòu)CAD導(dǎo)出單元,所述基礎(chǔ)結(jié)構(gòu)填充單元將填充的數(shù)據(jù)傳輸給所述基礎(chǔ)結(jié)構(gòu)CAD導(dǎo)出單元;
所述基礎(chǔ)結(jié)構(gòu)CAD導(dǎo)出單元將接收的戶型基礎(chǔ)結(jié)構(gòu)JSON類型數(shù)據(jù)轉(zhuǎn)換成CAD文件并將CAD文件發(fā)送至所述文件存儲(chǔ)服務(wù)器進(jìn)行保存。
優(yōu)選地,所述戶型地面結(jié)構(gòu)處理子模塊包括地面結(jié)構(gòu)判斷單元、地面結(jié)構(gòu)填充單元、地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元及地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元,所述地面結(jié)構(gòu)判斷單元判斷當(dāng)前房間是否鋪了地面,如否,則所述地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元設(shè)置地面鋪貼的起點(diǎn),所述地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元設(shè)置地面鋪貼的旋轉(zhuǎn)角度,所述地面結(jié)構(gòu)填充單元取得房間里面的所有頂點(diǎn),并對(duì)房間進(jìn)行填充,所述地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元使用引線對(duì)鋪貼信息進(jìn)行標(biāo)注,如果當(dāng)前房間已經(jīng)鋪了地面,則所述基礎(chǔ)結(jié)構(gòu)繪制單元將繪制的數(shù)據(jù)傳輸給所述地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元,所述地面結(jié)構(gòu)填充單元將填充的數(shù)據(jù)傳輸給所述地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元,所述地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元將地面設(shè)置旋轉(zhuǎn)標(biāo)注的數(shù)據(jù)傳輸給所述地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元;
所述地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元將接收的戶型地面結(jié)構(gòu)JSON類型數(shù)據(jù)轉(zhuǎn)換成CAD文件并將CAD文件發(fā)送至所述文件存儲(chǔ)服務(wù)器進(jìn)行保存。
優(yōu)選地,所述家具結(jié)構(gòu)處理子模塊包括家具CAD數(shù)據(jù)判斷單元、家具信息分類存儲(chǔ)單元、家具CAD塊信息查詢單元、家具信息寫(xiě)入存儲(chǔ)單元、家具CAD信息導(dǎo)出存儲(chǔ)單元;
其中,所述家具信息分類存儲(chǔ)單元設(shè)置有CAD分類塊列表,所述家具信息寫(xiě)入存儲(chǔ)單元設(shè)置有家具匹配塊列表;
所述家具CAD數(shù)據(jù)判斷單元判斷是否取下一個(gè)家具數(shù)據(jù),如果是,則所述家具信息分類存儲(chǔ)單元根據(jù)分類映射CAD分類塊列表,所述家具CAD塊信息查詢單元在CAD分類塊列表查找尺寸最匹配的CAD分類塊,所述家具信息寫(xiě)入存儲(chǔ)單元將最匹配的CAD分類塊寫(xiě)入至家具匹配塊列表,如果所述家具CAD數(shù)據(jù)判斷單元判斷所提取的家具數(shù)據(jù)已經(jīng)全部寫(xiě)入至所述家具匹配塊列表,則所述家具信息寫(xiě)入存儲(chǔ)單元將所述家具匹配塊列表的信息傳輸給所述家具CAD信息導(dǎo)出存儲(chǔ)單元;
所述家具CAD信息導(dǎo)出存儲(chǔ)單元將接收的JSON類型數(shù)據(jù)轉(zhuǎn)換成CAD文件并將CAD文件發(fā)送至所述文件存儲(chǔ)服務(wù)器進(jìn)行保存。
優(yōu)選地,所述CAD分類塊由一系列的頂點(diǎn)、線段、矩形及填充的實(shí)體組成,所述CAD分類塊將所述各種實(shí)體組成一個(gè)整體。
優(yōu)選地,所述家具CAD信息導(dǎo)出存儲(chǔ)單元程序啟動(dòng)時(shí),將家具匹配塊列表中預(yù)置好的CAD分類塊信息預(yù)先解析出來(lái),并緩存到內(nèi)存中,當(dāng)有CAD導(dǎo)出任務(wù)時(shí),所述家具CAD信息導(dǎo)出存儲(chǔ)單元解析戶型JSON類型家具數(shù)據(jù),家具CAD塊信息查詢單元從內(nèi)存中緩存的CAD分類塊數(shù)據(jù)中尋找最匹的CAD分類塊,將該匹配的CAD分類塊插入到所述家具CAD信息導(dǎo)出存儲(chǔ)單元的導(dǎo)出CAD文件中。
優(yōu)選地,所述戶型JSON類型家具數(shù)據(jù)包括家具的分類、位置、縮放、旋轉(zhuǎn)角度及尺寸信息。
采用了上述系統(tǒng)之后,所述WEB前端處理器發(fā)送導(dǎo)出Tumax戶型CAD的任務(wù)請(qǐng)求,所述超文本預(yù)處理器接受WEB前端處理器發(fā)送的Tumax導(dǎo)出任務(wù)請(qǐng)求,并將任務(wù)信息寫(xiě)入數(shù)據(jù)庫(kù),所述超文本預(yù)處理器根據(jù)Tumax的導(dǎo)出任務(wù)請(qǐng)求,創(chuàng)建CAD戶型圖導(dǎo)出任務(wù),并插入到所述數(shù)據(jù)緩存處理器中的CAD導(dǎo)出隊(duì)列中,所述CAD戶型圖導(dǎo)出處理器從所述數(shù)據(jù)緩存處理器的CAD導(dǎo)出任務(wù)隊(duì)列中取出一個(gè)導(dǎo)出任務(wù),并解析戶型JSON數(shù)據(jù),并進(jìn)行CAD導(dǎo)出轉(zhuǎn)換,所述CAD戶型圖導(dǎo)出處理器將導(dǎo)出的CAD文件壓縮成zip文件后,再上傳到所述文件存儲(chǔ)服務(wù)器,所述CAD戶型圖導(dǎo)出處理器將導(dǎo)出CAD的文件名寫(xiě)入所述數(shù)據(jù)庫(kù),將任務(wù)完成的狀態(tài),更新到所述數(shù)據(jù)緩存處理器中,所述超文本預(yù)處理器取出當(dāng)前CAD導(dǎo)出任務(wù)的狀態(tài),所述超文本預(yù)處理器將CAD導(dǎo)出任務(wù)的狀態(tài)返回給所述WEB前端處理器;該基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng)能提升繪制CAD施工圖的效率,一鍵生成CAD施工圖,大大地降低人力成本,圖紙質(zhì)量可控,圖紙質(zhì)量不受人力因素影響。
附圖說(shuō)明
圖1是本發(fā)明的基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng)的整體結(jié)構(gòu)示意圖;
圖2是本發(fā)明的圖1的CAD圖紙導(dǎo)出處理器的戶型基礎(chǔ)結(jié)構(gòu)處理子模塊的結(jié)構(gòu)示意圖;
圖3是本發(fā)明的圖1的CAD圖紙導(dǎo)出處理器的戶型地面結(jié)構(gòu)處理子模塊的結(jié)構(gòu)示意圖;
圖4是本發(fā)明的圖1的CAD圖紙導(dǎo)出處理器的戶型家具結(jié)構(gòu)處理子模塊的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用于解釋本發(fā)明,并不用于限定本發(fā)明。
實(shí)施例1
請(qǐng)參閱圖1,圖1是本發(fā)明的基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng)的整體結(jié)構(gòu)示意圖;
本發(fā)明公開(kāi)的一種基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng),包括:數(shù)據(jù)緩存處理器,用于主要是緩存所有還未處理的CAD導(dǎo)出任務(wù)相關(guān)數(shù)據(jù),并維護(hù)該任務(wù)隊(duì)列;
WEB前端處理器;
數(shù)據(jù)庫(kù),用于持久化存儲(chǔ)CAD導(dǎo)出任務(wù)數(shù)據(jù)及任務(wù)狀態(tài),導(dǎo)出生成的CAD文件名;
超文本預(yù)處理器,用于為web前端處理器提供與數(shù)據(jù)緩存處理器及數(shù)據(jù)庫(kù)交互的數(shù)據(jù)接口服務(wù);
CAD戶型圖導(dǎo)出處理器,用于實(shí)現(xiàn)Tumax戶型json到CAD文件的轉(zhuǎn)換;
文件存儲(chǔ)服務(wù)器,主要用于存儲(chǔ)CAD導(dǎo)出文件;
其中,所述數(shù)據(jù)緩存處理器設(shè)置有CAD導(dǎo)出隊(duì)列列表,
所述WEB前端處理器發(fā)送導(dǎo)出Tumax戶型CAD的任務(wù)請(qǐng)求,所述超文本預(yù)處理器接受WEB前端處理器發(fā)送的Tumax導(dǎo)出任務(wù)請(qǐng)求,并將任務(wù)信息寫(xiě)入數(shù)據(jù)庫(kù),所述超文本預(yù)處理器根據(jù)Tumax的導(dǎo)出任務(wù)請(qǐng)求,創(chuàng)建CAD戶型圖導(dǎo)出任務(wù),并插入到所述數(shù)據(jù)緩存處理器中的CAD導(dǎo)出隊(duì)列中,所述CAD戶型圖導(dǎo)出處理器從所述數(shù)據(jù)緩存處理器的CAD導(dǎo)出任務(wù)隊(duì)列中取出一個(gè)導(dǎo)出任務(wù),并解析戶型json數(shù)據(jù),并進(jìn)行CAD導(dǎo)出轉(zhuǎn)換,所述CAD戶型圖導(dǎo)出處理器將導(dǎo)出的CAD文件壓縮成zip文件后,再上傳到所述文件存儲(chǔ)服務(wù)器,所述CAD戶型圖導(dǎo)出處理器將導(dǎo)出CAD的文件名寫(xiě)入所述數(shù)據(jù)庫(kù),將任務(wù)完成的狀態(tài),更新到所述數(shù)據(jù)緩存處理器中,所述超文本預(yù)處理器取出當(dāng)前CAD導(dǎo)出任務(wù)的狀態(tài),所述超文本預(yù)處理器將CAD導(dǎo)出任務(wù)的狀態(tài)返回給所述web前端處理器。
請(qǐng)參閱圖2,圖2是本發(fā)明的圖1的CAD圖紙導(dǎo)出處理器的戶型基礎(chǔ)結(jié)構(gòu)處理子模塊的結(jié)構(gòu)示意圖;
所述CAD圖紙導(dǎo)出處理器還包括戶型基礎(chǔ)結(jié)構(gòu)處理子模塊,所述戶型基礎(chǔ)結(jié)構(gòu)處理子模塊包括基礎(chǔ)結(jié)構(gòu)判斷單元、基礎(chǔ)結(jié)構(gòu)繪制單元、基礎(chǔ)結(jié)構(gòu)填充單元及基礎(chǔ)結(jié)構(gòu)CAD導(dǎo)出單元;
所述基礎(chǔ)結(jié)構(gòu)判斷單元判斷當(dāng)前墻體是否包含門窗,如果否,判斷墻體分段遍歷是否結(jié)束,如果是,則所述基礎(chǔ)結(jié)構(gòu)繪制單元在門窗所處墻體上的位置進(jìn)行挖洞,把墻體分成多段,所述基礎(chǔ)結(jié)構(gòu)繪制單元繪制門窗部分的線條,
所述基礎(chǔ)結(jié)構(gòu)填充單元填充當(dāng)前墻體分段,基礎(chǔ)結(jié)構(gòu)繪制單元繪制墻體分段的左右面線條,判斷墻體分段兩邊是否存在端墻,如果存在端墻,則所述基礎(chǔ)結(jié)構(gòu)繪制單元繪制墻體分段端墻部分的線條,如果不存在端墻或者墻體分段端墻部分的線條繪制完成,判斷墻體分段遍歷是否結(jié)束,如果墻體分段遍歷沒(méi)有結(jié)束,則所述基礎(chǔ)結(jié)構(gòu)填充單元重新填充當(dāng)前墻體分段,所述基礎(chǔ)結(jié)構(gòu)繪制單元繪制線條,如果墻體分段遍歷結(jié)束,則所述基礎(chǔ)結(jié)構(gòu)繪制單元將繪制的數(shù)據(jù)傳輸給所述基礎(chǔ)結(jié)構(gòu)CAD導(dǎo)出單元,所述基礎(chǔ)結(jié)構(gòu)填充單元將填充的數(shù)據(jù)傳輸給所述基礎(chǔ)結(jié)構(gòu)CAD導(dǎo)出單元;
所述基礎(chǔ)結(jié)構(gòu)CAD導(dǎo)出單元將接收的戶型基礎(chǔ)結(jié)構(gòu)JSON類型數(shù)據(jù)轉(zhuǎn)換成CAD文件并將CAD文件發(fā)送至所述文件存儲(chǔ)服務(wù)器進(jìn)行保存。
請(qǐng)參閱圖3,圖3是本發(fā)明的圖1的CAD圖紙導(dǎo)出處理器的戶型地面結(jié)構(gòu)處理子模塊的結(jié)構(gòu)示意圖;
所述戶型地面結(jié)構(gòu)處理子模塊包括地面結(jié)構(gòu)判斷單元、地面結(jié)構(gòu)填充單元、地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元及地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元,所述地面結(jié)構(gòu)判斷單元判斷當(dāng)前房間是否鋪了地面,如否,則所述地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元設(shè)置地面鋪貼的起點(diǎn),所述地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元設(shè)置地面鋪貼的旋轉(zhuǎn)角度,所述地面結(jié)構(gòu)填充單元取得房間里面的所有頂點(diǎn),并對(duì)房間進(jìn)行填充,所述地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元使用引線對(duì)鋪貼信息進(jìn)行標(biāo)注,如果當(dāng)前房間已經(jīng)鋪了地面,則所述地面結(jié)構(gòu)繪制單元將繪制的數(shù)據(jù)傳輸給所述地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元,所述地面結(jié)構(gòu)填充單元將填充的數(shù)據(jù)傳輸給所述地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元,所述地面結(jié)構(gòu)設(shè)置旋轉(zhuǎn)標(biāo)注單元將地面設(shè)置旋轉(zhuǎn)標(biāo)注的數(shù)據(jù)傳輸給所述地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元;
所述地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元將接收的戶型地面結(jié)構(gòu)JSON類型數(shù)據(jù)轉(zhuǎn)換成CAD文件并將CAD文件發(fā)送至所述文件存儲(chǔ)服務(wù)器進(jìn)行保存。
請(qǐng)參閱圖4,圖4是本發(fā)明的圖1的CAD圖紙導(dǎo)出處理器的戶型家具結(jié)構(gòu)處理子模塊的結(jié)構(gòu)示意圖;
所述家具結(jié)構(gòu)處理子模塊包括家具CAD數(shù)據(jù)判斷單元、家具信息分類存儲(chǔ)單元、家具CAD塊信息查詢單元、家具信息寫(xiě)入存儲(chǔ)單元、家具CAD信息導(dǎo)出存儲(chǔ)單元;
在本實(shí)施例中,優(yōu)選的所述家具信息分類存儲(chǔ)單元設(shè)置有CAD分類塊列表,所述家具信息寫(xiě)入存儲(chǔ)單元設(shè)置有家具匹配塊列表;
所述家具CAD數(shù)據(jù)判斷單元判斷是否提取下一個(gè)家具數(shù)據(jù),如果是,則所述家具信息分類存儲(chǔ)單元根據(jù)分類映射CAD分類塊列表,所述家具CAD塊信息查詢單元在CAD分類塊列表查找尺寸最匹配的CAD分類塊,所述家具信息寫(xiě)入存儲(chǔ)單元將最匹配的CAD分類塊寫(xiě)入至家具匹配塊列表,如果所述家具CAD數(shù)據(jù)判斷單元判斷所提取的家具數(shù)據(jù)已經(jīng)全部寫(xiě)入至所述家具匹配塊列表,則所述家具信息寫(xiě)入存儲(chǔ)單元將所述家具匹配塊列表的信息傳輸給所述家具CAD信息導(dǎo)出存儲(chǔ)單元;
所述家具CAD信息導(dǎo)出存儲(chǔ)單元將接收的戶型家具JSON類型數(shù)據(jù)轉(zhuǎn)換成CAD文件并將CAD文件發(fā)送至所述文件存儲(chǔ)服務(wù)器進(jìn)行保存。
優(yōu)選地,在本實(shí)施例中,所述CAD分類塊由一系列的頂點(diǎn)、線段、矩形及填充的實(shí)體組成,所述CAD分類塊將所述各種實(shí)體組成一個(gè)整體。
優(yōu)選地,在本實(shí)施例中,所述家具CAD信息導(dǎo)出存儲(chǔ)單元程序啟動(dòng)時(shí),將所述家具匹配塊列表中預(yù)置好的CAD分類塊信息預(yù)先解析出來(lái),并緩存到內(nèi)存中,當(dāng)有CAD導(dǎo)出任務(wù)時(shí),所述家具CAD信息導(dǎo)出存儲(chǔ)單元解析戶型家具JSON類型數(shù)據(jù),家具CAD塊信息查詢單元從內(nèi)存中緩存的CAD分類塊數(shù)據(jù)中尋找最匹的CAD分類塊,將該匹配的CAD分類塊插入到所述家具CAD信息導(dǎo)出存儲(chǔ)單元的導(dǎo)出CAD文件中。
所述戶型JSON類型家具數(shù)據(jù)包括家具的分類、位置、縮放、旋轉(zhuǎn)角度及尺寸信息。
DXF文件格式說(shuō)明,DXF(Drawing Exchange Format,繪圖交換文件),是Autodesk公司制定的一種CAD數(shù)據(jù)文件格式,里面的數(shù)據(jù)都是成對(duì)出現(xiàn)的,一組數(shù)據(jù)包含一個(gè)組碼和一個(gè)或多個(gè)值,值的類型可以是整型,浮點(diǎn)型,字符串,十六進(jìn)制數(shù)字。一個(gè)完整的文件包含多個(gè)段,每個(gè)段以組碼“0”和字符串“SECTION”開(kāi)頭,以“0”和字符串“ENDSEC”結(jié)尾,基本的組成如下:
HEADER段,描述文件的全局設(shè)置信息,每個(gè)有效的值都包含兩組數(shù)據(jù),其中第一組數(shù)據(jù)以組碼“9”開(kāi)頭,跟著一個(gè)字符串指定是哪項(xiàng)設(shè)置,第二組數(shù)據(jù)則指定該項(xiàng)設(shè)置的具體值是什么。
CLASSES段,在BLOCKS、ENTITIES以及OBJECTS部分出現(xiàn)的所有實(shí)例的類信息。
TABLES段,命名條目定義,包含多個(gè)表結(jié)構(gòu),每個(gè)表結(jié)構(gòu)里面可以有多個(gè)實(shí)體,常見(jiàn)的表有:APPID、BLOCK_RECORD、DIMSTYLE、LAYER、LTYPE、STYLE、UCS、VIEW、VPORT等。
BLOCKS段,BLOCK_RECORD表里面定義的所有塊的實(shí)體信息。
ENTITIES段,DXF文件的主體,包含所有圖形實(shí)體,常見(jiàn)的實(shí)體類型有HATCH、INSERT、LINE、POLYLINE、TEXT等
OBJECTS段,描述非圖形對(duì)象,供其它應(yīng)用程序使用
THUMBNAILIMAGE段,DXF文件的預(yù)覽圖。
所述CAD分類塊通過(guò)上述各種組成段進(jìn)行設(shè)置,所述家具CAD信息導(dǎo)出存儲(chǔ)單元、地面結(jié)構(gòu)CAD導(dǎo)出信息存儲(chǔ)單元及所述基礎(chǔ)結(jié)構(gòu)CAD導(dǎo)出單元通過(guò)上述的CAD結(jié)構(gòu)分段進(jìn)行數(shù)轉(zhuǎn)換。
采用了上述系統(tǒng)之后,所述WEB前端處理器發(fā)送導(dǎo)出Tumax戶型CAD的任務(wù)請(qǐng)求,所述超文本預(yù)處理器接受WEB前端處理器發(fā)送的Tumax導(dǎo)出任務(wù)請(qǐng)求,并將任務(wù)信息寫(xiě)入數(shù)據(jù)庫(kù),所述超文本預(yù)處理器根據(jù)Tumax的導(dǎo)出任務(wù)請(qǐng)求,創(chuàng)建CAD戶型圖導(dǎo)出任務(wù),并插入到所述數(shù)據(jù)緩存處理器中的CAD導(dǎo)出隊(duì)列中,所述CAD戶型圖導(dǎo)出處理器從所述數(shù)據(jù)緩存處理器的CAD導(dǎo)出任務(wù)隊(duì)列中取出一個(gè)導(dǎo)出任務(wù),并解析戶型JSON數(shù)據(jù),并進(jìn)行CAD導(dǎo)出轉(zhuǎn)換,所述CAD戶型圖導(dǎo)出處理器將導(dǎo)出的CAD文件壓縮成zip文件后,再上傳到所述文件存儲(chǔ)服務(wù)器,所述CAD戶型圖導(dǎo)出處理器將導(dǎo)出CAD的文件名寫(xiě)入所述數(shù)據(jù)庫(kù),將任務(wù)完成的狀態(tài),更新到所述數(shù)據(jù)緩存處理器中,所述超文本預(yù)處理器取出當(dāng)前CAD導(dǎo)出任務(wù)的狀態(tài),所述超文本預(yù)處理器將CAD導(dǎo)出任務(wù)的狀態(tài)返回給所述WEB前端處理器;該基于Tumax戶型圖一鍵生成CAD施工圖的系統(tǒng)能提升繪制CAD施工圖的效率,一鍵生成CAD施工圖,大大地降低人力成本,圖紙質(zhì)量可控,圖紙質(zhì)量不受人力因素影響。
同時(shí),應(yīng)當(dāng)理解的是,以上僅為本發(fā)明的優(yōu)選實(shí)施例,不能因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說(shuō)明書(shū)及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效實(shí)現(xiàn)方法,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。