Сценарії обчислення довжини та площі ArcGIS [закрито]


13

Намагаючись зрозуміти, як обчислюється довжина та площа в різних сценаріях в ArcGIS. Я не знаю, чому я не можу знайти відповідь у полях класів функцій, але я не можу знайти точну відповідь, якщо я щось не розумію і знаю, що є історія. Чи можете ви допомогти мені заповнити питання? Або скажіть мені, чому я з цим все роблю неправильно; )

GCS = Географічна система координат PCS = Проектована система координат
Усі посилання на довідкові документи 10.1 -

  1. Характеристики Поля shape_length та shape_area
    а. GCS -?
    б. PCS - Використання простих плоских
    c. Чи завжди оновлюється автоматично, за винятком форм-файлів? так

  2. Інструмент вимірювання ArcMap
    a. GCS - геодезичні за замовчуванням, альтернативами є Loxodrome та Great Elliptic, але не планарні. Розрахунок площі недоступний!
    б. PCS - планар за замовчуванням, альтернативи Geodeic, Loxodrome та Great Elliptic
    http://resources.arcgis.com/en/help/main/10.1/index.html#//00s500000022000000

  3. Калькулятор таблиці атрибутів
    a. GCS - недоступний
    b. PCS - планарний
    http://resources.arcgis.com/en/help/main/10.1/index.html#//005s00000027000000

  4. Обчислити польовий інструмент (панель інструментів для управління даними)
    a. GCS - геодезична лінійна, доступна, але сумнівна
    b. PCS - планарний
    http://resources.arcgis.com/en/help/main/10.1/index.html#//00170000004m000000

  5. Інструмент буферизації (та інші інструменти, що надходять)
    a. GCS - геодезична
    b. PCS - планарний або вказати вихід GCS http://resources.arcgis.com/en/help/main/10.1/index.html#//000800000019000000

  6. Клієнти API Javascript
    a. GCS - геодезичні функції площі та довжини
    b. PCS - може конвертувати з веб-маркера в географічний (або використовувати геометричний сервіс) http://help.arcgis.com/en/webapi/javascript/arcgis/help/jsapi/namespace_geometry.htm

  7. Flex API Clientide
    a. GCS - геодезичні функції площі та довжини, "Довжина [або площа] буде обчислена за допомогою спеціальної циліндричної проекції на рівну площу". Це не згадується в api javascript !!
    б. PCS - може конвертувати з веб-маркера в географічний http://resources.arcgis.com/en/help/flex-api/apiref/com/esri/ags/utils/GeometryUtil.html

  8. ArcGIS Server REST API - служба геометрії
    a. GCS - геодезична
    b. PCS - планарний
    http://help.arcgis.com/en/webapi/javascript/arcgis/help/jsapi/geometryservice.htm

Ще одне питання, що саме таке геодезичне вимірювання? Я думав, що це означає тривимірну формулу тригера на сфероїді (гаверсин?). І чи занадто повільно це використовувати для обчислення площі, і тому використовуються рівні проекції площі?

Інше питання при визначенні довжини та площі - чи проекція на рівну площу більш точна, ніж геодезичний розрахунок, використовуючи ту саму дату, сфероїд? І коротко чому?


2
Щодо останнього запитання, будь ласка, див. Яка найточніша система координат для обчислення площ багатокутників? . Для передостаннього, оскільки існують рівні проекції площі для еліпсоїдів, набагато простіше обчислити області з такими проекціями, ніж писати специфічний для еліпсоїдів код. Ситуація не така приємна для обчислення відстаней, тому що жодна проекція не відтворює вірно всі відстані: таким чином, прямі сферичні та еліпсоїдальні формули відстані часто реалізуються у хороших ГІС.
whuber

1
1.b, 3.b і 4.b використовують проектовану систему координат, тому площинну. 1.c завжди автоматично оновлюється, коли ви використовуєте базу даних геоданих (персональний / файл / SDE).
Єнс

2
Я думаю, що найкраще розділити свої запитання. Таким чином ви отримаєте найкращі відповіді на кожну з них. Проголосувати відповіді було б і простіше.
РК

1
Я думаю, що тут є близько 10 питань, на кожне з яких, швидше за все, було б швидко відповісти, якби вони були представлені по одному (як окремі запитання). Скупчення багатьох питань в одному ускладнює наш стиль відповідей на запитання та відповіді.
PolyGeo

1
Це не гарний кандидат на КВ. Більше того, він, мабуть, не надто широкий: це здається лише завдяки ретельному перерахуванню багатьох різних способів, які ArcGIS пропонує виконувати обчислення площі та довжини. Це все ще одне єдине питання, яке було чітко зосереджено.
whuber

Відповіді:


5

По суті, ваше запитання стосується точного (та ефективного) розрахунку довжини та площі у великому регіоні. Практичні деталі (в даному випадку щодо ArcGIS) ви вже заповнюєте ви та інші. Вони також, схоже, вказують на ці загальні висновки:

  • довжина найкраще обчислюється за допомогою геодезичних (географічних) координат
  • область найкраще обчислювати за допомогою плоских координат проекції на рівну площу [Редагувати: Але складність межі або кількість вершин, необхідних для її опису, також є фактором - див. відповідь @ cffk]

