Есть задача, помогите её решить.
Есть растр в формате bmp.
Есть координаты в формате Красовского.
Необходимо преобразовать этот растр для вывода в MapInfo в координатах WGS-84.
При этом следует учесть, что если растр начинается в восточном полушарии, а заканчивается в западном (Чукотка), то выводиться он должен целиком, с началом в восточном полушарии.
GDAL делит растр на две части – то, что находится в западном полушарии размещает слева, то что в восточном – справа, а между ними – прозрачный слой. Этот вариант не годится. Растр должен быть цельным.
Как это сделать?
Среда разработки – Delphi7.
Чукотка
-
- Новоприбывший
- Сообщения: 5
- Зарегистрирован: 08 июн 2021, 18:47
- Репутация: 0
- Откуда: не понял вопроса
-
- Гуру
- Сообщения: 1018
- Зарегистрирован: 01 авг 2012, 13:55
- Репутация: 241
-
- Гуру
- Сообщения: 4205
- Зарегистрирован: 10 апр 2006, 22:34
- Репутация: 433
- Откуда: Париж
Re: Чукотка
Не насилуйте программу. Это невозможно. В Mapinfo нет экранной проекции WGS-84, как и любой другой "долгота-широта". В зависимости от масштаба, экранное отображение будет либо "поперечная Меркатора" на меридиане, соотвествующем центру окна, аналог по остальным параметра проекции UTM/WGS84; либо какая-то из неугадываемых явно проекций из первых строк "Проекции мира" для мелкомасштабных карт.
Исходя из этого, заставить чукотский растр быть единым можно только в проекции Mapinfo, которая не будет производить перенос координат "после 0 градусов WGS84" влево. Такие есть, и они перечислены в топике, на который дана ссылка выше.
Но вы можете провести смелый эксперимент:
1. взять ваш кусок растра только с Чукоткой, что бы на нем были понятны точки координат.
2. привязать его средствами Mapinfo в проекции WGS84.
3. Сохранить привязку как таблицу и посмотреть в блокноте, какие координаты сохранила программа для указанных вами точек привязки.
4. закрыть таблицу растра
5. открыть таблицу растра. Если растр при включенных опциях "перечитывать растр" и любом векторе поверх будет отображаться единым куском, то вы нашли способ привязки растра для Mapinfo.
Для GDAL это никак не подойдет, поскольку у него принципы вычисления координат - другие. Для него нужны свои эксперименты с проекциями, центральными меридианами и т.п., но ожидать, что то, что подойдет для GDAL так же без проблем отобразиться в Mapinfo - не стоит. Все, что Mapinfo берет из сторонней привязки - это координаты точек, на которые аффинным преобразованием она будет "натягивать" растр.
-
- Новоприбывший
- Сообщения: 5
- Зарегистрирован: 08 июн 2021, 18:47
- Репутация: 0
- Откуда: не понял вопроса
Re: Чукотка
GDAL отлично справляется со всей остальной Землей. MapInfo да, может отобразить и в другой системе координат, но только не в случае если подложкой служит карта в координатах wgs-84. В этом случае его начинает колбасить и косить так, что карту не узнать.
Я в геодезии не то что новичек, а полный 0, но есть задача - её надо решать. Попробовал поискать что-то похожее в интернете - не нашел. Потому и спросил как быть. Как-то надо преобразовать растр так, чтобы он лег на карту. Не в программе MapInfo, а в компоненте MapInfo. Там на вход идет растр и tab-файл, который его описывает. Собственно в том и проблема - как сделать для Чукотки правильный растр и правильный tab-файл. Исходный файл формируется в программе. Это построенное изображение.
Я в геодезии не то что новичек, а полный 0, но есть задача - её надо решать. Попробовал поискать что-то похожее в интернете - не нашел. Потому и спросил как быть. Как-то надо преобразовать растр так, чтобы он лег на карту. Не в программе MapInfo, а в компоненте MapInfo. Там на вход идет растр и tab-файл, который его описывает. Собственно в том и проблема - как сделать для Чукотки правильный растр и правильный tab-файл. Исходный файл формируется в программе. Это построенное изображение.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 17 гостей