tft每日頭條

 > 生活

 > 地圖怎麼建模做鳥瞰圖

地圖怎麼建模做鳥瞰圖

生活 更新时间:2024-07-29 03:07:15

如果剛好你身處一個城市設計所,那經常做投标做的醉生夢死的你應該非常能理解這個從地形圖轉化到可視化三維模型的需求是有多少工作量吧?

為什麼這樣說呢?其實并不是過程中的技術含量有多少,而是因為這個過程要處理的數據量巨大,CAD的孱弱處理能力每每到這時候就展露無遺。就像我當年研一做湯山項目時曾錯誤地以為CAD能夠直接打印一個合并後接近200mb的地形圖文件,結果發現我光打開就花了半個鐘啊

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)1

!!隻聽到筆記本的風扇像拉着破車的老黃牛一樣掙紮了半天,然後把我的CAD程序卡下線了.......奮戰到淩晨還是隻能放棄,最後手工分地塊處理打印。

回歸話題,跟以往的思路一樣,遇到不會的問題就想辦法拆解成以前遇到的問題,分而治之。那我們可以分成兩步:一是環境要素的處理,像等高線、高程點、道路、水系這類;二是建築要素的處理,就是把建築輪廓線和層數進行關聯,再想辦法拉伸成有高度的體塊。

01 如何處理環境要素?

這個就簡單很多了。

基本上隻要在百度上搜索過“CAD”“等高線”“地形”“湘源控規”這些關鍵詞的,跳出來的前十條都會有介紹湘源控規、SU等轉地形的教程。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)2

不過這不是我們的重點,因為這些都屬于數據量比較小的情況,數據量小的話用各種姿勢最後都能處理出來,但我面對的是一個打開都費勁的地形圖,所以pass掉。

這種大數據量 結構化的數據還是得用FME做預處理。

用FME inspector查看一下數據,發現圖層數不多且基本都是标準化的測繪圖圖層,基本上都是拼音首字母的簡寫:DGX等高線、GCD高程點、DLSS道路設施、SXSS水系設施、GXYZ各類管線、JMD居民點、JMDOUT居民點建築輪廓線,等等,遇到不懂的話百度之。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)3

我們需要兩類數據導入到GIS中進行下一步處理:

一是DGX等高線、GCD高程點,可以導到GIS生成TIN模型、再生成DEM就可以做山體陰影或者分層設色的渲染了;

二是DLSS道路設施、SXSS水系設施、GXYZ各類管線,這些隻需要作為表達性要素即可。

那就用FME workbench簡單建個模闆分類導出成shp吧。

主要用tester轉換器分層篩選下要導出哪個layer?是否需要要素本身具有elevation的屬性?需要留意一下通過條件裡是要選“or”還是“and”。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)4

然後就獲得了如下shp:

XZ-DGX(現狀等高線)、XZ-GCD(現狀高程點)

XZ-DLSS(現狀道路設施)、XZ-SXSS(現狀水系設施)、XZ-GXYZ(現狀各類管線)

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)5

在FME中利用RasterDEMGenerator模塊可以很快生成能導入到GIS中的DEM地形栅格,這裡為了減少運算數據量把像元大小設置成20m*20m,表示一個像素值代表現實中的400平米。

導入到ArcScene後,在圖層屬性中“基本高度”設置為“在自定義表面浮動”,就能顯示成有高差起伏的地形圖。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)6

再按照需求設置渲染顔色。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)7

加上現狀道路設施。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)8

加上現狀管線和分層設色的等高線。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)9

再利用之前教過的GlobalMapper一鍵生成的潛在彙水線分析,詳見這篇:教程 | 甲方沒有給地形圖要怎麼做彙水分析呢?這裡我設置的阈值是5000,多試兩次就能發現,stream cell count的阈值越大、留下的彙水線越粗、也就更大概率是主要河流的走向。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)10

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)11

好了,環境要素基本上差不多了,現在就差現狀建築。

02 如何處理建築要素?

主要的思路就是先提取出地形圖中的建築層數标注,再賦值到建築輪廓上,最後根據層數生成高度就好。

那就用FME搭建下吧。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)12

用point on area overlayer點面疊加模塊,實現層數标注賦值到建築輪廓後,會發現CAD地形圖到處的建築層數标注很亂,包括“混5”、“砼6”、“破”等等情況,但我們隻需要裡面的層數信息,那就用string searcher模塊先搜索提取出字段中僅包含正整數的層數。

這裡用到正則表達式的寫法:[1-9]\d*$,表示正整數。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)13

測試一下,是可以正确提取出層數信息。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)14

但還有些是“混”、“破”這些沒有數值,實為1層的建築怎麼辦呢?用string replacer模塊,把剩下的僅有字符的要素替換為1就好。

此處正則寫法是:[一-龥] ,當然也和字符的編碼有關,具體可百度。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)15

測試一下,也能正确識别。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)16

好了,整理完建築輪廓後,導入到ArcScene中,在圖層屬性-拉伸-表達式中輸入“層數*3”得到建築的高度,所有的建築就都能正确顯示高度啦。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)17

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)18

放大看一看。

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)19

地圖怎麼建模做鳥瞰圖(可視化有了地形圖後怎樣把建築和環境建成三維模型呢)20

彙水線、管線走向、等高線、現狀建築都能很直觀地識别出來,有其他限制性要素和規劃用地屬性也可以導進來,基本上能用作方案設計的基礎底圖了。

至于圖紙美化,可以導出eps到PS中進一步處理,就不折騰GIS了。

03 總結

這樣做有什麼好處呢?

可能有人會說我用CAD分層打印 SU模型一樣能做出類似的效果,何必折騰這麼大一圈軟件這麼麻煩?

我認為除了能夠處理更大數據量的優點外,其實可以通過這樣的預處理生成一個可以不斷完善疊加的項目現狀數據庫,統一的地理信息、無損的矢量格式、清晰可見的要素疊加,而且遇到新接手項目的同事還能很快上手了解整個場地的情況,近可深化方案、遠可回歸溯源,還要什麼自行車?

更關鍵的是FME搭建的轉換流可以保存為模闆,複用到下一個項目中,以後隻需要調調參數、拉拉模塊就能很快生成現狀限制性要素數據庫了,長此以往逐漸完成經驗上的積累,把自己的精力放到更有挑戰性、更有價值和創造性的工作上去,多好。


歡迎關注公衆号:平紙雜貨鋪

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved