Добро пожаловать!

Войдите или зарегистрируйтесь сейчас!

Войти

WKT формат и численное задание датума

Тема в разделе "Программы для пересчета координат и поиска ключей", создана пользователем Georg Keneberg, 11 ноя 2020.

  1. Georg Keneberg

    Форумчанин

    Регистрация:
    6 мар 2019
    Сообщения:
    61
    Симпатии:
    17
    Адрес:
    Санкт-Петербург
    ::biggrin24.gif:: Тут уж не проблема знаки перепроверить - я ее и использовал как шаблон для вывода строки ... буду искать ошибки тогда))))
    Код:
     //Для проекции "Поперечная Меркатора", геодезическая, со своим датумом
                    string Full_WKT2 = $"BOUNDCRS[SOURCERS[PROJCRS{K}{CS_name}{K},BASEGEOGCRS[{K}Unknown datum based upon the {Ellipsoid_Name} ellipsoid{K}," +
                        $"DATUM[{K}{CS_Datum_Name}{K},ELLIPSOID[{K}{Ell_descr_Name}{K},{Ell_MajorAxis},{Ell_Flattening:f8},LENGTHUNIT[{K}metre{K},1,ID[{K}EPSG{K},9001]]]]," +
                        $"PRIMEM[{K}Greenwich{K},0,ANGLEUNIT[{K}degree{K},0.0174532925199433],ID[{K}EPSG{K},8901]]],CONVERSION[{K}{CS_name}{K},METHOD[{K}Transverse Mercator{K},ID[{K}EPSG{K},9807]]," +
                        $"PARAMETER[{K}Latitude of natural origin{K},{CS_LongLONO},ANGLEUNIT[{K}degree{K},0.0174532925199433],ID[{K}EPSG{K},8801]],PARAMETER[{K}Longitude of natural origin{K},{CS_LatOFO}," +
                        $"ANGLEUNIT[{K}degree{K},0.0174532925199433],ID[{K}EPSG{K},8802]],PARAMETER[{K}Scale factor at natural origin{K},{CS_Scale},SCALEUNIT[{K}unity{K},1],ID[{K}EPSG{K},8805]]," +
                        $"PARAMETER[{K}False easting{K},{CS_FE},LENGTHUNIT[{K}metre{K},1],ID[{K}EPSG{K},8806]],PARAMETER[{K}False northing{K},{CS_FN},LENGTHUNIT[{K}metre{K},1],ID[{K}EPSG{K},8807]]],CS[Cartesian,2]," +
                        $"AXIS[{K}(E){K},east,ORDER[1],LENGTHUNIT[{K}metre{K},1,ID[{K}EPSG{K},9001]]],AXIS[{K}(N){K},north,ORDER[2],LENGTHUNIT[{K}metre{K},1,ID[{K}EPSG{ K},9001]]]]]," +
                        $"TARGETCRS[GEOGCRS[{K}WGS 84{K},DATUM[{K}World Geodetic System 1984{K},ELLIPSOID[{K}WGS 84{K},6378137,298.257223563,LENGTHUNIT[{K}metre{K},1]]],PRIMEM[{K}Greenwich{K},0,ANGLEUNIT[{K}degree{K},0.0174532925199433]]," +
                        $"CS[ellipsoidal,2],AXIS[{K}geodetic latitude(Lat){K},north,ORDER[1],ANGLEUNIT[{K}degree{K},0.0174532925199433]],AXIS[{K}geodetic longitude(Lon){K},east,ORDER[2],ANGLEUNIT[{K}degree{K},0.0174532925199433]],ID[{K}EPSG{K},4326]]]," +
                        $"ABRIDGEDTRANSFORMATION[{K}{Datum_descr_Name}{K},METHOD[{K}Coordinate Frame rotation(geocentric domain){K},ID[{K}EPSG{K},9607]],PARAMETER[{K}X-axis translation{K},{a1},LENGTHUNIT[{K}metre{K},1.0],ID[{K}EPSG{K},8605]]," +
                        $"PARAMETER[{K}Y-axis translation{K},{a2},LENGTHUNIT[{K}metre{K},1.0],ID[{K}EPSG{K},8606]],PARAMETER[{K}Z-axis translation{K},{a3},LENGTHUNIT[{K}metre{K},1.0],ID[{K}EPSG{K},8607]]," +
                        $"PARAMETER[{K}X-axis rotation{K},{a4:f8},ANGLEUNIT[{K}arc-second{K},4.84813681109535E-06],ID[{K}EPSG{K},8608]],PARAMETER[{K}Y-axis rotation{K},{a5:f8},ANGLEUNIT[{K}arc-second{K},4.84813681109535E-06],ID[{K}EPSG{K},8609]]," +
                        $"PARAMETER[{K}Z-axis rotation{K},{a6:f8},ANGLEUNIT[{K}arc-second{K},4.84813681109535E-06],ID[{K}EPSG{K},8610]],PARAMETER[{K}Scale difference{K},{a7_1},SCALEUNIT[{K}parts per million{K},1E-06],ID[{K}EPSG{K},8611]]]]";
                   
    Даааа, тема ооочень интересная
     
    #21
  2. Georg Keneberg

    Форумчанин

    Регистрация:
    6 мар 2019
    Сообщения:
    61
    Симпатии:
    17
    Адрес:
    Санкт-Петербург
    Блин, накосячил с SOURCECRS написав его как SOURCERS, и там забыл одну "]" ::mad24.gif:: еще. В целом QGIS не ругается хотя бы на параметры. В приложении пример для прочих проекций
    В целом, мне нравится даже такой способ задания систем координат - помучится только 1 раз для вывода строки с этими кавычками и скобочками, потом уже решение универсальное
    Пойду попробую для других типов проекций)))))
     

    Вложения:

    #22
  3. trir

    Форумчанин

    Регистрация:
    25 ноя 2014
    Сообщения:
    3.253
    Симпатии:
    931
    Адрес:
    gnomtrir@mail.ru
    #23
    Последнее редактирование: 13 ноя 2020
  4. Fлемминг

    Регистрация:
    6 май 2013
    Сообщения:
    11
    Симпатии:
    0
    TOWGS84[23.57,-140.95,-79.8,0.00000000,0.35000000, 0.79000000,-0.22]

    Прошу подсказать, какие это единицы измерения, секунды или градусы?
     
    #24
  5. zvezdochiot

    Форумчанин

    Регистрация:
    27 июн 2014
    Сообщения:
    6.015
    Симпатии:
    2.128
    Адрес:
    г. Москва
    Секунды. Последнее ppm.
     
    #25
  6. Fлемминг

    Регистрация:
    6 май 2013
    Сообщения:
    11
    Симпатии:
    0
    Спасибо!
     
    #26
  7. Steinar

    Форумчанин

    Регистрация:
    30 авг 2012
    Сообщения:
    721
    Симпатии:
    514
    Адрес:
    Асгардия
    С этим WKT вообще приколы - делаешь его в одной программе, кидаешь в другую - получается херня.
    Каждый сервис или программа генерит WKT как хочет и понимает как хочет.
     
    #27
  8. X-Y-H

    X-Y-H Администратор
    Команда форума Форумчанин

    Регистрация:
    18 май 2007
    Сообщения:
    21.987
    Симпатии:
    7.202
    Адрес:
    Россия
    Их всего два типа
     
    #28

Поделиться этой страницей

  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление