Тоже пишу немного под андроид, но пока не использовал Map API. Подозреваю, что оно работает как раз только в географических координатах (долгота/широта). Хотя расстояния "по прямой", наверно, тоже умеет определять. При таких небольших расстояниях можно считать треугольник плоским (при стороне 1 км разница по дуге и по хорде 0,001 мм примерно, а при 10 км уже целый 1 мм). А вот обратно получить из расстояний от известных точек (линейная засечка) географические координаты (это углы, если что), чтоб на карте отобразить, умеет ли? Или вам это не надо?
Но если я работаю с готовым треугольником, да еще с таким малым и с такой низкой точностью, то зачем мне учитывать широту? --- Сообщения объединены, , Оригинальное время сообщения: --- Google работает в широте/долготе. Расстояние тоже может вычислить, но я получаю расстояние java-кодом (учитывая кривизну), чтобы не обращаться у гуглу. Думаю, не понадобится. Если у меня на прямой будет точка H, спущенная с вершины треугольника, то получив соотношение отрезка АВ к АH буду знать, насколько мне нужно сместиться по отрезку АВ, находящихся в полярных сферических координатах на карте.
Ну да, вроде, логично... Отношение разностей координат A и B к разностям A и H будет пропорционально соотношению длин отрезков.
Вы уж как-то определитесь. Началась тема ведь с теперь широта уже не мешает. Вы другой алгоритм нашли?
Возможно, я не совсем понятно выразился. Я решил не заморачиваться преобразованием координат, а построить плоский треугольник. Длины сторон мне известны. Получаю перпендикуляр на этом треугольнике (с точкой Н), получаю смещение точки H относительно точки А, после чего уже на своей сферической карте выставляю ее, используя соотношение отрезков. Кстати, есть ли готовые формулы для сдвига точки по отрезку, в сферической системе? Т.е. есть точки А и В, описанные в виде Latitude, Longitude. Нужно получить координаты точки, расположенной между А и В на расстоянии n-метров. --- Сообщения объединены, , Оригинальное время сообщения: --- Кстати, есть ли готовые формулы для сдвига точки по отрезку, в сферической системе? Т.е. есть точки А и В, описанные в виде Latitude, Longitude. Нужно получить координаты точки, расположенной на прямой А и В на расстоянии в n-метров от точки А. P.S. Погуглив, нашел кое-что: Algorithm for offsetting a latitude/longitude by some amount of meters. Но там просто смещение, а не по лучу.
Так из соотношений формулы сами почти получились. Идея с соотношениями хорошая, мне кажется. Не надо тригонометрию и расстояние до центра Земли привлекать для перехода от линейных к угловым величинам. Ну что-то типа такого: Lh = ((Lb - La) * AH + La * AB) / AB, где Lh, La, Lb - координаты соответственно точек H, A, B (широты или долготы), La < Lh < Lb; AH и AB - длины отрезков. Правда, нюансы могут быть на экваторе, полюсах, нулевом меридиане... P.S. Ну и, конечно, это только для небольших расстояний будет достаточно точно работать.