2013-04-01 3 views
-2

Хорошо, ребята, глупый вопрос 3-го класса для вас:Калубационное расстояние между двумя точками на плоской плоскости? (php)

Как вы рассчитываете расстояние между двумя точками на плоской поверхности?

Я проходил через Google_Results, и кажется, что все, что я нахожу, относится к Long/Lat, а не к плоской поверхности.

Я работаю над тем, чтобы ObjectA выбирал ObjetsC, D, E ..., выбирал ближайший и двигался к нему. Поэтому мне нужно прокрутить мою таблицу SQL, вытащить то, что находится в диапазоне, и просмотреть результаты для расчета расстояний.

Любая помощь в этой математике, которую мне не приходилось вспоминать годами, будет оценена по достоинству.

+2

Разница между горизонтальными 1 и горизонтальными 2 и вертикальными 1 и вертикальными 2, а затем pythagoras –

+0

Пифагор: Пифагор Самос был ионийским греческим философом и основателем религиозного движения под названием пифагорейство. может быть, вы должны поговорить со мной, как будто я 3-й класс, потому что я не знаю, что философ имеет отношение к математике. – WaxyChicken

+1

, поскольку вы можете четко использовать Google, Пифагор Самос был также математиком (многие философии в те времена были математикой) и придумали то, что называется «Теорема Пифагора» - http://en.wikipedia.org/wiki/Pythagorean_theorem –

ответ

6

Вам необходимо использовать Euclidean distance formula (специально для 2-х измерений). В основном формула:

d = sqrt((x1 - x2)^2 + (y1 - y2)^2) 
  • d ваше окончательное расстояние
  • sqrt является квадратный корень (sqrt() функция в PHP)
  • x1 и y1 ваши ху координаты для первой точки
  • x2 и y2 - ваши координаты xy для вашей второй точки
  • ^2 средство поднять до второй мощности (использовать функцию pow() для PHP)

Pythagoras был греческий философ, который разработал Pythagorean Theorem, которые могут быть использованы для получения 2-мерную формулу расстояния (который отличается от Euclid ' s).

Смежные вопросы