利用PostGIS中的九交模型解決選址問題

1. 問題描述

  • 有一批港口的選址方案滥壕,符合標準的選址方案是:港口(線型)的一端必須與湖岸相交纸颜,并且港口的所有其他部分都要在湖中。目前有5個選址的方案绎橘,這些方案哪些是符合標準的胁孙?
file

2. 九交模型介紹

2.1 空間要素的組成部分

  • 首先,定義所有的空間要素都有

    • 內(nèi)部(interior)
    • 邊界(boundary)
    • 外部(exterior)
  • 面:

    file

  • 線:


    file
  • 點:
    I B(為空) E


    file

2.2 九交模型

兩個幾何圖形的空間關(guān)系称鳞,可以用以下矩陣表示:

file

舉例來說涮较,就是以下的表達方式,點-點冈止、點-線狂票、點-面、線-線熙暴、線-面闺属、面-面的空間關(guān)系可以依次推導:


file

2.3 一些典型的空間關(guān)系

OGC中標準的空間關(guān)系

序號 空間關(guān)系 中文名稱 pg函數(shù) 解釋 相交關(guān)系
1 Contains / Inside 包含 一個幾何圖形的內(nèi)部完全包含了另一個幾何圖形
file
2 Croses 交叉、穿過 一個幾何圖形的內(nèi)部和另一個幾何圖形的邊界和內(nèi)部相交周霉,在不同維度圖形使用掂器,如線和面
file
3 Disjoint 分離 兩個幾何圖形的邊界和內(nèi)部不相交
file
4 Equal 相等 兩個幾何圖形具有相同的邊界和內(nèi)部
file
5 Intersects 相交 兩個幾何圖形沒有分離(Non-Disjoint) 除了分離以外的所有情況
6 Overlaps 重疊 兩個圖形的邊界和內(nèi)部相交(Intersect)
file
7 Touch 接觸 兩個幾何圖形的邊界相交,但是內(nèi)部不相交
file
8 Within 包含于 一個幾何圖形的內(nèi)部和邊界完全在另一個幾何圖形的內(nèi)部
file

2.4 擴展

三維空間拓撲關(guān)系
點-點空間關(guān)系2種:相離俱箱、相等唉匾;
點-線空間關(guān)系3種:相離、相接、包含于巍膘;
點-面空間關(guān)系3種:相離厂财、相接、包含于璃饱;
點-體空間關(guān)系3種:相離荚恶、相接磷支、包含于;
線-線空間關(guān)系7種:相離廓潜、相交、交疊挽霉、相等悼院、相接咒循、包含于、包含昨凡;
線-面空間關(guān)系5種:相離便脊、相接光戈、進入、穿越晌杰、包含于筷弦;
線-體空間關(guān)系5種:相離抑诸、相接蜕乡、進入层玲、穿越反症、包含于;
面-面空間關(guān)系10種:相離润绵、相接胞谈、交疊、相等悔叽、包含于爵嗅、包含笨蚁、覆蓋、被覆蓋伪很、穿越锉试、被穿越览濒;
面-體空間關(guān)系8種:相離、相接应又、交疊乏苦、進入、包含于洞就、包含奖磁、穿越、被穿越秕狰;
體-體空間關(guān)系8種:相離躁染、相接、進入我衬、相等挠羔、包含于埋嵌、包含、穿越范舀、被穿越了罪。

3. 如何在PostgreSQL中利用9交模型解決碼頭選址問題泊藕?

3.1 分析:

碼頭必須擁有以下特征:

  • 碼頭一端與湖岸相接→B(a)∩B(b) = 0
  • 碼頭在湖中→I(a)∩I(b) = 1
  • 碼頭不在湖以外的地區(qū) → I(a)∩E(b) = F
  • 碼頭的另外一端在湖中 → B(a)∩I(b) = 0

所以整理得到九交滿足的碼頭標準為:1FF00F212

file

3.2 計算過程

    1. 數(shù)據(jù)初始化
CREATE TABLE lakes ( id serial primary key, geom geometry ); --創(chuàng)建帶有坐標的geom表
CREATE TABLE docks ( id serial primary key, good boolean, geom geometry ); --創(chuàng)建碼頭表
INSERT INTO lakes ( geom ) VALUES ( 'POLYGON ((100 200, 140 230, 180 310, 280 310, 390 270, 400 210, 320 140, 215 141, 150 170, 100 200))'); -- 初始化數(shù)值

INSERT INTO docks ( geom, good ) VALUES ('LINESTRING (170 290, 205 272)',true),('LINESTRING (120 215, 176 197)',true),('LINESTRING (290 260, 340 250)',false),('LINESTRING (350 300, 400 320)',false),('LINESTRING (370 230, 420 240)',false),('LINESTRING (370 180, 390 160)',false); --初始化碼頭

file
    1. 進行相交分析
