Skip to main content

Solution of the geodesy tasks in Python

Project description

PyGeoGUZ

Решение задач геодезии на языке Python. Пакет содержит 5 модулей:

  • simplegeo - Основные и вспомогательные функции, используемые в геодезических вычислениях
  • adjustment - Реализация общего параметрического метода уравнивания по методу наименьших квадратов в матричной форме
  • transform - Преобразование координат между эллипсоидами ПЗ-90 и WGS84, пересчет в проекцию Гаусса-Крюгера
  • highergeo - Реализация прямой геодезической задачи на сфере
  • objects - Вспомогательный модуль с классами объектов точек, линий и углов

Установка

pip install pygeoguz

Модуль simplegeo:

1. Прямая геодезическая задача
from pygeoguz.simplegeo import *
from pygeoguz.objects import *

p1 = Point2D(x=10, y=10)
line = Line2D(length=10, direction=45)
p2 = pgz(point=p1, line=line)

x = p2.x
y = p2.y

2. Обратная геодезическая задача

from pygeoguz.simplegeo import *
from pygeoguz.objects import *

p1 = Point2D(x=10, y=10)
p2 = Point2D(x=50, y=50)
line = ogz(point_a=p1, point_b=p2)

length = line.length
direction = line.direction

3. Площадь полигона по формуле Гаусса

from pygeoguz.simplegeo import *
from pygeoguz.objects import *

p1 = Point2D(x=10, y=10)
p2 = Point2D(x=20, y=20)
p3 = Point2D(x=15, y=30)

points = [p1, p2, p3]
square = polygon_square(points=points)

4. Координаты точки пересечения двух линий

5. Координаты середины отрезка

6. degrees, minutes, seconds -> degrees

from pygeoguz.simplegeo import *
from pygeoguz.objects import *

angle = Angle(degrees=54, minutes=14, seconds=16.5)
angle_degrees = to_degrees(angle=angle)

7. degrees -> degrees, minutes, seconds

from pygeoguz.simplegeo import *

angle_degrees = 34.66885435
angle = to_dms(degrees=angle_degrees, n_sec=1)

degrees = angle.degrees
minutes = angle.minutes
seconds = angle.seconds

8. Вычисление верного значения угла

from pygeoguz.simplegeo import *

angle_degrees = 367.66885435
true_ang = true_angle(angle=angle_degrees, max_value=360)

9. hours -> degrees

from pygeoguz.simplegeo import *

hours = 11.5
degrees = from_h_to_d(hours=hours)

10. degrees -> hours

from pygeoguz.simplegeo import *

degrees = 58.8431144
hours = from_d_to_h(degrees=degrees)

11. Генерация псевдослучайных погрешностей измерений

from pygeoguz.simplegeo import *

mu = 2  # Среднее квадратическое отклонение
count_of_errors = 15
errors = generate_errors(mu=mu, count=count_of_errors)

12. Округление по Гауссу

from pygeoguz.simplegeo import *

number = 2.345
n = ground(number=number, n=2)
#  print -> 2.34

13. Вычисление левых горизонтальных углов хода

Модуль adjustment:

  1. Параметрический метод уравнивания с оценкой точности
  2. Уравнивание теодолитного хода раздельным методом

Модуль transform:

  1. Преобразование координат ПЗ90 -> WGS84
  2. Преобразование координат WGS84 -> ПЗ90
  3. Преобразование координат Геодезические -> Плоские в проекции Гаусса-Крюгера
  4. Преобразование координат Плоские в проекции Гаусса-Крюгера -> Геодезические

Модуль higherGeo

  1. Прямая геодезическая задача на сфере

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygeoguz-0.0.5.tar.gz (23.7 kB view details)

Uploaded Source

File details

Details for the file pygeoguz-0.0.5.tar.gz.

File metadata

  • Download URL: pygeoguz-0.0.5.tar.gz
  • Upload date:
  • Size: 23.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for pygeoguz-0.0.5.tar.gz
Algorithm Hash digest
SHA256 174d0ad490e8c33b6b2afe7fc153f75316293e7650c2907a42d6fb77951be490
MD5 fc13ebaf73d0b6e85ed5f1c520b8ae41
BLAKE2b-256 fcd8e89594bc222f2a42399192e4f091d4812a0898aa9169420543fca6b26df9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page