孫真珍
(山東協(xié)和學(xué)院,山東濟(jì)南 250109)
房產(chǎn)行業(yè)的快速發(fā)展,使得家裝行業(yè)也步入了空前發(fā)展的盛狀?,F(xiàn)今,人們基于家裝的需求不再僅限于家居環(huán)境的改變,而是更加的追求個(gè)性的體現(xiàn),顯然,傳統(tǒng)的家裝模式已難以適應(yīng)這種變化?!盎ヂ?lián)網(wǎng)+”時(shí)代下,家裝模式與其未來的發(fā)展息息相關(guān),應(yīng)能要求其作出相對(duì)應(yīng)的改變,以求順應(yīng)市場發(fā)展需求,做到一體化、系統(tǒng)化、規(guī)?;?、信息化[1]。基于此,文章依托于BIM 技術(shù),綜合當(dāng)下家裝設(shè)計(jì)行業(yè)的發(fā)展實(shí)況,構(gòu)建了一套家裝設(shè)計(jì)軟件,通過運(yùn)用建筑信息模型的功能及優(yōu)勢,創(chuàng)新設(shè)計(jì)模式,以求為客戶帶來更好的設(shè)計(jì)體驗(yàn),進(jìn)而推動(dòng)家裝行業(yè)的快速發(fā)展。
該文以BIM 技術(shù)作為硬件支持,將其融入到家裝設(shè)計(jì)的總體服務(wù)之中,以其作為數(shù)據(jù)載體,以構(gòu)建起以BIM 技術(shù)為中心的三維裝飾設(shè)計(jì)軟件系統(tǒng)。在該次設(shè)計(jì)之中,分別由兩個(gè)層次展開:(1)軟裝設(shè)計(jì)。(2)硬裝設(shè)計(jì)。后者需要實(shí)現(xiàn)的功能需求包括有:墻體及房間戶型繪制、水電設(shè)計(jì)等;前者則主要指的是一系列產(chǎn)品的安置規(guī)劃,如沙發(fā)、窗簾等。
在明確主要功能需求的基礎(chǔ)上,軟件工具可完成建模畫圖、產(chǎn)品組合、二—三維視圖切換等幾項(xiàng)功能,之中,建模畫圖是以可視化作為主要手段以達(dá)到就各個(gè)圖形圖案進(jìn)行拼接裁剪的目的,包括戶型、水電、踢腳線等內(nèi)容的設(shè)計(jì);產(chǎn)品組合指的是把儲(chǔ)存于產(chǎn)品庫的模型歸納法到設(shè)計(jì)平臺(tái),并借助坐標(biāo)系統(tǒng)實(shí)現(xiàn)基于的模型的拖、放等過程,完成相對(duì)應(yīng)的組合[2]。除此之外,該系統(tǒng)也需要具備設(shè)計(jì)方案的精準(zhǔn)測量功能,而這一功能的實(shí)現(xiàn),需要以兩點(diǎn)架構(gòu)作為支持:其一,構(gòu)建完善的企業(yè)清單定額、材料庫等各類數(shù)據(jù)庫,將其中的信息數(shù)據(jù)和設(shè)計(jì)軟件完成有關(guān)集成,以便于使產(chǎn)品基礎(chǔ)量信息、 基礎(chǔ)庫二者構(gòu)建有效的關(guān)聯(lián);其二,針對(duì)設(shè)計(jì)方案中所涉及的一系列產(chǎn)品清單,包括相對(duì)應(yīng)的定制用量均加以準(zhǔn)確的歸納整合[3]。
上文中提及了該系統(tǒng)所涉及的三大功能需求,即建模畫圖、產(chǎn)品組合、二維—三維視圖切換,如下我們便分別進(jìn)行論述,就其中的算法設(shè)計(jì)進(jìn)行分析。
建模畫圖是以可視化作為主要手段以達(dá)到就各個(gè)圖形圖案進(jìn)行拼接裁剪的目的,包括戶型、水電、踢腳線等內(nèi)容。在此基礎(chǔ)上,可完成剖切,進(jìn)而為接下來的施工圖及樣圖提供可靠的信息支持。建模畫圖為該系統(tǒng)的重要組分,其所應(yīng)用到的算法較多,下面,進(jìn)行論述。
2.1.1 墻體繪制組合
由本質(zhì)上來看,基于墻體所進(jìn)行的一系列編程操作,如創(chuàng)建、繪制等均為一種Plan Controller (面板邏輯控制)。而要想實(shí)現(xiàn)這一系列操作,需要依托于Wall.java 中的get Points,借助get Shape Points 方法通過計(jì)算分析以得到4 個(gè)頂點(diǎn)所對(duì)應(yīng)的坐標(biāo); 在得到4 個(gè)矩形坐標(biāo)的基礎(chǔ)上,進(jìn)其的具體厚度進(jìn)行計(jì)算。
我們?cè)O(shè)定墻體間存在相交情況,那么便需要計(jì)算其他墻相對(duì)應(yīng)的方形頂點(diǎn),不同的是,其實(shí)我們需要借助于compute Intersection 算法, 來就當(dāng)前墻體的頂點(diǎn)目標(biāo)進(jìn)行調(diào)整。在出現(xiàn)points Cache 時(shí),倘若計(jì)算出的某點(diǎn)、 相交墻體points Cache 某點(diǎn)二者的差值并不大的話,那它們便可共用該點(diǎn)以防止出現(xiàn)計(jì)算失誤的情況。在完成上述操作的基礎(chǔ)上,利用Plan Controller 方法勾勒出墻輪廓, 便能夠得到斜面[4]。
2.1.2 自動(dòng)管道編排
由設(shè)計(jì)可行性的角度分析,自動(dòng)管道編排設(shè)計(jì)需要由兩大點(diǎn)入手:(1)依托于參數(shù)化建模的管道自動(dòng)生成;(2)利用路由規(guī)則而實(shí)現(xiàn)的路由尋徑。其中,前者指代的是給定管道的起點(diǎn)及終點(diǎn),將所對(duì)應(yīng)的兩點(diǎn)畫在二維平面圖之中,把起、終點(diǎn)用線段進(jìn)行連接用來代表管道路徑,并以圓柱的形狀體現(xiàn)在三維空間中。此過程中,我們可采用Polyline 畫出二維線段,然后再基于Polyline 便可以完成折線、弧線的勾畫過程相對(duì)應(yīng)的三維圓柱形則需要依托于Polyline3D.java 來實(shí)現(xiàn),通過代碼來更改圓柱方位,vector 用以指代圓柱起點(diǎn),vector2 便是其的具體方向;后者的實(shí)現(xiàn)同樣需要依賴于兩個(gè)算法,即主路由生成、自動(dòng)生成指定點(diǎn)相對(duì)應(yīng)的地面自動(dòng)布線。由設(shè)計(jì)算法進(jìn)行分析,主路由生成算法可劃分為幾大步序,分別為:(1)確定主路由與房間邊緣二者的交點(diǎn)位置,并確定電位到主路由的所有路徑,計(jì)算得出最短的,然后生成內(nèi)部輪廓線;(2)找到最后的一個(gè)點(diǎn)位,并將其刪除,在此基礎(chǔ)上增添一點(diǎn),對(duì)于增添點(diǎn)的位置需要以這一點(diǎn)由主路由的方向進(jìn)行確定;(3)分析輪廓線的涉及面,是否存在超出房間的情況,倘若沒有,則記錄下來。反復(fù)該步序,直至最后一至;(4)確定全部的輪廓線,并計(jì)算它們的長度,找到最小值作為路徑。
2.1.3 踢腳線生成
該步序的設(shè)計(jì)步序?yàn)椋涸诖_定房間的基礎(chǔ)上,以截面頂點(diǎn)坐標(biāo)作為基準(zhǔn),然后沿房間邊緣生成,需要繞過門的位置。
倘若房間無門,那么可選擇房間的任意頂點(diǎn)作為起點(diǎn),以邊緣頂點(diǎn)角度作為依據(jù),針對(duì)踢腳線的點(diǎn)進(jìn)行旋轉(zhuǎn),并使之連接到交點(diǎn)的角度,然后進(jìn)行移動(dòng),直到相鄰房間頂點(diǎn)即可。反復(fù)這一步序,待每一個(gè)頂點(diǎn)都完成了該過程。然后將這些點(diǎn)進(jìn)行連接,所構(gòu)成的回路便是踢腳線的相應(yīng)形狀,將其寫入三維面板即可;反正,倘若房間有門,便應(yīng)當(dāng)以前一個(gè)門和房間的后交點(diǎn)作為起點(diǎn),然后形成相對(duì)應(yīng)的非閉合回路,其他步序類似便不再贅述[5]。
產(chǎn)品組合,指的是把各個(gè)基礎(chǔ)模型導(dǎo)入到系統(tǒng)之中,該過程的算法易于實(shí)現(xiàn)。完成模型的導(dǎo)入之后,便需要考慮怎樣以清單計(jì)價(jià)的方式實(shí)現(xiàn)產(chǎn)品的算量統(tǒng)計(jì),針對(duì)該行業(yè)的特點(diǎn),我們可知主要的產(chǎn)品分類包括:門、窗、各種家具。以房間為單位做好產(chǎn)品的統(tǒng)計(jì),然后再整合列出各類產(chǎn)品的數(shù)量及總價(jià)。
在系統(tǒng)設(shè)計(jì)之中,我們可以發(fā)現(xiàn)如下問題:家具產(chǎn)品僅會(huì)與之所在房間出現(xiàn)交集,而門、窗戶則有可能會(huì)與兩個(gè)房間產(chǎn)生交集,那么,我們?cè)趯?shí)際的統(tǒng)計(jì)過程中,將門進(jìn)入的房間作為其的所屬房間,其他交集房間就不再進(jìn)行考慮,由此,可以得到相應(yīng)的門—房間列表。在該列表的基礎(chǔ)上,第一步原有的外部的門寫進(jìn)Product Home List,并將其所對(duì)應(yīng)的房間刪除,然后通過遍歷算法確定外部的門寫進(jìn)Product Home List,重復(fù)該程序,在當(dāng)表格中的各個(gè)門各自對(duì)應(yīng)一個(gè)房間時(shí),該循環(huán)完成[6]。
這一切換指的是采取所見即所得的形式, 就二維、三維兩種視窗進(jìn)行有效、實(shí)時(shí)的切換以及互動(dòng)。站在算法設(shè)計(jì)的角度來看,可參考下述思路。
通過Homg Component3D.java 中的create Home Tree 針對(duì)樓層(level) 、墻(wall) 、家具(furniture) 、房間(room)等因素進(jìn)行依次添加,倘若二維平面之中的相關(guān)元素出現(xiàn)改變時(shí),在監(jiān)聽的作用下3D 之中的相應(yīng)因素也會(huì)發(fā)生改變[7-8]。
基于上述的算法設(shè)計(jì),我們構(gòu)建了以BIM 技術(shù)為核心的家裝設(shè)計(jì)系統(tǒng),實(shí)踐證實(shí):該系統(tǒng)的基礎(chǔ)功能完備,如下,就其的功能效果進(jìn)行分析。
該系統(tǒng)能夠以二維、 三維的視角顯示房屋內(nèi)部結(jié)構(gòu)。首先,可以看到平面圖展示界面,可參照?qǐng)D1,基于該界面我們可選擇就平面圖進(jìn)行查看、 繪制操作。單擊“三維界面”,可轉(zhuǎn)化成3D 模型的形式,可參照?qǐng)D2,在當(dāng)前界面下,系統(tǒng)提供了多種模式供我們查看,如“鳥瞰”“漫游”等,由多元化的視角就三維模型進(jìn)行了完善。
圖1 平面圖展示界面
圖2 三維展示界面
圖3 顯示的是繪制墻體,在當(dāng)前操作界面下,單擊“繪制戶型”,然后選擇“墻體”,便可進(jìn)行基于墻體的繪制,整個(gè)繪制過程可通過調(diào)整鍵盤的“上下左右”,抑或是移動(dòng)鼠標(biāo)來實(shí)現(xiàn)。
圖3 墻體界面圖
如圖4 所示,我們選擇“顯示”“隱藏”時(shí),便可針對(duì)各個(gè)開關(guān)面板進(jìn)行是否顯示操作。在明確特定點(diǎn)位的基礎(chǔ)上,選擇“初始化”按鈕,便可通過界面的3D 視圖觀察到所對(duì)應(yīng)的初始線路。值得一提的是,這一過程中所涉及的各個(gè)線路都滿足由地面通過的需求;依據(jù)具體的標(biāo)準(zhǔn)規(guī)范,可考慮到把線路設(shè)定成走房屋頂部,這時(shí),我們僅需要確定好某個(gè)節(jié)點(diǎn),然后選擇頂部便可完成改設(shè)。
圖4 水電設(shè)計(jì)點(diǎn)位界面
接下來,需要進(jìn)行家具的添加操作,當(dāng)完成了這一程序之后,選擇“裝修清單”,即可得到相對(duì)應(yīng)的裝修清單,可參照?qǐng)D5。然后選擇“提交”,系統(tǒng)便可自動(dòng)的保存,并將相關(guān)數(shù)據(jù)傳輸?shù)胶笈_(tái)服務(wù)器之中。
圖5 裝修清單
綜上所述,房產(chǎn)行業(yè)的快速發(fā)展下,人們基于家裝的需求不再僅限于家居環(huán)境的改變,而是更加的追求個(gè)性的體現(xiàn),顯然,傳統(tǒng)的家裝模式已難以適應(yīng)這種變化?!盎ヂ?lián)網(wǎng)+”時(shí)代下,家裝模式與其未來的發(fā)展息息相關(guān),應(yīng)能要求其作出相對(duì)應(yīng)的改變,以求順應(yīng)市場發(fā)展需求,做到一體化、系統(tǒng)化、規(guī)?;?、信息化。文章論述了基于BIM 技術(shù)的家裝設(shè)計(jì)系統(tǒng),在分析其功能實(shí)現(xiàn)及算法設(shè)計(jì)的基礎(chǔ)上,介紹了主要的功能效果。
現(xiàn)階段,該系統(tǒng)已被應(yīng)用到實(shí)際的家裝工程之中,由設(shè)計(jì)可行性、作用效果等方面進(jìn)行分析,該系統(tǒng)的應(yīng)用,是順應(yīng)信息時(shí)代的體現(xiàn),是一條依托于BIM 技術(shù)的家裝設(shè)計(jì)信息化新道路。不僅開拓了設(shè)計(jì)師的設(shè)計(jì)模式,也為客戶提供了更好的體驗(yàn),為企業(yè)效益的提高帶來了積極影響,具有一定的應(yīng)用意義。