Добрый день. Нужно пересчитать координаты между МСК-32 (Брянская область) и WGS84 Известные данные: Проекция - поперечная Меркатора, нулевая широта 0°, нулевая долгота 35°29', сдвиг по широте -5412900.566м, сдвиг по долготе 2250000м. Есть проект в Trimble Geomatics Office, на основе которого мы работаем, там заданы координаты некоторых пунктов в WGS84 и в МСК-32. На его основе хочу подобрать семь параметров для Position-Vector Transformation. Подбираю методом тыка, начальное значение ключей от СК42, далее изменяю ключи случайным образом. Если отклонение от X,Y,Z новых ключей меньше, то запоминаю их. Для пересчета использую библиотеку DotSpatial. Код: ProjectionInfo wgsProj = KnownCoordinateSystems.Geographic.World.WGS1984; var keys = new[] { 23.814, -123.193, -94, 0.18749, -0.22884, -0.13, 1.1 }; var projString ="+proj=tmerc +lat_0=0 +lon_0=35.483333333333333333333333333333333333 +k=1 +x_0=2250000 +y_0=-5412900.566 +ellps=krass +towgs84=" + keys[0].ToString(CultureInfo.InvariantCulture) + "," + keys[1].ToString(CultureInfo.InvariantCulture) + "," + keys[2].ToString(CultureInfo.InvariantCulture) + "," + keys[3].ToString(CultureInfo.InvariantCulture) + "," + keys[4].ToString(CultureInfo.InvariantCulture) + "," + keys[5].ToString(CultureInfo.InvariantCulture) + "," + keys[6].ToString(CultureInfo.InvariantCulture) + " +units=m +no_defs"; return ProjectionInfo.FromProj4String(projString); var localXY = new double[] {2166921.047, 493562.471}; var localZ = new double[] {206.448}; Reproject.ReprojectPoints(localXY, localZ, msk32, wgsProj, 0, 1); На стадии разработки у меня 4 пункта, чтобы быстрее работало. После получения ключей пробую пересчитать контрольный пункт, получаю погрешность по долготе: 0.3м, по широте: 0.1м, по высоте 4м. Пока все нормально. Пробую загрузить эти ключи в JAVAD Justin и в Javad Tracy (коммуникатор VICTOR). Получаю погрешность около 6", около 185 метров. В чем может быть проблема?(
а вы не пробовали пересчитать в модуле локализация в ПО Justin хотелось бы узнать какие результаты будут там.
А что такое модуль локализации? У меня есть две программы от джастина - Coordinate System Manager и сам Justin. Результаты там совпадают с Tracy RTK. Вроде бы нашел проблему - в DotSpatial используется формула Coordinate Frame Rotation, а в ПО от Javad - Position Vector Transformation, соответственно меняются знаки у Rx Ry Rz. Это увеличило точность до 5 метров, возможно теперь дело в высоте? Кто-нибудь знает, как в DotSpatial.Projections задаются геоиды?
Не у кого не возникало такой ошибки при запуске координатного калькулятора в Coordinate System Editor (в Редакторе Систем Координат)? Не знаю что делать.