馬可天 王 佳
(北京建筑大學(xué)電氣與信息工程學(xué)院,北京 100044)
對(duì)空間的定義可以從很多領(lǐng)域得到借鑒:從廣義上來講,空間指沒有能量的事物,空間的存在使得事物可以發(fā)生變化。從物理學(xué)意義上來講,空間是指物質(zhì)實(shí)體之外的部分。數(shù)學(xué)意義上的空間是指一種具有特殊性質(zhì)及一些結(jié)構(gòu)的集合。建筑室內(nèi)空間是人類勞動(dòng)的產(chǎn)物,是相對(duì)于自然空間而言,人類有序生活組織所需要的物質(zhì)產(chǎn)品[1]。
在建筑信息模型(Building Ⅰnformation Modeling)里,ⅠfcSpace 用于構(gòu)建建筑物的空間結(jié)構(gòu)??臻g結(jié)構(gòu)元素通過語(yǔ)義信息ⅠfcRelAggregates 連接在一起。ⅠfcSpace 下屬相關(guān)的語(yǔ)義信息存儲(chǔ)在建筑模型的ⅠFC 文件中,這些信息定義了建筑模型中每一部分的空間區(qū)域。ⅠfcSpace 規(guī)定了空間中具有特定 空 間 功 能 的 空 間 區(qū) 域。 在 ⅠFC 文 件 中,ⅠfcRelContainedⅠnSpatialStructure 下的數(shù)據(jù)包含了在這個(gè)特定ⅠfcSpace 空間下的所有構(gòu)件信息。
ⅠfcRelContainedⅠnSpatialStructure 用于將元素分配給空間項(xiàng)目結(jié)構(gòu)的特定級(jí)別,任何元素都能分配到特定某個(gè)級(jí)別的空間結(jié)構(gòu)中[2]。
建筑室內(nèi)空間的識(shí)別對(duì)于消防通道路徑的導(dǎo)航、火災(zāi)應(yīng)急疏散線路規(guī)劃,建筑環(huán)境模擬等研究具有十分重要的意義,室內(nèi)空間的劃分與識(shí)別是許多研究可行性的前提[3]。然而,很多工程項(xiàng)目在設(shè)計(jì)之初忽略了對(duì)建筑模型語(yǔ)義信息ⅠfcSpace 的設(shè)定,使得用戶或設(shè)計(jì)師很難清晰直觀地分辨建筑空間內(nèi)各個(gè)獨(dú)立的功能空間。因此,在不具有ⅠfcSpace 語(yǔ)義信息的設(shè)定下,提取出室內(nèi)空間成為一項(xiàng)十分重要的工作。本文提出一種方法,在建筑模型內(nèi)缺失ⅠfcSpace 設(shè)定的情況下,對(duì)模型進(jìn)行合理分析從而提取出建筑內(nèi)部的空間區(qū)域。本文運(yùn)用體素化方法對(duì)模型空間進(jìn)行分割,根據(jù)墻體和樓板體素塊高度的差異分割建筑模型空間,進(jìn)而分割出模型內(nèi)部房間。
建筑師在繪制BⅠM 模型時(shí)往往忽略了對(duì)建筑空間功能的劃分,建筑模型內(nèi)部缺乏ⅠfcSpace 語(yǔ)義信息使得在對(duì)模型進(jìn)行相關(guān)研究時(shí)存在困難,本文引用體素化方法對(duì)模型進(jìn)行基礎(chǔ)的分割,最后得到模型空間中的房間。
體素是一個(gè)大小不固定的立方體。根據(jù)模型規(guī)模的大小以及對(duì)模型分割精確度的要求,可以人為地設(shè)定體素大小來進(jìn)行空間的分割。每個(gè)空間區(qū)域都可以用一組體素來定量地表達(dá)其幾何尺寸和細(xì)節(jié)[4]。為了從一個(gè)龐大、復(fù)雜的大空間中提取出各個(gè)小空間區(qū)域的功能信息,本研究將對(duì)模型進(jìn)行體素化處理,運(yùn)用體素化方法對(duì)模型進(jìn)行空間分割,體素化分割空間的示意圖如圖1 所示。
圖1 體素化空間分割
本文通過體素化方法,將空間分割成無數(shù)體素方塊構(gòu)成的體素集合。每一個(gè)體素集合代表了具有特定功能的房間。在對(duì)BⅠM模型進(jìn)行體素化處理前,為了避免在對(duì)模型進(jìn)行體素化時(shí)因房間內(nèi)部構(gòu)件的干擾而對(duì)結(jié)果產(chǎn)生影響,需要在體素化前對(duì)模型進(jìn)行模型內(nèi)相關(guān)構(gòu)件的移除,即對(duì)模型進(jìn)行去構(gòu)件化,如圖2 所示。模型中的桌椅構(gòu)件被移除出房間,進(jìn)而可以對(duì)去構(gòu)件化之后的模型房間進(jìn)行進(jìn)一步的體素化處理。
圖2 實(shí)驗(yàn)室模型去構(gòu)件化
為了對(duì)空間模型進(jìn)行體素化的分割,首先需要在模型內(nèi)進(jìn)行空間網(wǎng)格的建立。在模型空間中建立x,y,z 三維坐標(biāo)軸,將三維坐標(biāo)軸分成等間距的線段,單位間距長(zhǎng)度為體素的單位長(zhǎng)度。體素的單位大小根據(jù)模型的大小及對(duì)精確度的要求進(jìn)行設(shè)定。規(guī)定空間網(wǎng)格的原點(diǎn)坐標(biāo)為(x0,y0,z0),為模型中的最小坐標(biāo)點(diǎn)。規(guī)定模型中任意網(wǎng)格的坐標(biāo)為(x,y,z)。三維空間網(wǎng)格劃分圖如圖3 所示。
圖3 三維坐標(biāo)空間網(wǎng)格劃分圖
對(duì)于公共建筑而言,室內(nèi)墻體的厚度一般為120mm、180mm、240mm,樓板的厚度為120mm。鑒于30 是120、180、240 的最小公因數(shù)。因此,本研究選取單位大小為30mm×30mm×30mm 的體素塊對(duì)建筑模型進(jìn)行體素化處理。對(duì)模型進(jìn)行體素化處理后的效果圖如圖4 所示。
圖4 空間區(qū)域的體素化
在三維空間網(wǎng)格中完成對(duì)建筑模型體素化處理后,本研究對(duì)模型空間中所有體素塊進(jìn)行三角形約束檢測(cè)。對(duì)不符合三角形約束的冗余體素塊進(jìn)行篩除。保留所有涉及三角形約束的體素塊作為墻和地板的參考。模型空間體素化的流程圖如圖5 所示。
圖5 模型空間體素化流程圖
通常情況下,房間一般是由地板、天花板和四面墻包圍而成的長(zhǎng)方體。一般情況下,室內(nèi)墻壁的高度和地板的高度是有差別的。本文根據(jù)模型體素化后墻體高度和地板高度的差別對(duì)空間進(jìn)行分割,得到房間。以墻體作為劃分房間空間的構(gòu)件,對(duì)空間區(qū)域進(jìn)行體素化處理。圖6 可以近似看成一個(gè)房間的平面圖,這個(gè)房間可以看作是被墻壁包圍而成的立方體,根據(jù)墻體體素塊與地板體素塊高度的差別來分割出房間空間。本文將墻壁的體素塊高度標(biāo)記成1,地板的體素塊高度標(biāo)記成0,設(shè)定被編號(hào)為1 的體素塊包圍而成的編號(hào)為0的區(qū)域定義為1-0 空間。這些1-0 空間可以看作是建筑模型中的房間。1-0 空間示意圖如圖6 所示。
圖6 1-0 空間
體素化之后的模型空間可以看成是由無數(shù)個(gè)1-0 空間組成的空間區(qū)域,將這些1-0 空間全部提取出來即可提取出模型中全部的房間。
為驗(yàn)證本文提出方法的可行性,本文選取某高校實(shí)驗(yàn)室進(jìn)行室內(nèi)空間的提取,該高校實(shí)驗(yàn)室是由科研辦公室和實(shí)驗(yàn)室組成的建筑空間。根據(jù)本文體素化分割空間的方法對(duì)模型進(jìn)行體素化處理,進(jìn)而得到模型空間中獨(dú)立的房間區(qū)域。圖7 為該高校實(shí)驗(yàn)室的模型圖。
圖7 實(shí)驗(yàn)室BⅠM 模型圖
本文選用單位大小為30mm 的體素塊對(duì)模型空間進(jìn)行分割。由于無法保證模型本身的三維坐標(biāo)系中x,y 軸分別平行于建筑模型底板的寬度和長(zhǎng)度,因此在按照模型坐標(biāo)系對(duì)模型進(jìn)行體素化處理后,體素塊呈現(xiàn)的方向與墻體的方向并不一致,而是呈現(xiàn)一定角度的傾斜,但并不干擾實(shí)驗(yàn)結(jié)果。對(duì)該實(shí)驗(yàn)樓模型進(jìn)行體素化處理之后的效果圖如圖8 所示。將墻體的體素塊高度定義為1,地板的體素塊高度定義為0,根據(jù)上一節(jié)中提到的方法,提取建筑模型中的1-0 空間,即為模型中相應(yīng)的房間。依據(jù)此方法提取到該建筑模型室內(nèi)空間的房間,如圖9 所示。
圖8 實(shí)驗(yàn)室體素化效果圖
圖9 實(shí)驗(yàn)室房間提取
本文運(yùn)用體素化分割空間的方法,依據(jù)墻體體素塊高度與地板體素塊高度的差異提取模型中的1-0 空間,進(jìn)而識(shí)別出建筑空間中的房間。本研究對(duì)室內(nèi)導(dǎo)航、環(huán)境模擬以及建筑信息管理應(yīng)用分析等研究具有十分重要的意義,是基于建筑模型相關(guān)研究能夠科學(xué)高效推進(jìn)的前提。