Яка різниця між маркерами "SHAPE @ XY" та "SHAPE @ TRUECENTROID"?


9

Курсор пошуку доступу до даних .

У чому, якщо що, різниця між лексемами "SHAPE@XY"та "SHAPE@TRUECENTROID"?

Вони повернули ті ж координати на тестовому полігоні:

>>> cursor = arcpy.da.SearchCursor("test", "SHAPE@XY")
>>> for row in cursor:
...     print row[0]
...     
(559389.3838043335, 4239093.201390337)

>>> cursor = arcpy.da.SearchCursor("test", "SHAPE@TRUECENTROID")
>>> for row in cursor:
...     print row[0]
...     
(559389.3838043335, 4239093.201390337)

введіть тут опис зображення

Це поводилося так само і для багатокутної функції багатокутника. Чи повертає він колись різні результати?

Відповіді:


4

Мені було цікаво і щодо цього, тому я трохи поцікавився і провів деякі дослідження. те, що я знайшов, було

SHAPE@XY A tuple of the feature's centroid x,y coordinates.
SHAPE@TRUECENTROID —A tuple of the feature's true centroid x,y coordinates.

У цій статті описано, наскільки вони однакові приблизно в 95% часу, але це призведе до незначної різниці, що залишилися 5%

https://geonet.esri.com/thread/92121

цитується із статті "Отже, суть цієї публікації полягає в тому, що використання маркера SHAPE @ XY вводить в оману. Це те саме, що отримання значення SHAPE @ TRUECENTROID для X&Y. Це також стосується SHAPE @ X або SHAPE @ Y. Це спричинить проблеми для людей, які хочуть геокодувати адреси адрес, а потім зробити будь-який тип просторового аналізу, де важливий підрахунок балів у посилках. Будуть незвичайні посилки, які повинні мати точку всередині, але ні, та точки в інших посилках. цього не повинно бути, але вони розміщені через центр ваги непарної посилки. Я використовую токен SHAPE @, щоб уникнути цієї проблеми, але це означає, що для зберігання всього об’єкта геомашини багатокутника потрібно просто більше пам'яті. центроїд, який робить більш повільним сценарій ".


Я дуже сподівався на внутрішню точку, тож це справді корисно. Дякую.
Брюндаж Еміля

Чи немає внутрішньої точки? Може бути , просто оголосити з ВГК @ повернути геометрію і використовувати LabelPoint ( resources.arcgis.com/de/help/main/10.1/index.html # // ... ) , який гарантовано буде всередині або на геометрії.
Майкл Стімсон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.