第四組 停車場搜尋系統

9
第第第 第第第第第第第 第第第 第第第 第第第 第第第 第第第

Upload: chelsa

Post on 08-Feb-2016

55 views

Category:

Documents


0 download

DESCRIPTION

第四組 停車場搜尋系統. 第四組 溫允中 陳欣暉 蕭積遠 李雅俐. 本週進度 20111024. 使用 MySQL 尋找鄰近的地點. 如果要在我們  markers  表格中尋找特定經、緯半徑距離內的地點,您可以使用包含半正矢公式 (Haversine Formula) 的  SELECT  陳述式。半正矢公式一般是用於計算一個球體上兩組座標之間的大圓距離。 維基百科 中提供較為深入的數學說明,另外  Movable Type 網站提供與程式設計有關的討論。 - PowerPoint PPT Presentation

TRANSCRIPT

第四組 停車場搜尋系統

第四組溫允中 陳欣暉蕭積遠 李雅俐

本週進度 20111024

名稱 細節 狀態Mysql php 顯示內容 使用 php 讀 mysql 完成感測器 [ 手機 ] 讓手機有更精準的定位 未完成自訂搜索範圍 使用者可以指定搜尋半徑 未完成map 圖釘連結 mysql 將 mysql 資料轉成圖釘 完成Google 帳號連接 規劃中 未完成

使用 MySQL 尋找鄰近的地點• 如果要在我們 markers 表格中尋找特定經、緯半徑距離內的地點,您可以使用包含半正矢公式 (Haversine Formula) 的 SELECT 陳述式。半正矢公式一般是用於計算一個球體上兩組座標之間的大圓距離。維基百科中提供較為深入的數學說明,另外 Movable Type 網站提供與程式設計有關的討論。• 以下的 SQL 陳述式會尋找距離座標 (37, -122) 半徑距離 25 英哩之內最接近的 20 個地點。它會計算該資料列的經、緯度以及目標經、緯度之間的距離,然後要求距離值小於 25 的資料列,根據近到遠排列整個查詢並限制傳回 20 筆結果。如果要按照公里數而不是英哩數進行搜尋,可以將 3959 換成 6371 。• SELECT id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) *

cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance FROM markers HAVING distance < 25 ORDER BY distance LIMIT 0 , 20;