как масштабировать GPS координаты по заданному направлению и длине - PullRequest
0 голосов
/ 20 января 2012

Я бы хотел масштабировать координаты GPS по заданному направлению и длине. Например. У меня есть две точки A, B. Я знаю их позицию GPS (также в декартовом формате), и я хотел бы изменить длину линии AB на 1,5, где точка A должна быть неповрежденной, а B должен переместиться в новую позицию B '

есть идеи?

1 Ответ

1 голос
/ 21 января 2012

Я не уверен, что понимаю ваш вопрос. Вы хотите вычислить местоположение, которое находится на линии между двумя известными точками A и B, но на половине расстояния между A и B позади B на этой линии?

Вычислить векторную разницу между A и B: если A имеет координаты latA, lonA, а B имеет координаты latB, lonB, то разница L = B-A имеет координаты latL = latB-latA и lonL = lonB-lonA. Точка, которую вы ищете, имеет координаты latA + 1.5 * latL и lonA + 1.5 * lLL.

Используется представление линии, проходящей через A и B, в виде X = A + l * (B-A); все точки X, удовлетворяющие векторному уравнению, находятся на прямой. Конечно, это предполагает декартову систему координат. Однако для коротких дистанций результат должен быть в порядке.

...