我的主点有坐标x = 0.568 y = 0.132
我有一些点,如:
0.545, 0.1488
0.74878, 0.487
0.4845, 0.5485
我需要找到PHP最接近MAIN POINT的点 我该怎么办?
点0,0表示右上角
第1点,1个肉左下角
答案 0 :(得分:0)
如果你的主要点是(x,y)而另一个点是(x1,y1),那么两点之间距离的平方是(x - x1)*(x - x1)+(y - y1)*(y - y1)(毕达哥拉斯的应用)。
最近的点是最小化该值的点。
答案 1 :(得分:0)
此代码将回显最近和弦的键。希望这会有所帮助:)
<?php
$main_coord=array('x'=>0.568,'y'=>0.132);
$main_coord_total=$main_coord['x']+$main_coord['y'];
$coords=array(
array('x'=>0.545,'y'=>0.1488),
array('x'=>0.74878,'y'=>0.487),
array('x'=>0.4845,'y'=>0.5485)
);
$dif_array=array();
foreach($coords as $key=>$coord){
$difference=($coord['x']+$coord['y'])-$main_coord_total;
if(strchr($difference,'-')){
$difference=substr($difference,1);
}
$dif_array[$key]=$difference;
}
$min_value=min($dif_array);
echo 'The closest coords key is:'.array_search($min_value, $dif_array);