SELECT docks.* FROM docks JOIN lakes ON ST_Intersects(docks.geom, lakes.geom) WHERE ST_Relate(docks.geom, lakes.geom, '1FF00F212');--ST_Intersects先進行求交運算玫锋,判斷

4. 9交模型的運算效率如何景醇?

  • 敬請期待

參考博客:
點線面拓撲關(guān)系
代數(shù)拓撲
維數(shù)擴展的9交集模型

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末三痰,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子散劫,更是在濱河造成了極大的恐慌,老刑警劉巖赖条,帶你破解...
    沈念sama閱讀 219,110評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件纬乍,死亡現(xiàn)場離奇詭異仿贬,居然都是意外死亡墓贿,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評論 3 395
  • 文/潘曉璐 我一進店門队伟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來嗜侮,“玉大人代嗤,你說我怎么就攤上這事缠借。” “怎么了硝逢?”我有些...
    開封第一講書人閱讀 165,474評論 0 356
  • 文/不壞的土叔 我叫張陵渠鸽,是天一觀的道長徽缚。 經(jīng)常有香客問我革屠,道長排宰,這世上最難降的妖魔是什么板甘? 我笑而不...
    開封第一講書人閱讀 58,881評論 1 295
  • 正文 為了忘掉前任盐类,我火速辦了婚禮呛谜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘硬毕。我一直安慰自己礼仗,他們只是感情好,可當我...
    茶點故事閱讀 67,902評論 6 392
  • 文/花漫 我一把揭開白布韭脊。 她就那樣靜靜地躺著沪羔,像睡著了一般象浑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上篓吁,一...
    開封第一講書人閱讀 51,698評論 1 305
  • 那天杖剪,我揣著相機與錄音驰贷,去河邊找鬼。 笑死次兆,一個胖子當著我的面吹牛锹锰,可吹牛的內(nèi)容都是我干的狈邑。 我是一名探鬼主播米苹,決...
    沈念sama閱讀 40,418評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼蘸嘶,長吁一口氣:“原來是場噩夢啊……” “哼陪汽!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起况增,我...
    開封第一講書人閱讀 39,332評論 0 276
  • 序言:老撾萬榮一對情侶失蹤澳骤,失蹤者是張志新(化名)和其女友劉穎澜薄,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體颊艳,經(jīng)...
    沈念sama閱讀 45,796評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡棋枕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,968評論 3 337
  • 正文 我和宋清朗相戀三年重斑,在試婚紗的時候發(fā)現(xiàn)自己被綠了舟山。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片卤恳。...
    茶點故事閱讀 40,110評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡突琳,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出拆融,到底是詐尸還是另有隱情啊终,我是刑警寧澤傲须,帶...
    沈念sama閱讀 35,792評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站例衍,受9級特大地震影響已卸,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜梦抢,卻給世界環(huán)境...
    茶點故事閱讀 41,455評論 3 331
  • 文/蒙蒙 一奥吩、第九天 我趴在偏房一處隱蔽的房頂上張望蕊梧。 院中可真熱鬧,春花似錦绩脆、人聲如沸橄抹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽疟羹。三九已至,卻和暖如春参淫,著一層夾襖步出監(jiān)牢的瞬間愧杯,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評論 1 272
  • 我被黑心中介騙來泰國打工耍铜, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人陡舅。 一個月前我還...
    沈念sama閱讀 48,348評論 3 373
  • 正文 我出身青樓伴挚,卻偏偏與公主長得像,于是被迫代替她去往敵國和親摊灭。 傳聞我的和親對象是個殘疾皇子败徊,可洞房花燭夜當晚...
    茶點故事閱讀 45,047評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 如題皱蹦,以下僅在2D討論 點集拓撲學:通過邊界和內(nèi)部兩個點集的交進行定義。 1.描述的是什么沈自? 拓撲關(guān)系。 用來描述...
    麥三刀閱讀 10,851評論 0 2
  • 1. 圖形推理命題形式(3.47) 一組圖 (常見) 兩組圖 (常見) 九宮格 (常見) 分組分類 空間類(折紙盒...
    師從小馬哥閱讀 1,590評論 0 0
  • 空間關(guān)系描述是GIS系統(tǒng)的基本功能之一。我在學校學習到的空間關(guān)系分為三種:方位關(guān)系籍滴、距離關(guān)系、拓撲關(guān)系晚岭。今天我要分...
    winar2008閱讀 12,638評論 0 54
  • from PostgreSQL+PostGIS 的使用 一勋功、PostGIS中的幾何類型 PostGIS支持所有O...
    山華水清閱讀 6,964評論 0 5
  • 九月跟老公離婚了要销,不為別的,因為累疏咐。 她是再婚的,老公死的早借跪。重新嫁了個男的吧酌壕,恨不得拉泡屎都扯上她。 她老公做個...
    艾米李園閱讀 372評論 0 0