GithubHelp home page GithubHelp logo

alexandersobolev1990 / geocalcsolution Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 5.5 MB

Geodetic calculator (Geodetic tasks - direct and inverse; conversions between Geodetic, ECEF, ENU, AER, SK-42; Bursa-Wolf 7-parameters ECEF to ECEF)

License: MIT License

CMake 2.80% C++ 97.20%
geodetic direct inverse aer bursa ecef enu bursa-wolf krasovsky krasovsky1942

geocalcsolution's Introduction

Geodetic calculator/Геодезический калькулятор

1. Brief / Обзор


  • Sovling direct and inverse geodetic tasks on ellipsoid (using Vincenty formulas) / Решение и обратной геодезической задачи на эллипсоиде (по формулам Винсента)

Fig.1 - Geodetic problems/Рис.1 - Геодезические задачи


  • Conversion between following coordinate systems/Перевод между следующими системами коориднат:
    • Geodetic <--> ECEF (Earth Centered Earth Fixed)/Геодезические в глобальные декартовые геоцентрические;
    • Geodetic <--> ENU (xEast, yNorth, zUp)/Геодезические в местные декартовые;
    • Geodetic <--> AER (Azimuth, Elevation, slantRange)/Геодезические в местные cферические;
    • ECEF <--> ENU/Глобальные декартовые геоцентрические в местные декартовые;
    • ECEF <--> AER/Глобальные декартовые геоцентрические в местные cферические;
    • ENU <--> AER/Местные декартовые в местные cферические;

Fig.2 - Geodetic to ECEF/Рис.2 - Геодезические координаты в глобальные декартовые

Fig.3 - ENU to AER/Рис.3 - местные декартовые координаты в местные сферические


  • 7-parameters transformation between different ECEFs (Bursa-Wolf)/7-параметрическое преобразование Бурса-Вольфа между глобальными декартовыми геоцентрическими координатами:

    • SK-42 <--> WGS-84
    • SK-42 <--> PZ-90.11
    • SK-95 <--> PZ-90.11
    • GSK-2011 <--> PZ-90.11
    • PZ-90.02 <--> PZ-90.11
    • PZ-90 <--> PZ-90.11
    • WGS-84 <--> PZ-90.11
    • PZ-90.11 <--> ITRF-2008
  • Conversion between Lat-Lon on Krassowsky1942 ellipsoid and X-Y Gauss-Kruger SK42/Перевод между широтой/долготой на эллипсоиде Красовского и плоскими координатами Гаусса-Крюгера СК42

Fig.4 - SK-42 coordinate system/Рис.4 - листы СК-42

2. References / Ссылки

  • https://epsg.io/
  • GOST/ГОСТ 32453-2017
  • Vincenty, Thaddeus (April 1975a). "Direct and Inverse Solutions of Geodesics on the Ellipsoid with application of nested equations". Survey Review. XXIII (176): 88–93.
  • Морозов В.П. Курс сфероидической геодезии. Изд. 2, перераб и доп. М.,Недра, 1979, 296 с., стр 97-100
  • Olson, D. K. (1996). Converting Earth-Centered, Earth-Fixed Coordinates to Geodetic Coordinates. IEEE Transactions on Aerospace and Electronic Systems, 32(1), 473–476. https://doi.org/10.1109/7.481290

3. Dependencies / Зависимости


Boost for console commands parsing, testing / Boost для ввода команд с консоли, тестирования.

4. Documentation / Документация

Including doxygen html and latex doc generation while building in release mode/doxygen и latex документация автоматически создается при релизной сборке.

5. Build / Сборка

Possible Linux-Ubuntu command is/Сборка под Linux-Ubuntu производится командой:

mkdir build && cd build && cmake .. && make && ctest && cpack

geocalcsolution's People

Contributors

alexandersobolev1990 avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

skimprem

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.