製圖模型的製作思路與製作
製圖模型是將所研究的數據以及分析過程用圖形來表示。它的目的就是要在研究當中幫助分析人員組織及規劃要完成的分析過程,並且指出用了完成這一分析過程所需的數據。另外,它也用於說明文檔中的素材以及分析研究中的參考。
製作思路
在創建製圖模型過程中,我們發現了一種非常有用的方法,即從最終結果開始,然後按照反向的方式一步一步地走回當前已有的數據。這樣做可以保證避免發生已有數據影響到最終結果的傾向。因此這個過程以定義一個最終結果為開始。它會出現什麼樣的數值?這些數據都意味著什麼?哪些數據是必須的?這些數據是如何派生而來的?以下的例子將說明其過程。
假定我們想要顯示出所有坡度大於20°的地區,我們會這樣問自己,要生成這樣一幅圖像,哪些數據是必須具備的。如要生成一幅坡度大於20°的圖像,反映所有坡度的資料庫里有這樣的圖像嗎?如果沒有,要生成一幅所有坡度的圖像,需要什麼樣的數據?一幅高程數據圖像可用於生成坡度圖像。那么,這幅高程數據圖像有沒有呢?如果沒有的話,生成該圖像需要何種數據?這一過程一直持續,直到我們有這些數據為止。
這些已有的數據可能已經是數位化的形式,或者可能是以紙張地圖的形式,或是表格的形式。後兩者均需要數位化。假如所需數據並不存在,可能需要採取一種方法,以便使用其他的數據圖層,或者某些數據圖像的組合方式來替代。
製作
一旦設計好製圖模型,就可以運行這些模型並得到輸出數據圖層。在IDRISl32的第二個版本中提供了圖形化建模環境——Macro Modeler(宏語言建模器)模組。Macro Modeler用於創建與運行模型。但是,當在Macro Modeler中創建模型時,必須清楚使用哪個模組來生成輸出數據。事實上,它需要用戶從已有數據到最終產品建立模型。因此,首先以示圖的形式創建概念製圖模型,然後在Macro Modeler中建模。在Macro Modeler中建模允許用戶修改模型錯誤及參數,然後重新運行整個模型,而不必手工地運行其中每個單獨的模組。
在示意流程圖中,我們通常總是在模型的左側以最終結果作為開端,如何向右進行,鑒於其連貫性,我們遵從了有關符號學方面的某些常規。數據檔案的表現形式如下圖所示。柵格圖層檔案由長方形組成:矢量圖層檔案由三角形組成;數值檔案由橢圓形組成;而表格檔案則由一個疊起一角的書頁形式表示。在資料庫中,我們用帶有下劃線的數據名稱來識別單個的欄位。檔案名稱寫在符號的內部。
在Macro Modeler中,模組用平行四邊形來表示,模組的名稱用粗體顯示在平行四邊形中。模組用箭頭連線輸入與輸出的檔案。當需要輸入兩個檔案時,將來自這兩個檔案的箭頭合併成一個箭頭,指向模組的符號。
下圖顯示了用於計算上面例子的製圖模型。從一個名為elevation的數值高程模型開始,slope模組用於創建該圖像的輸出檔案slopes。該圖像中包含坡度值,並使用reclass模組創建最終點圖像high slopes,該圖像顯示了坡度大於20°的區域。
下圖也顯示了一個非常簡單的製圖模型的例子。該模型的兩個輸入檔案分別是area與population柵格圖層,使用oVerlay(除法選項)模組生成一人口密度柵格圖像pop_density。
三維空間製圖模型
模型是用來表示實際的或抽象的物體和現象。現實世界中的地理實體可以用形象的直觀的三維空間圖形的模型加以表達。地理實體的模型就其複雜程度而言,可以分為三類:線框模型、面模型和實體模型。
線框模型
線框模型是一種最簡單的幾何模型,主要使用直線、折線、曲線等來表示物體的棱邊形體特徵。線框模型表示頂點信息和邊的信息。這些邊可能是所有頂點中每兩個點間的連線,也可能是這些連線中的一部分。如右圖所示。該圖是某一地物的示意圖,其中的12條邊是8個頂點問所有可能的28條連線中的一部分,用其頂點坐標及邊與頂點之間的關係來表達,如下表中的線框模型所示。這種模型的主要優點是簡單,易於生成各種投影視圖。但它僅僅給出了物體的框架結構,而無法給出物體的表面信息。
面模型
面模型是線上框模型的基礎上增加了有關面與邊的拓撲信息而得,主要使用多邊形、曲面等物體的各個表面單位來表示其形體特徵。這種模型給出了頂點的幾何信息及邊與頂點、面與邊之間的二層拓撲信息。下表線上框模型的基礎上給出了該地物的面模型表示法。與線框模型相比,面模型具有較豐富的形體信息,但它並未指出該物體是實心還是空心,哪裡是物體的內部和外部等信息,因此僅適用於描述物體的外殼。
實體模型
實體模型常用多面體、球體、錐體等基本體素及並、交、差等運算來描述物體,模型複雜,但信息完整。表示實體模型的方法有很多種,如基本體素引用法、單元分解法、空間位置枚舉法、掃描表示法、結構實體幾何法以及邊界表示法等,這裡給出幾種表示方法。
(1)體素模型CSG(constructive solid geometry):即結構實體幾何法,一個複雜實體可表示成為一些簡單實體的某種組合操作。這些簡單實體稱為體素。組合操作有並(union)、交(intersection)、差(difference)等,分別用“∪”、“∩”和“-”操作符來表示。每一體素在參與組合操作之前必須經歷某種變換(包括比例、平移、旋轉等),使它從被定義的狀態變換到被組合狀態。組合而得的中間實體在參與更高層組合之前也可能要經過類似的變換。系統可以通過用戶指定的尺寸、形狀、位置、方向等來定義一組基本體素,然後對這些參數檢查其合理性。一般情況下,體素本身是通過一組由曲面所定義的半空間的交來表示的。
(2)邊界表示法B-Reps(boundary representation):在邊界表示法中一個實體通過包圍它的曲面片或平面多邊形(統稱面片)的集合(邊界)來表示,一個實體的邊界必須將實體內部的點和外部的點區分開來,因此實體的邊界完整地定義了該實體。一個實體的邊界表示必須滿足一定的條件。比如:定義一個實體的邊界的面片的個數有限;任意一個面片都是它的邊界的子集;所有面片的並集定義該實體的邊界;一個面片是它的擴展曲面或平面的一部分;一個面片的範圍有限且是同構的;等等。
以立方體和圓柱體兩個實體來說,它們都有有限個面;立方體的邊界可以很容易地通過邊分成六個平面片;圓柱體的邊界可以比較任意地分成一些圓筒形曲片和上下兩個平面片。在立方體和圓柱體中沒有哪一個面能單獨定義一個完整的物體,即每一面片都是完整邊界的子集。每一面片又是它的擴展曲面(平面)的定界區域。如立方體的每一平面片是一個無限平面的定界區域;圓柱體的圓筒形曲面也是無限長圓筒的定界區域。
平面片可以用邊界線來表示,但曲面片需要較多的信息來表示。例如它可以是由一組特徵點來定義的Bezier曲面,再加上一個由特徵多邊形定義的位於該曲面的封閉曲線。一個物體的邊界可以通過多種方式表示成為一些面、邊和頂點的組合,邊界表示並不唯一。
(3)四叉樹和八叉樹:四叉樹和八叉樹分別是用層次式的二維或三維空間子域劃分來代替大小相等、規則排列的二維或三維單元陣列的一種高效方法。
製圖模型實例
模型1
為了完成對流程模型的驗證,我們將考慮3個基本的模型及其流程圖例子。我們的樣品情況具有分離的題目並在建立模型和繪製流程兩方面使用了相當不同的方式。這將給你許多有選擇性的觀念。
我們以鹿棲息地質量描述性模型開始(Carlson and Fleet,1986),見下圖。這個簡化模型基於有無對鹿生存至關重要的某些要素:水體的能力和供放牧和藏身的植被。水體能力基於水體或水文圖層,而放牧和藏身基於植被生長圖層。牧草通常從葉子落到地上的木質植物獲得。於是,必需的飼料和藏身因素基於將植被覆蓋重新分類成木質灌木叢、樹木等有用植被類型和無用的草本和草地。這個模型對於必需的精確植被類型和是否能飲用水體的類型,在某些程度上是含糊的。還有,很容易想像,怎樣用動物學/行為方面的知識,從可用的圖層獲取這些因素(如動物需要食物、藏身和飲水)。
模型的第二部分設計是基於土地景觀單元構成的空間分布的棲息地質量確定的。這裡主要考慮的是大小,綜合各個景觀單元部分或地塊(如邊界),形成整體。事實上,這是一個將土地景觀空間變數套用到單個種類棲息地的精彩易懂的例子。模型最終的部分總計棲息地質量部分的分離土地景觀部分和得分,或者在這種情況下,通過平均對它們分級,獲取混合的棲息地質量。這一次,怎樣合併簡單的子模型實現相對複雜的鹿棲息地模型十分顯然。通過分離各個系列的操作和各個土地景觀部分,我們可很容易地生成單獨的模型。
模型2
第二個模型是一個更規則性的模型,它試圖定義能夠接受足夠盛行風吹拂安裝風力發電機的區域部分(Carlson和Fleet,1986),見下圖。只有兩個基本圖層:地形高程數據和植被群落。地形圖層揭示出地形坡面的方位和坡向,並被依次(對風力發電機)從最佳到最差歸類。當然,水平地面總的說來最有利,因為沒有障礙,而在我們的例子中,由於盛行風來自北西方向,第二個最佳方向便是北西。當遠離北西方向,受益降低。
我們需要考慮的另一個因素是到障礙物的距離——通過使用功能距離操作很容易獲得在這個模型中使用了稱為“輻射”的命令。發電機要求的高度h',基於障礙物高度和計算的距離,是—個障礙高度與障礙高度減去發電機高度除以距離之間的簡單差額。模型假定塔的高度將不高於80英尺,通過從地形中減去其值,再將與塔高度無關的地點劃分級別。最終,模型將與塔高無關的地點分級,再結合坡向,獲取對風力發電有效的位置。事實上,比起流程圖,它更像是算法。儘管轉換經典流程圖和算法處理二者相對容易,許多人覺得更適合這種食譜方式。