国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - MongoDB - 利用mongodb查詢某坐標是否在規定多邊形區域內的方法

利用mongodb查詢某坐標是否在規定多邊形區域內的方法

2020-05-10 17:23傲雪星楓 MongoDB

這篇文章主要介紹了利用mongodb如何查詢某坐標是否在固定多邊形區域內的方法,文中給出了詳細示例代碼,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。

前言

大家都知道MongoDB是一個基于分布式文件存儲的數據庫,并提供創建基于地理空間的索引的能力,本文將使用MongoDB 基于地理空間索引進行坐標所在區域的判斷及使用。

1.使用百度拾取坐標工具,在地圖上定義多邊形的坐標點,并把每個點的坐標保存。

百度拾取坐標工具:http://api.map.baidu.com/lbsapi/getpoint/

多邊形的坐標點如下:

?
1
2
3
4
5
6
7
8
9
113.314882,23.163055
113.355845,23.167042
113.370289,23.149564
113.356779,23.129758
113.338238,23.13913
113.330979,23.124706
113.313588,23.140858
113.323865,23.158204
113.314882,23.163055

注意:首尾坐標必須一樣,這樣才能使多邊形閉合。

2.使用百度地圖開放平臺地圖JS Demo,把多邊形坐標輸入,看看多邊形是否合適。

百度地圖開放平臺地圖JS Demo:http://developer.baidu.com/map/jsdemo.htm#c2_9

把以下代碼替換源碼編輯器中的內容,然后點擊運行

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<!DOCTYPE html>
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
 <style type="text/css">
 body, html{width: 100%;height: 100%;margin:0;font-family:"微軟雅黑";}
 #allmap {height:100%; width: 100%;}
 #control{width:100%;}
 </style>
 <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密鑰"></script>
 <title>設置線、面可編輯</title>
</head>
<body>
 <div id="allmap"></div>
 <div id="control">
 <button onclick = "polyline.enableEditing();polygon.enableEditing();">開啟線、面編輯功能</button>
 <button onclick = "polyline.disableEditing();polygon.disableEditing();">關閉線、面編輯功能</button>
 </div>
</body>
</html>
<script type="text/javascript">
 // 百度地圖API功能
 var map = new BMap.Map("allmap");
 map.centerAndZoom(new BMap.Point(113.330764,23.155878), 15);
 map.enableScrollWheelZoom();
 
 var polygon = new BMap.Polygon([
 new BMap.Point(113.314882,23.163055),
 new BMap.Point(113.355845,23.167042),
 new BMap.Point(113.370289,23.149564),
 new BMap.Point(113.356779,23.129758),
 new BMap.Point(113.338238,23.13913),
 new BMap.Point(113.330979,23.124706),
 new BMap.Point(113.313588,23.140858),
 new BMap.Point(113.323865,23.158204)
 ], {strokeColor:"blue", strokeWeight:2, strokeOpacity:0.5}); //創建多邊形
 map.addOverlay(polygon); //增加多邊形
</script>

多邊形區域

利用mongodb查詢某坐標是否在規定多邊形區域內的方法

3.定義測試坐標

廣州東站坐標:113.330908,23.155678 (多邊形內)

利用mongodb查詢某坐標是否在規定多邊形區域內的方法

宏發大廈:113.33831,23.137335 (多邊形外)

利用mongodb查詢某坐標是否在規定多邊形區域內的方法

4.在mongodb測試

1.創建數據庫

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use testdb;
 
db.createUser(
 {
 "user":"root",
 "pwd":"123456",
 "roles":[{"role" : "readWrite", "db":"testdb"}]
 }
);
 
db.auth(
 {
 "user":"root",
 "pwd":"123456"
 }
);

2.插入多邊形范圍并添加索引

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
db.geo.ensureIndex(
 {
 polygons: "2dsphere"
 }
);
 
db.geo.insert(
 {
 polygons:
 {
 type:"Polygon",
 coordinates:[[
 [113.314882,23.163055],
 [113.355845,23.167042],
 [113.370289,23.149564],
 [113.356779,23.129758],
 [113.338238,23.13913],
 [113.330979,23.124706],
 [113.313588,23.140858],
 [113.323865,23.158204],
 [113.314882,23.163055],
 ]]
 }
 }
);

3.判斷坐標是否在多邊形區域

廣州東站坐標:113.330908,23.155678

?
1
2
3
4
5
6
7
8
9
10
11
12
13
db.geo.find(
 {
 polygons:
 {
 $geoIntersects:
 {
 $geometry:{
  "type" : "Point",
  "coordinates" : [113.330908,23.155678] }
 }
 }
 }
);

輸出:

