Расчет площадей, длин и координат в СК вида

Идеи и запросы на отсутствующую или изменение существующей функциональности QGIS, патчи.
bolotoved
Гуру
Сообщения: 920
Зарегистрирован: 30 дек 2008, 14:11
Репутация: 236
Откуда: Ханты-Мансийск
Контактная информация:

Re: Расчет площадей, длин и координат в СК вида

Сообщение bolotoved » 26 янв 2012, 06:41

Потестировал расчеты площадей на неспроектированном слое admin. Инструмент Voltron'а работает - выдает площади в метрах. Теперь бы как-то спланировать эксперимент, чтобы оценить точность расчетов на сфере и сравнить ее с точностью которой можно достичь, используя разные проекции.
Voltron, какой эллипсоид вы использовали для расчетов которые приведены на вашем скриншоте? Пробовал рассчитывать на WGS84 и на Красовском, но ваших результатов достичь не смог...

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Расчет площадей, длин и координат в СК вида

Сообщение Voltron » 26 янв 2012, 11:47

bolotoved писал(а):Voltron, какой эллипсоид вы использовали для расчетов которые приведены на вашем скриншоте?
Сейчас используется эллипсоид, заданный в настройках QGIS «Settings - Options - Map tools - Ellipsoid for distance calculations», в качестве значения по умолчанию (если не удалось получить информацию из настроек) используется WGS84.

bolotoved
Гуру
Сообщения: 920
Зарегистрирован: 30 дек 2008, 14:11
Репутация: 236
Откуда: Ханты-Мансийск
Контактная информация:

Re: Расчет площадей, длин и координат в СК вида

Сообщение bolotoved » 26 янв 2012, 16:53

Для WGS84 у меня получается в точности как у Максима. У вас значения отличаются на несколько метров (при таких площадях это, естественно, не существенно, но странно, почему так получается).

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Расчет площадей, длин и координат в СК вида

Сообщение Voltron » 26 янв 2012, 17:00

Возможно, ошибки округления?

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Расчет площадей, длин и координат в СК вида

Сообщение Voltron » 26 янв 2012, 17:15

Вторая попытка удовлетворить морочащих голову пользователей :-). Реализован расчет в единицах слоя, в единицах вида и на сфере. Делаем резервную копию fTools, заменяем существующие файлы в каталоге tools файлами из архива, тестируем.
ftools.tar.bz2
Файлы на замену
(8.45 КБ) 490 скачиваний

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Расчет площадей, длин и координат в СК вида

Сообщение Максим Дубинин » 26 янв 2012, 21:10

работает!

кто-нибудь, сравните с тем что получается в другом ПО
например в ArcGIS, для geosample/admin, UTM 38
пристегивайтесь, турбулентность прямо по курсу

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Расчет площадей, длин и координат в СК вида

Сообщение Максим Дубинин » 26 янв 2012, 21:18

voltron, пока ты добрый можно ли прикрутить еще запись в тот же слой, без создания нового?

Если это технически сложно, возможно правильнее будет добавить методы
$area_projected
$area_ellipsoidal

в калькулятор

Изображение

А в идеале должно быть и там и там.
пристегивайтесь, турбулентность прямо по курсу

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 792
Ваше звание: званий не имею
Откуда: Москва

Re: Расчет площадей, длин и координат в СК вида

Сообщение Александр Мурый » 26 янв 2012, 22:29

Максим Дубинин писал(а): кто-нибудь, сравните с тем что получается в другом ПО
например в ArcGIS, для geosample/admin, UTM 38
Почему 38-я зона UTM, если там центральная 44-я?

Площади в GRASS:
-- в WGS84 Lat/Long

Код: Выделить всё

1|95204774879.7858
2|177614150958.049
3|169863488588.078
4|92343594889.7612
-- в 44-й зоне UTM

Код: Выделить всё

1|95517471835.3226
2|177613342623.351
3|169871495057.5
4|92701168602.5538
Как видно, значительно отличаются от значений из QGIS. Кому верить? :)
Редактор материалов, модератор форума

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Расчет площадей, длин и координат в СК вида

Сообщение Максим Дубинин » 26 янв 2012, 22:40

спасибо, в кугис:

UTM zone 44

Код: Выделить всё

