Страница 1 из 1
СК-42 в GeoTIFF
Добавлено: 07 июн 2012, 09:44
TigerPVR
Добрый день!
Нам нужно осуществить гео-привязку изображения в Российской системе координат СК-42.
Скажите, пожалуйста, поддерживает ли формат GeoTIFF данную систему координат?
Если да, то какой библиотекой C#.net можно получить такой GeoTIFF файл?
Сейчас мы используем библиотеку GDAL, но там, кажется, нет системы СК-42, только международные - «WGS_1984», «WGS_1972», «North_American_Datum_1983», «North_American_Datum_1927».
Re: СК-42 в GeoTIFF
Добавлено: 07 июн 2012, 09:55
Voltron
TigerPVR писал(а):Скажите, пожалуйста, поддерживает ли формат GeoTIFF данную систему координат?
Да. Он вообще практически любую СК поддерживает
TigerPVR писал(а):Если да, то какой библиотекой C#.net можно получить такой GeoTIFF файл?
GDAL + дотнетовская обвязка
TigerPVR писал(а):Сейчас мы используем библиотеку GDAL, но там, кажется, нет системы СК-42, только международные - «WGS_1984», «WGS_1972», «North_American_Datum_1983», «North_American_Datum_1927».
Когда кажется, надо креститься

. Pulkovo 1942 / 3-degree Gauss-Kruger это что по-вашему?
Re: СК-42 в GeoTIFF
Добавлено: 07 июн 2012, 10:01
Александр Мурый
TigerPVR писал(а):
Сейчас мы используем библиотеку GDAL, но там, кажется, нет системы СК-42, только международные - «WGS_1984», «WGS_1972», «North_American_Datum_1983», «North_American_Datum_1927».
GDAL использует библиотеку PROJ.4, в которой точно есть поддержка СК-42 (кстати, и датум так называется, "SK-42").
Поищите на форуме, темы про "GDAL+СК-42" точно были.
Re: СК-42 в GeoTIFF
Добавлено: 07 июн 2012, 10:09
TigerPVR
Pulkovo 1942 / 3-degree Gauss-Kruger - где там это чудо?
Я создаю систему координат так:
oSrs.SetGeogCS(string.Empty,
Osr.SRS_DN_WGS84, Osr.SRS_DN_WGS84,
Osr.SRS_WGS84_SEMIMAJOR, Osr.SRS_WGS84_INVFLATTENING,
"Greenwich", 0.0, "degree", convertToRadians)
И в перечислении Osr.SRS_... нет ничего про "Pulkovo".
И еще вопрос, саму гео-привязку я задаю в метрах вот так:
double[] transforms = new double[]
{
489799.2,
0.6,
0,
4802716.8,
0,
-0.6
};
ds.SetGeoTransform(transforms);
А как перейти в градусы, минуты, секунды?
Re: СК-42 в GeoTIFF
Добавлено: 07 июн 2012, 10:39
Petruxin
Вот это не то?
Pulkovo 1942 EPSG 4284
+proj=longlat +ellps=krass +towgs84=23.92,-141.27,-80.9,-0,0.35,0.82,-0.12 +no_defs
Re: СК-42 в GeoTIFF
Добавлено: 07 июн 2012, 10:53
TigerPVR
Спасибо, только я по ГОСТ Р 51794-2008 указал чуть по-другому:
SpatialReference oSrs = new SpatialReference(null)
oSrs.ImportFromProj4("+proj=longlat +ellps=krass +towgs84=23.57,-140.95,-79.80,0,-0.35,-0.79,-0.22");
Вопрос вроде только последний остался.
Как указать привязку в градусах?
Использую ds.SetGeoTransform(transforms);
Но там же метры, мировые координаты...
Re: СК-42 в GeoTIFF
Добавлено: 07 июн 2012, 11:04
Petruxin
Здесь ни чем не помогу. В ГИС Карте когда снимок GeoTif открываешь, он каким-то не известным мне способом сам открывается где надо

Re: СК-42 в GeoTIFF
Добавлено: 07 июн 2012, 13:28
Александр Фадеев
Petruxin писал(а):Здесь ни чем не помогу. В ГИС Карте когда снимок GeoTif открываешь, он каким-то не известным мне способом сам открывается где надо
что бы где нужно, нужно создать сначала карту в соответсвующей СК и указать зону по тому району который представлет geotif. Потом и станет куда нужно...