?
1
{ "_id" : ObjectId("57c2b1895fb7fd4790f9f099"), "polygons" : { "type" : "Polygon", "coordinates" : [ [ [ 113.314882, 23.163055 ], [ 113.355845, 23.167042 ], [ 113.370289, 23.149564 ], [ 113.356779, 23.129758 ], [ 113.338238, 23.13913 ], [ 113.330979, 23.124706 ], [ 113.313588, 23.140858 ], [ 113.323865, 23.158204 ], [ 113.314882, 23.163055 ] ] ] } }

表示坐標 113.330908,23.155678 在多邊形區域內

宏發大廈:113.33831,23.137335

?
1
2
3
4
5
6
7
8
9
10
11
12
13
db.geo.find(
 {
 polygons:
 {
 $geoIntersects:
 {
 $geometry:{
  "type" : "Point",
  "coordinates" : [113.33831,23.137335] }
 }
 }
 }
);

輸出:

表示坐標 113.33831,23.137335 在多邊形區域外

總結

以上就是利用mongodb判斷坐標是否在指定多邊形區域內的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

原文鏈接:http://blog.csdn.net/fdipzone/article/details/52374630

延伸 · 閱讀

精彩推薦
  • MongoDBMongoDB憑什么躋身數據庫排行前五

    MongoDB憑什么躋身數據庫排行前五

    MongoDB以比去年同期超出65.96分的成績繼續雄踞榜單前五,這個增幅在全榜僅次于PostgreSQL的77.99,而其相對于4月份的6.10分的增長也是僅次于微軟SQL Server排名...

    孫浩峰3892020-05-22
  • MongoDBmongodb基本命令實例小結

    mongodb基本命令實例小結

    這篇文章主要介紹了mongodb基本命令,結合實例形式總結分析了MongoDB數據庫切換、查看、刪除、查詢等基本命令用法與操作注意事項,需要的朋友可以參考下...

    dawn-liu3652020-05-26
  • MongoDBMongoDB安裝圖文教程

    MongoDB安裝圖文教程

    這篇文章主要為大家詳細介紹了MongoDB安裝圖文教程,分為兩大部分為大家介紹下載MongoDB和安裝MongoDB的方法,感興趣的小伙伴們可以參考一下 ...

    Yangyi.He6132020-05-07
  • MongoDB遷移sqlserver數據到MongoDb的方法

    遷移sqlserver數據到MongoDb的方法

    這篇文章主要介紹了遷移sqlserver數據到MongoDb的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下...

    聽楓xl9682021-01-03
  • MongoDB分布式文檔存儲數據庫之MongoDB分片集群的問題

    分布式文檔存儲數據庫之MongoDB分片集群的問題

    這篇文章主要介紹了分布式文檔存儲數據庫之MongoDB分片集群的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋...

    Linux-18743072020-12-20
  • MongoDBMongoDB 內存使用情況分析

    MongoDB 內存使用情況分析

    都說 MongoDB 是個內存大戶,但是怎么知道它到底用了多少內存呢...

    MongoDB教程網10002020-09-29
  • MongoDBMongodb實現定時備份與恢復的方法教程

    Mongodb實現定時備份與恢復的方法教程

    這篇文章主要給大家介紹了Mongodb實現定時備份與恢復的方法教程,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面...

    chenjsh364522020-05-13
  • MongoDBMongoDB中javascript腳本編程簡介和入門實例

    MongoDB中javascript腳本編程簡介和入門實例

    作為一個數據庫,MongoDB有一個很大的優勢——它使用js管理數據庫,所以也能夠使用js腳本進行復雜的管理——這種方法非常靈活 ...

    MongoDB教程網6982020-04-24
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 久久久久久久久国产成人免费 | 成人在线看片 | 性欧美另类 | 国产人久久人人人人爽 | 亚洲综合无码一区二区 | www久久精品 | av免费在线观看网站 | 影音先锋亚洲资源 | av黄色在线免费观看 | 亚洲欧美一区二区三区久久 | 91免费网| 91精品国产综合久久香蕉的用户体验 | 久久精品综合 | 亚洲网色| 亚洲精品久久久久久久久久久 | 免费成人黄色 | 一 级 黄 色 片免费网站 | 免费国产一区 | 啵啵羞羞影院 | 精品婷婷 | 国产精品日韩欧美一区二区三区 | 国产一区二区三区高清 | 国产成年人网站 | 美女国产精品 | 毛片在线视频 | 四影虎影ww4hu55.com | 久久国产区 | 日本一区二区精品 | 国产精品久久久久久中文字 | 精品国产一区二区三区在线观看 | 国产精品毛片久久久久久久av | 精品成人 | 毛片久久久久久 | 亚洲国产成人av好男人在线观看 | 午夜小电影 | 午夜黄色影院 | av成人在线观看 | 欧美成人激情 | 欧美操操操 | 伊人激情网 | 精品一区二区在线观看 |