Ось кілька пояснень:

геодезична є

найкоротша лінія між двома точками на математично визначеній поверхні (як пряма лінія на площині або дуга великого кола на кулі)

http://wordnetweb.princeton.edu/perl/webwn?s=geodesic%20line (FYI, на еліпсоїді, геодезична, як правило, трохи S-образна.)

Хоча обчислення геодезики (довжини на еліпсоїді) є відносно важкими, порівняно з використанням відомого рівняння Піфагора, вони можливі та точні. Однак вони порівняно легкі порівняно з розрахунками площ на еліпсоїді.

Картографічні проекції, як правило, не зберігають лінійні масштаби, тому координати проекцій загалом не підходять для розрахунків довжини. (Є винятки, але вони залежать від того, де ви знаходитесь на проекції або в якому напрямку ви рухаєтесь.) Що стосується області , то існує клас проекцій, який точно зберігає ареальну шкалу: проекції на рівну площу. Обчислення площин на площині зробити досить просто, і, якщо використовується проекція на рівну площу, вона є точною.

Є багато хороших джерел про геодезію чи проекції карт, які можуть допомогти. Наприклад, Геометрична геодезія: використання інформаційних та комп’ютерних технологій Маартена Хуйберга.


Характеризувати геодезичну як S-подібну, ймовірно, вводить в оману, оскільки це означає, що це не найкоротший шлях. Мені відомі різні фігури, які зображують геодезичну як криву S-подібну криву між двома нормальними ділянками. Але я підозрюю, що це не точно.
cffk

Якщо жоден з двох нормальних ділянок не є геодезичним, чи не повинен геодезик прокладати між ними і збігатися належним чином з кожним на кінцях?
Мартін Ф

4

Щоб відповісти на питання про вимірювання площ. Якщо ви хочете виміряти площу багатокутника, краї якого геодезичні, у вас є два варіанти:

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

Другий метод, як правило, швидший і точніший, якщо краї полігону не дуже короткі. На жаль, аркгіз не реалізує цей метод (але він повинен!). Однак GeographicLib і proj (версія 4.9.0 і пізніші) це роблять. Додаткову інформацію див. У статті Вікіпедії про область геодезичного полігону .


+1 Але я переживаю за точність геодезичних розрахунків при застосуванні до малих багатокутників (таких як райони житлових посилок): оскільки додавання та віднімання величезних площ для отримання кінцевої площі, це надзвичайне скасування та втрата точність. Коли координати були справді подвійною точністю, це, мабуть, не було проблемою, але з ГІСами, які дискретизують їх координати до цілісної сітки для їх розрахунків (що включає ArcGIS), це, правдоподібно, знищить майже всю притаманну їм точність та призведе до отримання сміття.
whuber

Неможливо зробити нічого, якщо в початкових координатах є помилки. Однак загальна точність формул геодезичної зони з використанням подвійної точності в гіршому випадку становить 0,1 м ^ 2 на вершину. Типових помилок набагато менше. Я ретельно перевіряв межі різних провінцій Польщі. Наприклад, полігон для Кракова має 8416 вершин (найдовший край = 405 м, найкоротший край = 0,02 м). Справжня площа (WGS84) = 326798565.428446 м ^ 2, обчислена площа (утиліта Planimeter GeographicLib) = 326798565.4285 м ^ 2.
cffk

Правильно: подвійна точність - це добре, оскільки вона має близько 52 біт точності, і ви втрачаєте не більше 20 при розрахунках Гаусса-Бонне (кутове перевищення). Але підписані цілі числа мають максимум 32 біти точності (і часто зовсім трохи менше, залежно від того, як ініціалізується область аналізу), тому втрата 20 з них може стати помітною. Я говорю про втрату точності в обчисленнях, а не про наслідки помилок у самих координатах.
whuber

Я не впевнений, чому я хотів би представити будь-які реальні величини як підписані цілі числа в середині такого обчислення. (Також звідки береться ваша оцінка в 20 цифр для втрати точності?) Я погоджуюся, що оцінити помилку для реалістичних багатокутників складно. Так, у випадку з Краковом, цитованим вище, я обчислював справжню область за допомогою грубої сили (оцінюючи формули площі, що містять 20 рядів у серії, і використовуючи 75-значну арифметику). У мене також є подібні дані для інших провінцій Польщі та для всієї країни (68000 вершин), площа = 312е9 м ^ 2, похибка = 0,001 м ^ 2.
cffk

1
ДОБРЕ. Однак я все ще не розумію, чому представлення координат на цілій сітці вимагає робити обчислення цих координат, використовуючи цілі числа, а не подвійну точність. Тож мені здається, що ти влучиш по точності вперед, квантуючи координати до сітки. Однак додаткова помилка через укорочення рядів і округлення під час обчислення площі може бути зроблена досить невеликою (див. Приклади вище).
cffk
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.