php判斷座標是否在指定的多邊形中
青春陽光king 碼農程式設計高階筆記
如何判斷乙個座標點是否在乙個多邊形中,具體的應用場景就是,外賣派送,使用者提供的座標是否是在外賣的派送範圍之內。使用者的座標可以通過手機裝置獲取到,派送範圍就是通過在地圖上,進行多邊形的繪製,獲取多個座標點連線起來的配送範圍。下面來看看**上是如何簡單判斷的。
mjaschen/phpgeo是乙個php的geo的庫,提供了一些關於地理經緯度相關的功能,例如地理圍欄、距離計算等。
首先composer安裝此包: php要求至少大於7
composer require mjaschen/phpgeo
然後編寫測試**:
require './vendor/autoload.php';
//引入兩個類
use location\coordinate;
use location\polygon;
//繪製乙個多邊形
$geo = new polygon();
$geo->addpoint(new coordinate(39.930131, 116.417301));
$geo->addpoint(new coordinate(39.930131, 116.377476));
$geo->addpoint(new coordinate(39.911305, 116.377476));
$geo->addpoint(new coordinate(39.911305, 116.417301));
//兩個座標做測試
$a = new coordinate(39.916527, 116.397128);
$b = new coordinate(39.901305, 116.397128);
//判斷是否在執行的多邊形中
if ($geo->contains($a)) else else {
echo "b點不在多邊形的範圍內";
結果:
php開發中常用的composer包
php判斷是否是檔案 php 判斷檔案是否存在
sha1 file 計算文字檔案sha 1雜湊 sha1 file file 語法 sha1 file file,raw 引數 file 必需。規定要計算的檔案。raw 可選。布林值,規定十六進製制或二進位制輸出格式 true 原始 16 字元二進位制格式 false 預設。32 字元十六進製制數 ...
判斷座標是否在矩陣內
public void aaa string token new double new double new double bool isok isinpolygon new double 4,points if isok else public double inf 1e9 public doub...
PHP日文判斷是否假名
全形 sjis preg match x82 x9f xf1 x81 x5b string euc preg match xa4 xa1 xf3 xa1 xbc string utf 8 preg match xe3 x81 x81 xbf x82 x80 x93 xbc string 全形 sji...