覃俊+錢樂祥+吳志峰+俞佳穎+朱曄臣
摘 要: 古建筑結(jié)構(gòu)的不規(guī)則性與特殊性是對其進(jìn)行三維建模的難點。文章基于CityEngine三維建模平臺,以佛山市大旗頭村古建筑群及其特色封火墻為研究對象,利用SketchUp輔助設(shè)計軟件構(gòu)建部件模型庫,在CityEngine中構(gòu)建復(fù)雜山墻,建立整個村落的精細(xì)模型,并基于二維GIS數(shù)據(jù)建立古建筑數(shù)據(jù)庫。研究結(jié)果表明,結(jié)合CityEngine與SketchUp的三維建模體系,可以很好地構(gòu)建研究區(qū)的精細(xì)模型,對古村落、古建筑的數(shù)字化保護(hù)具有重要的意義。
關(guān)鍵詞: 三維建模; CityEngine; SketchUp; GIS; 封火墻
中圖分類號:TP391.72 文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2017)11-39-04
3D modeling of south of the five ridges featured banking fire wall
based on CityEngine and SketchUp
Qin Jun, Qian Lexiang, Wu Zhifeng, Yu Jiaying, Zhu Yechen
(School of Geographical Sciences, Guangzhou university, Guangzhou, Guangdong 510006, China)
Abstract: The irregularity and particularity of ancient architecture is the difficulty to build its 3D model. The research based on the CityEngine modeling platform, taking the groups of ancient architecture of Daqitou village in Foshan city and the distinctive banking fire wall as the research object, uses software design aids SketchUp to build component model library, structures complex gables and detailed model of the whole village on the CityEngine modeling platform, and based on the two-dimensional GIS data, establishes database of ancient buildings. The conclusion of the research shows that the 3D modeling system combined with CityEngine and SketchUp is a good way to build a detailed model in study area and has vital significance for the digital protection of ancient village and ancient architecture.
Key words: 3D modeling; CityEngine; SketchUp; GIS; banking fire wall
0 引言
流傳至今的傳統(tǒng)村落,是人類幾百年甚至上千年形成的一種較為科學(xué)的生活系統(tǒng),其古建筑作為人類文明的積淀,具有極高歷史、人文、藝術(shù)等研究價值。伴隨城市化進(jìn)程,城市內(nèi)部及周邊的傳統(tǒng)村落大多消失;農(nóng)村勞動力涌向發(fā)達(dá)城市,在取得一定經(jīng)濟(jì)條件后返鄉(xiāng)建房,導(dǎo)致許多傳統(tǒng)村落不同程度上受到破壞。隨著人們物質(zhì)生活水平的提高,大部分傳統(tǒng)建筑已經(jīng)無法滿足當(dāng)代人的生活需求,然而那些正在消失或已經(jīng)消失的傳統(tǒng)村落及其建筑中所承載的歷史文化價值是不可估量的。因此,對傳統(tǒng)建筑、文物古跡等物質(zhì)文化遺產(chǎn)進(jìn)行全方位保護(hù)刻不容緩。但是由于實物保護(hù)受限于其生命周期,不可能長久保存[1],三維建模技術(shù)成為主要手段。
嶺南傳統(tǒng)建筑文化是華夏文化的一個重要組成部分,同時是具有鮮明特色的一個重要建筑流派。因該地區(qū)地形復(fù)雜、民族多,各地風(fēng)俗不同,民宅類型多樣[2],封火墻造型迥異,有鑊耳墻造型、方耳山墻造型、三拱山墻造型、人字山墻造型等[3],結(jié)構(gòu)復(fù)雜、部件繁多。CityEngine作為一款主流的快速建模軟件,擁有與ArcGIS無縫對接的優(yōu)勢[4],可以通過CGA規(guī)則直接調(diào)用GIS基礎(chǔ)數(shù)據(jù),實現(xiàn)二維矢量數(shù)據(jù)到三維模型的快速、批量構(gòu)建,并且能夠結(jié)合實體內(nèi)部參數(shù)構(gòu)建可重用模型[5],被廣泛應(yīng)用于數(shù)字城市、城市規(guī)劃、建筑、虛擬現(xiàn)實等領(lǐng)域。但是,CityEngine CGA規(guī)則在構(gòu)建建筑屋頂及復(fù)雜山墻中存在局限性。針對該問題,有學(xué)者運用調(diào)整分割方式[6]、優(yōu)化CGA規(guī)則[1]等方法,較好地實現(xiàn)了復(fù)雜屋頂及墻面的精細(xì)建模,但是算法復(fù)雜,并一定程度增加了程序運算的負(fù)擔(dān)。直接導(dǎo)入第三方軟件構(gòu)造的復(fù)雜模型可以省去繁瑣的分割步驟,提高運算效率,并增加模型的精細(xì)程度。Google SketchUp軟件具有方便易用、精確高效、兼容性強(qiáng)等特點[7],其手動建模能力可以快速構(gòu)建精細(xì)、美觀、數(shù)據(jù)量小的不規(guī)則建筑部件模型,能夠?qū)С鲈贑ityEngine中使用的格式,通過CGA規(guī)則調(diào)用,與快速構(gòu)建的建筑主體模型組合生成高精度、高質(zhì)量的古建筑模型,為建立大范圍精細(xì)復(fù)雜模型提供方法依據(jù)。
1 數(shù)據(jù)與方法
1.1 研究區(qū)概況
佛山市樂平鎮(zhèn)大旗頭村是第一批“中國歷史文化名村”,同時也是第一批“中國傳統(tǒng)村落”。始建于明初,其鼎盛時期為清光緒年間,現(xiàn)今仍有清代建筑200余間,整個主體古建筑群保存完整[8]。大旗頭古村落具有深厚的歷史文化底蘊(yùn),其鑊耳形封火墻具有防火、防風(fēng)、遮陽、裝飾等作用[2],是嶺南民居最具鮮明的特色,體現(xiàn)了我國古代建筑的藝術(shù)性、科學(xué)性。endprint
1.2 二維數(shù)據(jù)采集與處理
CityEngine是基于二維數(shù)據(jù)的建模,數(shù)據(jù)的準(zhǔn)確性決定著模型的精細(xì)程度,對古建筑數(shù)據(jù)的精確采集與處理,是高精度、高質(zhì)量三維建模的基礎(chǔ)。傳統(tǒng)測繪中的鋼尺、水準(zhǔn)儀等無法滿足對古建筑高精度調(diào)研需求[9],因此本實驗采用實地調(diào)研的方式,用手持GPS獲取控制點的位置、高程數(shù)據(jù),進(jìn)行坐標(biāo)系統(tǒng)轉(zhuǎn)換,建立地理位置X、Y、Z的數(shù)據(jù)表格,添加到ArcGIS中,得到控制點數(shù)據(jù)[10],并通過構(gòu)建三角網(wǎng),生成DEM高程影像數(shù)據(jù)。由于研究區(qū)范圍小,古村落中地物在一般分辨率遙感影像圖中無法體現(xiàn),需要高分辨率遙感影像。本文采用Google Earth影像數(shù)據(jù),在ArcGIS中利用Georeferencing工具選取配準(zhǔn)控制點進(jìn)行配準(zhǔn)。對建筑物、道路、公共設(shè)施等進(jìn)行矢量化,結(jié)合調(diào)研信息建立古建筑群二維信息數(shù)據(jù)庫,包含的屬性字段有建筑類型、面積、屋頂類型、是否廢棄、CGA規(guī)則等。表1為二維信息屬性表。
二維數(shù)據(jù)采集及處理流程如圖1所示。
1.3 基于CityEngine的建筑主體建模
基于CGA規(guī)則的三維建模首先是對建筑單體的建模,然后根據(jù)二維地物的屬性分別應(yīng)用不同的規(guī)則文件,通過調(diào)整預(yù)先設(shè)定的參數(shù),實現(xiàn)各類地物的差異化精細(xì)建模。CGA規(guī)則建模的關(guān)鍵是對建模對象進(jìn)行三維空間中的切割,其合理程度及細(xì)節(jié)處理方式直接決定了模型的精確性。根據(jù)大旗頭村單體建筑結(jié)構(gòu),將二維平面分割為大廳及臥室(mainHouse)、廚房(kichen)、天井(courtYard)、院墻(TGCFwall)、封火墻(gableWall),并分別設(shè)定寬度變量,實現(xiàn)代碼如下:
@Group("houseFrame",3) @Range(3,5)
attr mainHeight=4
@Group("houseFrame",3) @Range(2,6)
attr kichenWidth=3
attr kichenLong=2
attr kichenHeight=3
attr TGCFHeight=mainHeight
attr gableWallHeight=1.2*mainHeight
@StartRule
Lot-->
Mass
Mass-->
split(z) {
0.5:TGCFwall |kichenLong:Kichen
|~1:split(x) {1:gableWall|~1:split(z) {~1:
mainHouse(split.index)|0.5:mainRidge
|~1:mainHouse(split.index)}
|1:gableWall}}
由于CityEngine中不包含單獨構(gòu)建屋檐的規(guī)則方法,本研究在房屋主體(mainHouse)的前面指定高度(eavesHeight)處切割出長度為天井寬度,厚度為0.01米的薄片,拉伸一定寬度,將此部件的上部定義為斜坡屋頂,調(diào)節(jié)角度變量使此斜坡屋頂與房屋主體雙向斜坡屋頂在同一個二維平面上(屋檐效果圖見圖2)。核心代碼如下:
mainFace--> //房屋正面
split(y) { kichenHeight+ 2.5:
mainDoorH |0.01:feiYanEx |~1:mainWall }
feiYanEx--> //屋檐
extrude(2.5)
comp(f) { back : feiYanRoof |all:mainWall }
feiYanRoof--> //屋檐頂
roofShed(11, 2)
comp(f) { top:topMainFace| side:mainWall }
1.4 基于Google Sketchup的建筑部件建模
大旗頭村封火墻,形狀奇特,形似舊時官員的官帽而又被稱為“鰲魚墻”,有“獨占鰲頭”之意,如圖3所示,可以分解為矩形墻主體與上部不規(guī)則曲線,脊瓦厚重,以適應(yīng)南方多暴風(fēng)雨天氣。在Sketchup中操作如下:
⑴ 對封火墻進(jìn)行幾何分割(圖4);
⑵ 各部位分別拉伸一定厚度;
⑶ 將屋頂及院墻瓦片、脊瓦分別建模,增強(qiáng)其適用性(圖5(a),圖5(b));
⑷ 采用“路徑跟隨”功能生成頂部不規(guī)則曲線脊瓦;
⑸ 設(shè)置對應(yīng)映射的紋理(圖6)。
將各模型部件導(dǎo)出obj或者dae格式,保存紋理,在CityEngine中調(diào)用,只需調(diào)整角度及尺寸即可重用。
1.5 基于CityEngine的建筑部件組合及批量建模
將原模型屋頂貼圖及封火墻分別用部件模型替代。對所有屋頂進(jìn)行“A|B|A”的重復(fù)分割,并分別填充瓦片和脊瓦的模型,調(diào)節(jié)尺寸大小,實現(xiàn)屋頂精細(xì)建模。在封火墻(gableWall)結(jié)構(gòu)上加載封火墻模型,調(diào)節(jié)方向、高度、寬度等完成模型組合。核心代碼如下:
waJiLongObj ="facades/textures/WaJ.obj" //脊瓦
waPianObj ="facades/textures/waPian.obj" //瓦片
gableWallObj ="facades/textures/gableWall.obj"http://山墻
topFace-->
split(y) { 0.4:stoneFaceendprint
|~1:split(x) {~waSize : waJi }*
| wuJiSize:wuJi }
erGuoWall-->
s('1, '1,'1.01)
rotateScope(0, 0, 0)
i(gableWallObj)
2 結(jié)果與分析
2.1 結(jié)果對比
古建筑單體模型的構(gòu)建完成后,導(dǎo)入DEM數(shù)據(jù)、影像數(shù)據(jù),疊加建立虛擬地形,編寫規(guī)則隨機(jī)生成周邊次要地物,根據(jù)二維地圖屬性自動生成古建筑群及周邊植被、建筑物、水體等,最終模型效果見圖7(a)、圖7(b)。
僅使用CityEngine建模只能完成模型主體,對屋頂?shù)慕4嬖诰窒扌?,且無法單獨對山墻進(jìn)行處理及構(gòu)建瓦片、脊瓦小模型,封火墻也無法得到體現(xiàn),瓦片與脊瓦等重要元素只能采用紋理映射的方式展示(圖8)。
2.2 分析與討論
CityEngine不支持單獨對山墻、瓦片等處理,但是可以將第三方軟件(如Sketchup、3D Max等)構(gòu)建的精細(xì)模型部件,通過格式轉(zhuǎn)換導(dǎo)入CityEngine中,調(diào)整尺寸、角度、方向等參數(shù)實現(xiàn)模型組合,很大程度上提高了建模工作的效率,使模型的可視化效果更逼真、美觀。Sketchup是一套直接面向設(shè)計方案創(chuàng)作過程的設(shè)計工具,方便易用,同時其精度可以達(dá)到毫米級,適用范圍廣闊,可以快速導(dǎo)入和導(dǎo)出3DS、dae、obj等格式文件,能夠很好的與CityEngine結(jié)合。
運用該方法,能夠?qū)崿F(xiàn)大旗頭村特色古建筑及封火墻的精細(xì)建模,房屋構(gòu)造分割科學(xué),各細(xì)節(jié)部分(如院墻彩繪、“天官賜?!贝u)單獨映射紋理,場景細(xì)膩逼真。院門、瓦片與脊瓦進(jìn)行了差異化處理,采用隨機(jī)函數(shù)隨機(jī)選取應(yīng)用于模型中,使模型更貼切實際。建立了古建筑信息數(shù)據(jù)庫,為后續(xù)的古村落空間分析及相關(guān)系統(tǒng)開發(fā)提供數(shù)據(jù)基礎(chǔ)。
但是,由于部件模型如瓦片、脊瓦等模型太多,極大增加了顯示負(fù)擔(dān)。此外,CityEngine是在二維數(shù)據(jù)的基礎(chǔ)上構(gòu)建三維模型,對二維數(shù)據(jù)存在依賴性,其建筑主體的準(zhǔn)確性由二維數(shù)據(jù)的精度決定,因此在后續(xù)開展的基于CityEngine的古建筑模型建模中可以采用更加精確的測量方式獲取二維數(shù)據(jù)。Sketchup輔助設(shè)計軟件依賴于手動操作,其細(xì)膩程度取決于人工,雖然能夠完成整個古建筑模型的構(gòu)建,但是面對批量、大范圍模型需求,需要花費大量的時間成本與人工成本。
3 結(jié)論
針對嶺南特色古建筑結(jié)構(gòu)的復(fù)雜性與單棟建筑的特殊性,本文結(jié)合CityEngine與Sketchup建模軟件,對中國傳統(tǒng)村落佛山市大旗頭村古建筑群及其封火墻的三維建模進(jìn)行研究,改進(jìn)CityEngine在構(gòu)建復(fù)雜山墻及屋頂方面存在的局限性,利用Sketchup建立封火墻及瓦片等部件模型庫,通過在CityEngine中CGA規(guī)則調(diào)用,調(diào)整代碼及模型體塊的參數(shù)實現(xiàn)了部件與主體的契合與單棟建筑間的差異化建模。
本建模體系可以應(yīng)用于其他古村落建模中,其中部件模型庫的構(gòu)建可以使用基于三維激光掃描點云數(shù)據(jù)替代,以提高細(xì)膩程度與精確度,同時支持模型網(wǎng)絡(luò)發(fā)布,為應(yīng)用系統(tǒng)的二次開發(fā)提供數(shù)據(jù)基礎(chǔ)。
參考文獻(xiàn)(References):
[1] 劉媛,鄧運員,劉立生等.City Engine CGA支持下的傳統(tǒng)民居
復(fù)雜屋頂建模及優(yōu)化[J].測繪通報,2016.3:98-102
[2] 鄧其生.嶺南古建筑文化特色[J].建筑學(xué)報,1993.12:16-18
[3] 王凌楓.關(guān)于嶺南民居封火墻造型藝術(shù)的探討[J].普洱學(xué)院
學(xué)報,2016.32(1):110-111
[4] 駱燕文,何江.City Engine規(guī)則建模在城市規(guī)劃中的應(yīng)用研
究[J/OL].國際城市規(guī)劃,http://www.cnki.net/kcms/detail/11.5583.tu.20160829.0939.001.html.
[5] Hu X,Liu X,He Z,et al. Batch modeling of 3D city based on
Esri cityEngine[C]// IET International Conference on Smart and Sustainable City,2013:69-73
[6] 韓東成,唐志敏,張守文等.基于CityEngine與CGA規(guī)則構(gòu)建
3D室外及室內(nèi)精細(xì)模型的研究[J].電子世界,2014.14:363
[7] 范明華,杜甘霖,任家勇.Sketch Up大區(qū)域三維建模技術(shù)研
究[J].測繪通報,2012.5:56-58
[8] 余琳,張智威.古村落保護(hù)性開發(fā)研究:以佛山大旗頭村古村
落為例[J].價值工程,2014.6:314-316
[9] 邢昱,范張偉,吳瑩.基于GIS與三維激光掃描的古建筑保護(hù)
研究[J].地理空間信息,2009.7(1):88-90
[10] 查際泓,何夏萍.GPS數(shù)據(jù)導(dǎo)入ArcGIS的簡易方法[J].安徽
林業(yè)科技,2014.40(4):67-69endprint