Граббинг яндекса (рисование трека линейкой)

Всем привет, может у кого будут мысли. Яндекс опять обновил своё рисование линейкой несчастное, у меня была утилитка которая карту нарисованную линейкой просто давала скачать в GPX, в теле страницы были данные вида стартовой точки и далее подряд разница в числах между координат, то есть достаточно было последовательно делать мат. сложение чтобы получать координаты действительных точек, а сейчас вот что в теле документа:

Как видно LL это стартовая точка, потом фигня какая-то и пошли те самые разницы между координатами, это точно они, правда в каком-то неводомом для меня представлении, что с этими числами делать, я так и не понял, возможно они перевернули 00000 слева направо оО

627024342.55721819,312899981.48108506
Похоже на сантиметры на местности или UTM-координаты, умноженные на 100/1000.

Оо Хм… И как это сопоставлять с координатами? Я поставил с 15 точек где-то линейкой с интервалом 1-7 км.

Думаю, как-то так.
http://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system#Locating_a_position_using_UTM_coordinates

Это JSON, но собсвенный… ll - стартовая точка, spn (возможно) - span, то есть что-нибудь в духе размеров области в градусах, z - уровень? rl - от relative, то есть какие-то относительные сдвиги, хз в чем - скорее всего - в линейных единицах.
Расковырять это просто - начертить, скажем, в qGIS простую фигуру по известным координатам (треугольник или даже просто отрезок), далее - такую же - в Яндексе. Выдернуть аналогичное в JSON, а потом сравнить цифры с разностями координат точек в UTM, в Меркаторе, еще в чем-нибудь, пока числа не будут похожи.

Отформатированный пример:

{
	"ll":"30.313497,59.937497",
	"spn":"0.645447,0.288047",
	"z":"11",
	"l":"map",
	"rl":"627024342.55721819,
	312899981.48108506~131072.00000000,
	8192.00000000~135168.00000000,
	-38912.00000000~8192.00000000,
	-67584.00000000~-114688.00000000,
	-45056.00000000~-71680.00000000,
	28672.00000000~-167936.00000000,
	-71680.00000000~-47104.00000000,
	-155648.00000000~-86016.00000000,
	28672.00000000~-77824.00000000,
	98304.00000000~-32768.00000000,
	65536.00000000~30720.00000000,
	65536.00000000~202752.00000000,
	108544.00000000~266240.00000000,
	92160.00000000~161792.00000000,
	-47104.00000000~-59392.00000000,
	-303104.00000000~8192.00000000,
	-65536.00000000~98304.00000000,
	-262144.00000000"
},
"argArrays":
	{
	"ll":["30.313497,59.937497"],
	"spn":["0.645447,0.288047"],
	"z":["11"],
	"l":["map"],
	"rl":["627024342.55721819,
	312899981.48108506~131072.00000000,
	8192.00000000~135168.00000000,
	-38912.00000000~8192.00000000,
	-67584.00000000~-114688.00000000,
	-45056.00000000~-71680.00000000,
	28672.00000000~-167936.00000000,
	-71680.00000000~-47104.00000000,
	-155648.00000000~-86016.00000000,
	28672.00000000~-77824.00000000,
	98304.00000000~-32768.00000000,
	65536.00000000~30720.00000000,
	65536.00000000~202752.00000000,
	108544.00000000~266240.00000000,
	92160.00000000~161792.00000000,
	-47104.00000000~-59392.00000000,
	-303104.00000000~8192.00000000,
	-65536.00000000~98304.00000000,
	-262144.00000000

Ключевые слова: дельта-кодирование, EPSG:3395.

на гис лабе давно уже расписали метод, тема баян

Коль баян, давайте ссылку :slight_smile: