Вычисление расширяющегося квадрата (Microsoft Excel)
Фернандо работает в поисково-спасательной команде. Когда они ищут человека в определенной области, они обычно делают это с помощью так называемого «расширяющегося квадрата». Учитывая начальное положение, они перемещаются на восток на заданное расстояние, поворачиваются и идут на север на такое же расстояние, идут на запад в два раза больше, идут на юг в два раза больше и т. Д. В постоянно расширяющемся квадрате. Фернандо хотел бы указать начальные координаты (широту и долготу) и начальное расстояние, а также попросить Excel вычислить широту и долготу каждой поворотной точки в расширяющемся квадрате.
Прежде чем можно будет предложить решение, необходимо принять несколько решений.
Во-первых, вам нужно выяснить, собираетесь ли вы указывать координаты GPS в градусах / минутах / секундах или в десятичных градусах. Ради этого конкретного решения было принято решение (без особой причины) использовать десятичные градусы при указании широты и долготы.
Вам также необходимо выяснить, собираетесь ли вы указывать ноги вашего квадрата в милях или футах. Поскольку Фернандо работает с поисково-спасательной командой, которая, вероятно, покрывает местность пешком (а не по воздуху), было принято решение разрешить указывать расстояния в футах.
Принимая эти решения, вы можете приблизительно определить, на сколько градусов широта или долгота изменяется для каждой ноги, перемещенной непосредственно на восток, запад, север или юг. Это выражается в следующей формуле:
=ATAN((1/5280)/3958.82)*180/PI()
В этой формуле вы конвертируете футы в мили (1/5280), а затем делите их на средний радиус Земли (3958,82). Решение состоит в том, что вы меняете 0,00000274109 градусов на каждую перемещаемую ногу. Если вы переместитесь на другое расстояние, вы можете просто изменить преобразование футов в мили, чтобы найти количество градусов. Таким образом, если вы переместитесь на 1/10 мили (528 футов), формула станет такой:
=ATAN((528/5280)/3958.82)*180/PI()
В этом случае изменение в градусах составляет 0,014472944 градуса. Опять же, это изменение расстояния является приблизительным, и оно не принимает во внимание какие-либо реальные условия, такие как препятствия или изменения высоты.
Как только вы узнаете изменение для каждого отрезка вашего расширяющегося квадрата, единственное, что вам нужно сделать, это вычислить, прибавляете ли вы или вычитаете градусы (от широты или долготы) в зависимости от направления, в котором вы путешествуете по отрезку. Если вы знаете, как продвигаются ваши ноги (в случае Фернандо, восток, север, запад, юг), вы можете довольно легко это выяснить, основываясь на том, какая нога пересекается. Вы также можете, зная номер участка, рассчитать, какое расстояние необходимо преодолеть на этом конкретном участке.
Я очень, очень стараюсь в ExcelTips объяснять вещи в моих статьях до такой степени, чтобы вы могли легко воссоздать необходимые формулы и данные в своих собственных таблицах. В этом случае, однако, вам действительно будет полезно просто загрузить книгу, содержащую «Калькулятор расширяющегося круга». Я разработал один (с участием нескольких участников ExcelTips), который вы можете найти здесь:
http://excelribbon.tips.net/ExpandingCircle.xlsx
Чтобы использовать калькулятор, вам нужно ввести только три цифры: количество футов, которое вы хотите пройти на самом первом отрезке, широту начальной точки и долготу этой же точки. Затем калькулятор вычисляет 64 ноги для расширяющегося квадрата, указывая начальную точку, направление и расстояние (в футах) для каждой ноги.
Если вы хотите узнать больше о широте, долготе и расстояниях, эта информация будет вам полезной:
http://www.cpearson.com/Excel/LatLong.aspx
Я также нашел интересным обсуждение формулы Хаверсина в Википедии. (Формула Хаверсина используется для расчета расстояний по дуге большого круга между двумя парами координат широта / долгота.
http://en.wikipedia.org/wiki/Haversine_formula
ExcelTips — ваш источник экономичных продуктов Microsoft Обучение работе с Excel.
Этот совет (5645) применим к Microsoft Excel 2007, 2010 и 2013.