1|95517471835.3276
2|177613342623.343
3|169871495057.506
4|92701168602.5488
на сфероиде действительно есть различия, надо проверять на самом ли деле один используется сфероид
пристегивайтесь, турбулентность прямо по курсу

Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 792
Ваше звание: званий не имею
Откуда: Москва

Re: Расчет площадей, длин и координат в СК вида

Сообщение Александр Мурый » 26 янв 2012, 23:12

Уже чисто из спортивного интереса: в R --> library(geosphere) --> areaPolygon() в WGS84 Lat/Long:

Код: Выделить всё

94991947020 
177199690620 
169567140249  
92221903519
Это значения похожи на те, что были на скринах выше по теме.
Последний раз редактировалось Александр Мурый 26 янв 2012, 23:45, всего редактировалось 1 раз.
Редактор материалов, модератор форума

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Расчет площадей, длин и координат в СК вида

Сообщение Максим Дубинин » 26 янв 2012, 23:32

похоже больше, но разница порядка 1 кв. километра присутствует, видимо методы расчета несколько различаются
пристегивайтесь, турбулентность прямо по курсу

bolotoved
Гуру
Сообщения: 920
Зарегистрирован: 30 дек 2008, 14:11
Репутация: 236
Откуда: Ханты-Мансийск
Контактная информация:

Re: Расчет площадей, длин и координат в СК вида

Сообщение bolotoved » 27 янв 2012, 12:36

Во-первых. Баг или фича?
На эллипсоиде в метрах считает только в географической системе координат. Если проект находится в проекции, то считает почему -то в градусах...
По мне так баг, так как расчеты на эллипсоиде вообще не должны быть связаны с проекцией в которой находится проект.
Во-вторых. Это только у меня 2 эллипсоида WGS84? Правда расчеты на них на обоих вроде бы совпадают.
Вложения
2wgs_.png
2wgs_.png (25.62 КБ) 12304 просмотра

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Расчет площадей, длин и координат в СК вида

Сообщение Voltron » 27 янв 2012, 12:53

bolotoved писал(а):Во-вторых. Это только у меня 2 эллипсоида WGS84? Правда расчеты на них на обоих вроде бы совпадают.
Без паники. У меня их три :-). Один еще в самом верху списка есть.

UPD: ага, вот и причина. Похоже в srs.db несколько эллипсоидов прописано. Только вот зачем?..

bolotoved
Гуру
Сообщения: 920
Зарегистрирован: 30 дек 2008, 14:11
Репутация: 236
Откуда: Ханты-Мансийск
Контактная информация:

Re: Расчет площадей, длин и координат в СК вида

Сообщение bolotoved » 27 янв 2012, 13:05

Да, и у меня три, не заметил сразу. Только вот расчеты на всех трех совпадают.

Voltron
Гуру
Сообщения: 2627
Зарегистрирован: 29 мар 2007, 14:12
Репутация: 34
Откуда: Ukraine

Re: Расчет площадей, длин и координат в СК вида

Сообщение Voltron » 27 янв 2012, 13:54

Более менее разобрался. В базе есть две записи

Код: Выделить всё

acronym     | name   | radius         | parameter2
WGS84       | WGS 84 | a=6378137.0    | rf=298.257223563
IGNF:ELG053 | WGS84  | a=6378137.0000 | rf=298.2572235630000
Имена практически одинаковы (в одном есть пробел, во втором ­— нет), зато акронимы разные. Для чего это нужно и нужно ли вообще я хз, пусть более умные товарищи выскажутся.
Далее. Третий WGS84 добавляется в процессе замены

Код: Выделить всё

ELLIPS_FLAT_DESC "None / Planimetric"
на значение из настроек. Т.е. сначала список заполняется, затем значение из настроек заменяет строку "None / Planimetric". Если в настройках указать не WGS84, а какой-то другой эллипсоид, то именно он продублируеся еще раз.

Ну и наконец, еще один момент. В том же списке два еллипсоида Clarke 1866, в базе они записаны как

Код: Выделить всё

acronym     | name        | radius         | parameter2
clrk66      | Clarke 1866 | a=6378206.4    | b=6356583.8
IGNF:ELG004 | Clarke 1866 | a=6378206.4000 | rf=294.9786982000000
Что делать с ними я тоже хз.

Ответить

Вернуться в «Предложения по QGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость