Більше

Розділення полігонів на * n * кількість груп рівних рахунків за допомогою ArcPy?


Одне з моїх робочих завдань - розділити посилки на групи. Ці групи будуть використовуватися агентами для спілкування з власниками нерухомості. Мета полягає в тому, щоб полегшити роботу агента, згрупувавши посилки, які знаходяться поруч один з одним, а також розділити посилки на рівну кількість, щоб робота розподілялася рівномірно. Кількість агентів може коливатися від пари до 10+.

Наразі я виконую це завдання вручну, але хотів би автоматизувати процес, якщо це можливо. Я досліджував різні інструменти ArcGIS, але, здається, жоден не відповідає моїм потребам. Я спробував сценарій (на python), який використовуєnear_analysisі вибір полігонів, але це досить випадково і займає вічно, щоб досягти напівправильного результату, який потім потребує більше часу, щоб виправити, ніж якби я просто зробив все вручну з самого початку.

Чи існує надійний метод автоматизації цього завдання?

Приклад результатів (сподіваюся, без поділу ми бачимо жовтим кольором):


Оригінальний набір:

Створіть його псевдокопію (перетягніть CNTRL у TOC) та зробіть просторове об’єднання один до багатьох із клоном. У цьому випадку я використав відстань 500 м. Вихідна таблиця:

  1. Видалити записи з цієї таблиці, де PAR_ID = PAR_ID_1 - легко.

  2. Ітерація по таблиці та видалення записів, де (PAR_ID, PAR_ID_1) = (PAR_ID_1, PAR_ID) будь -якого запису над нею. Не так просто, використовуйте acrpy.

Обчисліть центроїди водозбору (UniqID = PAR_ID). Вони є вузлами або мережею. З’єднайте їх рядками за допомогою таблиці просторового об’єднання. Це окрема тема, напевно, десь на цьому форумі.

Наведений нижче сценарій передбачає, що таблиця вузлів виглядає так:

де MUID надходить з посилок, P2013 - це поле для узагальнення. У цьому випадку = 1 тільки для підрахунку. [rcvnode] - вихід сценарію для ідентифікатора групи сховища, рівного NODEREC першого вузла у визначеній групі/кластері.

Структура таблиці посилань з виділеними важливими полями

Times зберігає вагу ланки/краю, тобто вартість проїзду від вузла до вузла. У цьому випадку дорівнюйте 1, щоб вартість проїзду для всіх сусідів була однаковою. [fi] і [ti] - послідовна кількість з'єднаних вузлів. Щоб заповнити цю таблицю, знайдіть у цьому форумі те, як призначити посилання на вузли та з них.

Сценарій, налаштований для мого власного робочого столу mxd. Потрібно змінити, жорстко закодувати з іменованням полів та джерел:

імпортувати arcpy, traceback, os, sys, час імпортувати itertools як itt scriptsPath = os.path.dirname (os.path.realpath (__ file__)) os.chdir (scriptsPath) імпортувати СОБІЙНУ sys.path.append (r'C:  Користувачі  felix_pertziger  AppData  Roaming  Python  Python27  site-packages ') імпортують networkx як nx RATIO = int (arcpy.GetParameterAsText (0)) try: def showPyMessage (): arcpy.AddMessage (str (time.ctime () ) + " -" + повідомлення) mxd = arcpy.mapping.MapDocument ("CURRENT") theT = COMMON.getTable (mxd)

ЗНАЙТИ ШВОЙ УЗЛІВ

theNodesLayer = COMMON.getInfoFromTable (theT, 1) theNodesLayer = COMMON.isLayerExist (mxd, theNodesLayer)

ОТРИМАЙТЕ ПОШИРКУВАННЯ

theLinksLayer = COMMON.getInfoFromTable (theT, 9) theLinksLayer = COMMON.isLayerExist (mxd, theLinksLayer) arcpy.SelectLayerByAttribute_management (theLinksLayer, "CLEAR_SromIn G = nx.Graph () arcpy.AddMessage ("Додавання посилань на графік") з arcpy.da.SearchCursor (theLinksLayer, (linksFromI, linksToI, "Times")) як курсор: для рядка в курсорі: (f, t, в) = рядок G.add_edge (f, t, weight = c) del row, cursor pops = [] pops = arcpy.da.TableToNumPyArray (theNodesLayer, ("P2013")) length0 = nx.all_pairs_shortest_path_length (G) nNodes = len (pops) aBmNodes = [] aBig = xrange (nNodes) host = [-1]*nNodes while True: RATIO+=-1, якщо RATIO == 0: розбити aBig = фільтр (лямбда x: x не в aBmNodes, aBig) p = itt.комбінації (aBig, 2) pMin = 1000000 малі = [] для a в p: S0, S1 = 0,0 для i в aВеликий: p = pops [i] [0] p0 = length0 [a [0 ]] [i] p1 = довжина0 [a [1]] [i], якщо p0

Приклад виводу для 6 груп:

Вам знадобиться пакет сайту NETWORKX http://networkx.github.io/documentation/development/install.html

Сценарій бере в якості параметра необхідну кількість кластерів (6 у наведеному вище прикладі). Він використовує таблиці вузлів і зв'язків для створення графіка з рівною вагою/відстанью ребер переміщення (Times = 1). Він розглядає поєднання всіх вузлів на 2 і обчислює загальну суму [P2013] у двох групах сусідів. Коли досягається необхідне співвідношення, напр. (6-1)/1 на першій ітерації, продовжується зі зменшеним коефіцієнтом співвідношення, тобто 4 і т.д. до 1. Початкові точки мають величезне значення, тому переконайтеся, що ваші «кінцеві» вузли розташовані у верхній частині таблиці ваших вузлів (сортування ?) Подивіться перші 3 групи у прикладі виводу. Це допомагає уникнути «зрізання гілок» на кожній наступній ітерації.

Налаштування сценарію для роботи з mxd:

  1. вам не потрібно імпортувати Спільне. Це моя власна річ, яка читає мою власну таблицю середовища, де вказано NodesLayer, theLinksLayer, linksFromI, linksToI. Замініть відповідні рядки власними іменами вузлів і шарів посилань.
  2. Зауважте, що поле P2013 може зберігати будь -що, наприклад кількість орендарів або площа ділянки. Якщо це так, ви можете групувати багатокутники, щоб утримувати приблизно однакову кількість осіб тощо.

Для досягнення мети слід скористатися інструментом «Груповий аналіз». Цей інструмент є чудовим інструментом із набору інструментів "просторової статистики", на що вказав @phloem. Однак вам слід налаштувати інструмент, щоб адаптуватись до ваших даних та проблеми. Я створив подібний сценарій, подібний до того, який ви опублікували, і отримав відповідь, близьку до вашої мети.

Підказка: Використовуючи ArcGIS 10.2, коли я запускав інструмент, він скаржився на відсутність пакета python, "шість". Тому спочатку переконайтеся, що він встановлений

Кроки:

  1. Додайте поле до вашого класу багатокутника, щоб зберігати унікальне значення
  2. Додайте ще одне поле типу Short з назвою, наприклад "Та сама група"
  3. Ви калькулятор поля призначити 1 для цього поля для всіх рядків. просто змініть один рядок на 2.

  4. Встановіть параметри інструменту "Груповий аналіз" таким чином:

спробуйте змінити параметр "Кількість сусідів" відповідно до ваших потреб.

Знімки результатів:


в основному вам потрібен метод кластеризації однакового розміру, тому ви можете шукати за цими ключовими словами в Інтернеті. Для мене є хороша відповідь на stats.SE з реалізацією Python в одній із відповідей. Якщо ви знайомі з arcpy, ви зможете використовувати його зі своїми даними.

Спочатку вам потрібно обчислити X і Y центроїдів ваших багатокутників, потім ви можете ввести ці координати у сценарій та оновити їх таблицю атрибутів за допомогою курсора .da.


Привіт, у мене була така ж проблема, як і раніше, тому я все -таки дав їй деякі запитання, але ніколи не починав з неї, але я думав лише про те, що вона є

ВХОДНА ФОРМА

Я думав, що ви можете створити ажурну сітку на формі введення

тоді сітка з перетином вашої фігури введення буде

Потім можна обчислити площу цих посилок всередині щойно обробленого багатокутника

На початку вашого скрипту потрібний полігон для введення області / n -го рівних розмірів

Тоді вам знадобиться спосіб зв’язати посилки, щоб вони знали про ті, що межують.

Потім ви можете пройти курсор рядка для підбиття підсумків посилок

Буття правил

*Він поділяє кордон до останнього літа *Він не підсумовується *Після того, як він перевищить значення, обчислене як рівна площа, він відступить, і це стане групою *Процес почнеться спочатку *Остання група може бути сума залишок посилок

Я думаю, що встановлення відносин між посилками може бути складним питанням, але як тільки це буде зроблено, я думаю, що це можна буде автоматизувати


Я вважаю, що розширення, яке ви шукаєте, є Окружним. Зазвичай він використовується для виборів, а також для однакових за розміром територій франшизи. (Розмір не обов'язково означає область, це можуть бути будь -які демографічні дані)

http://www.esri.com/software/arcgis/extensions/districting

http://help.arcgis.com/en/redistricting/pdf/Districting_for_ArcGIS_Help.pdf


Це моє рішення для точкових подій. Немає гарантій, що це завжди спрацює…

  1. На вашому шарі подієвої точки (шар виклику1) додайте стовпці для x (подвійний), y (подвійний) та uniqueid (довге ціле число)
  2. Відкрити таблицю атрибутів для шару 1. Обчисліть координатну точку x для x, координатну точку y для y та FID для унікального ідентифікатора
  3. Виконати інструмент просторової статистики> Зіставлення кластерів> Аналіз групування
    • встановити шар 1 як функції введення
    • встановити uniqueid як унікальний ідентифікатор поля
    • Визначте кількість груп (скажемо 10)
    • Виберіть x і y для полів аналізу
    • Виберіть "NO_SPATIAL_CONSTRAINT" для просторових обмежень
    • Натисніть OK
  4. Виконати інструменти просторової статистики> Вимірювання географічних розподілів> Середній центр
    • Виберіть Вихідні дані з № 3 як Клас вхідних характеристик
    • Виберіть SS_Group як поле випадку
    • Натисніть OK
  5. Відкрийте мережевого аналітика> Інструмент розподілу місцезнаходження
    • Завантажити вихід №4 як об'єкти
    • Завантажити шар 1 як точки попиту
    • Відкрийте атрибути та встановіть
      • Тип проблеми як максимальне покриття ємністю
      • Зручності на вибір 10 (з #3 вище)
      • Ємність за замовчуванням як загальна кількість функцій у шарі 1, поділена на об’єкти для вибору, округлена (так що якщо 145 функцій та 10 об’єктів/областей, встановіть 15)
      • Натисніть OK
        • Вирішити
        • Ваші бали попиту мають бути більш -менш рівномірно розподілені на 10 географічних кластерів

Вам спочатку потрібно створити мережевий набір даних, використовуючи ваші вулиці. Я випробував цей запропонований метод і до цього моменту мені пощастило робити те саме саме з Групуванням (крок 3) самостійно, використовуючи координати X, Y та k-засоби для полів введення (не ідеально, але швидше та ближче до того, що я є) потребує). Я відкритий для коментарів та відгуків інших.


Координати точок, що ділять коло на n рівних половин у гальці

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

щоб знайти коодринати, я використовую такий код:

За допомогою цього методу getPoints я заповнюю масиви x [] та y [], а потім перебираю ці масиви, щоб провести лінії між x [i] та y [i]

Однак значення, обчислені з наведеного вище коду, видаються дивними, нижче наведені журнали, що друкують вміст x [] та y []

Будь ласка, вкажіть, чого мені тут бракує.


3 відповіді 3

Я не впевнений, що ви маєте на увазі під "об'єднати всю їхню інформацію у групу", але ось спосіб отримати список із фреймами даних, розділеними на ваш вихідний фрейм даних, де кожен елемент є фреймом даних студентів у межах діапазон 10:

Я думаю, що відповіді @Sacha повинно вистачити для того, що вам потрібно зробити, навіть якщо у вас є більше одного набору.

Ви явно не сказали, як хочете "згрупувати" дані у своєму вихідному дописі, а у своєму коментарі, де ви додали другий набір даних, ви прямо не сказали, чи плануєте ви їх "об’єднати" першим ( rbind буде достатньо, як рекомендується в коментарі).

Отже, тут є кілька варіантів, кожен з яких має різні рівні деталізації або корисності у виведенні. Сподіваємось, що один із них відповідає вашим потребам.


Це трохи застаріло, але я вирішив ввести метод, який я використовую для розбиття масиву на шматки. Ви можете використовувати Group-Object зі сконструйованою властивістю:

$ groups буде набором об’єктів GroupInfo, у цьому випадку кожна група матиме рівно 100 елементів (доступних як $ groups [0] .Group, $ groups [1] .Group тощо). Я використовую властивість об’єкта для лічильник, щоб уникнути проблем з визначенням масштабу всередині блоку сценаріїв -Property, оскільки простий $ i ++ не виконує записування до вихідної змінної. Крім того, ви можете використовувати $ script: counter = 0 і $ script: counter ++ і отримати той самий ефект без спеціального об'єкта.


1 Відповідь 1

Це питання є дублікатом, див. Коментар ОП. На посиланому сайті доведено, що є $ n cdot2^$ допустимі триангуляції. Значно простіший доказ звучить так:

Існує рівно два трикутники $ трохвугольник $, $ трикутник_$, що мають дві сторони на $ частковому P $, а решта трикутників $ n-4 $ утворюють між ними впорядкований ланцюжок. Структуру цього ланцюжка можна закодувати як $ $ -слово довжиною $ n-4 $, доповнене $ trian_1 $ і $ трикутник_$ на кінцях, при цьому $ L $ (відповідно, $ R $) означає, що відповідний трикутник має свою $ часткову P $ -боку ліворуч (відповідно, праворуч) "віртуальної магістралі", що з'єднує $ трикутник_1 $ з $ трикутник_$.

Приклад: Коли $ n = 9 $, таке кодове слово може мати вигляд $ трикутник_1 , RRLRL & gt трикутник_7 $.

За такого кодового слова відповідний ланцюжок трикутників можна вкласти $ n $ способами у $ P $. Оскільки зміна орієнтації "хребта" і водночас обмін $ L $ та $ R $ призводить до рівних триангуляцій, ми повинні розділити отриману загальну суму $ n cdot 2^$ на $ 2 $, щоб отримати правильну кількість триангуляцій.


Висновок

Значний зв'язок між класифікаціями SOM та географічним розподілом коефіцієнтів, скоригованих населенням для окремих захворювань, продемонстрував позитивний зв'язок між умовами навколишнього середовища та результатами здоров'я, що підтверджує попередню роботу, яка описувала навколишнє середовище як визначальний фактор здоров'я населення. [28, 29] Цей результат забезпечує достовірність концептуальних теорій на основі спостережень, що свідчить про те, що довкілля функціонує як складна система, і це середовище корелює з розподілом як хронічних, так і інфекційних захворювань серед населення на рівні громад. [3, 30, 2] Враховуючи, що умови навколишнього середовища пов'язані з результатами здоров'я, змінні середовища можуть бути корисними для оцінки здоров'я населення. Багатоваріантні екологічні оцінки можуть бути використані як проміжні засоби для практичних оцінок стану здоров'я у випадках, коли дані обмежені. Потрібно подальше вивчення, щоб визначити внесок окремих змінних (або груп змінних), визначити легкодоступні набори даних та повністю дослідити розробку значущої проксі -міри.


Висновки

Це дослідження демонструє, що комбіноване зважування населення та площі, порівняно з картографічним центроїдом та простими методами зважування площі, та геостатистичним методом, повертає більш точні оцінки смертності при перетворенні малих відсотків за округами до сукупних показників для великих цільових зон, які не відповідають стандарту одиниці переліку. Зважування за допоміжними даними про населення для врахування групи ризику у поєднанні з розподілом зваженої смертності, яка усуває проблему «все або нічого», властиву методам центроїдів, розподіляє помилки по зонах дослідження, покращуючи таким чином оцінки. Крім того, практики, які не мають ресурсів геопросторових статистиків та програмного забезпечення, можуть вважати цей простіший картографічний метод більш доступним та таким же ефективним у перетворенні підрахунків вихідних зон на рівні округу на більші, нестандартні цільові зони. Ця методологія повинна зацікавити практиків та дослідників, що обмежуються аналізом даних підрахунку щодо порівняно великих одиниць переліку, таких як підрахунки смертності на рівні округу NCHS, серед інших джерел даних. Ми очікуємо, що ми будемо спостерігати збільшення підтримки використання комбінованих оцінок сукупності та площі, особливо над іншими методами картографічного накладання.


Найкраща дієта: якість має значення

«Калорія-це калорія»-це часто повторюване дієтичне гасло, і не переїдання насправді є важливою мірою здоров’я. Однак, замість того, щоб зосередитися лише на калоріях, нові дослідження показують, що якість також є ключовою при визначенні того, що ми повинні їсти, а чого слід уникати, щоб досягти і підтримувати здорову вагу. Замість того, щоб вибирати продукти тільки на основі калорійності, подумайте замість того, щоб вибрати якісні, здорові продукти та мінімізувати низькоякісні продукти.

  • Якісні продукти харчування включають нерафіновані, мінімально оброблені продукти, такі як овочі та фрукти, цільне зерно, здорові жири та корисні джерела білка - продукти, рекомендовані в табличці здорового харчування.
  • Низькоякісні продукти харчування включають сильно перероблені закуски, напої, підсолоджені цукром, рафіновані (білі) зерна, рафінований цукор, смажені страви, продукти з високим вмістом насичених і трансжирів, а також продукти з високим глікемічним складом, такі як картопля.

Не існує однієї «ідеальної» дієти для всіх через індивідуальні відмінності в генах і способі життя.

Якість має значення

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

Дослідники Департаменту харчування Гарвардської школи громадського здоров’я показують нам, що якість насправді дуже важлива при визначенні того, що ми повинні їсти, щоб досягти і підтримувати здорову вагу, і що поняття «калорія - це калорія» не говорить вся історія.

  • У дослідженні понад 120 000 здорових жінок та чоловіків за 20 років дослідники визначили, що зміна ваги найсильніше пов’язана з вживанням картопляних чіпсів, картоплі, напоїв, підсолоджених цукром, а також переробленого та необробленого червоного м’яса. Дослідники дійшли висновку, що споживання оброблених продуктів, що містять більше крохмалю, рафінованого зерна, жирів і цукру, може збільшити збільшення ваги.
  • Доведено, що продукти, пов’язані зі схудненням, - це овочі, цільні зерна, фрукти, горіхи та йогурт.
  • Дослідники не спростували важливість калорій, натомість припустили, що вибір високоякісних продуктів (та зменшення споживання неякісних продуктів) є важливим чинником, що допомагає людям споживати меншу кількість калорій. (23)

Перегляньте прес-реліз HSPH: «Зміни в конкретних дієтичних чинниках можуть мати великий вплив на довгострокове збільшення ваги: ​​Стратегія зниження ваги лише« їсти менше, більше тренуватися »може бути надто спрощеною» »

Управління макроелементами: чи це важливо?

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

В одному дослідженні, опублікованому в JAMA в 2007 році, порівнювали чотири дієти для схуднення, починаючи від низького і до високого споживання вуглеводів. Це 12-місячне випробування проходило за більш ніж 300 жінками з надмірною вагою та ожирінням у період пременопаузи, довільно розподіливши їх на дієту Аткінса (з дуже низьким вмістом вуглеводів), Зону (з низьким вмістом вуглеводів), НАВЧАННЯ (з високим вмістом вуглеводів) або Орніша (з високим вмістом вуглеводів).

  • Через рік втрата ваги була більшою для жінок у групі дієти Аткінса порівняно з іншими групами дієт.
  • У цьому дослідженні також були розглянуті вторинні результати, зосереджені на метаболічних ефектах (таких як холестерин, відсоток жиру в організмі, рівень глюкози та артеріальний тиск), і було виявлено, що результати для групи Аткінса були порівнянні з іншими групами дієти або є більш сприятливими для них.
  • Не було значної різниці у схудненні серед інших трьох дієт (Zone, LEARN та Ornish).
  • Це дослідження дійсно викликає питання про довгострокові наслідки та механізми, але дослідники дійшли висновку, що дієта з низьким вмістом вуглеводів, з високим вмістом білка та з високим вмістом жирів може вважатися можливою рекомендацією для схуднення. (24)

Інше дослідження, опубліковане в The New England Journal of Medicine у ​​2009 році, оскаржило результати вищезазначеного дослідження, протестувавши чотири різні види дієт і давши результати, які показали порівнянну середню втрату ваги серед різних дієт.

  • У дослідженні взяли участь 800 осіб протягом 2 років, призначивши суб’єктів однієї з чотирьох дієт: з низьким вмістом жиру та середнім вмістом білка, з низьким вмістом жирів та з високим вмістом білка, з високим вмістом жиру та з середнім вмістом білка, а також з високим вмістом жирів та з високим вмістом білка.
  • Дослідники дійшли висновку, що всі дієти призвели до значної втрати ваги, незважаючи на відмінності у складі макроелементів.
  • Дослідження також виявило, що чим більше учасників групового консультування відвідували, тим більше вони втрачали вагу і тим менше вагу вони набирали. Це підтверджує ідею, що не тільки те, що ви їсте, важливо, але й поведінкові, психологічні та соціальні фактори також важливі для схуднення. (25)

Додаткове дослідження, опубліковане в The New England Journal of Medicine у ​​2010 році, розглянуло роль білка та глікемічного індексу для підтримки втрати ваги. Спочатку дослідники запровадили низькокалорійну дієту для зниження ваги, а потім дослідили, чи впливають білки та глікемічний індекс на підтримання втрати ваги.

  • Досліджене населення складалося з майже 800 дорослих із надмірною вагою з європейських країн, які втратили щонайменше 8% своєї початкової маси за допомогою низькокалорійної дієти. Потім учасникам було призначено одну з п’яти дієт для запобігання відновленню ваги протягом 26-тижневого періоду: дієта з низьким вмістом білка та низьким глікемічним індексом, дієта з низьким вмістом білка та високим глікемічним індексом, дієта з високим вмістом білка та низьким вмістом дієта з глікемічним індексом, дієта з високим вмістом білка та високим глікемічним індексом або контрольна дієта.
  • Дієта з низьким вмістом білка і високим глікемічним індексом була пов'язана з подальшим значним відновленням ваги, і відновлення ваги було меншим у групах, призначених на дієту з високим вмістом білка, ніж у групах з низькобілковою дієтою, а також менше у групи, призначені на дієту з низьким глікемічним індексом, ніж у групи, призначені на дієту з високим глікемічним індексом.
  • Ці результати показують, що помірне збільшення вмісту білка та помірне зниження глікемічного індексу призвело до покращення підтримки втрати ваги. (26)

Результати цих трьох досліджень свідчать про те, що дієтичний підхід на основі макроелементів може мати певні переваги, але дослідження також показують, що хоча певна дієта може призвести до втрати ваги для однієї людини, вона може бути неефективною для іншої людини через індивідуальні особливості відмінності в генах і способі життя. Тому для тих, хто шукає «ідеальну» універсальну дієту, не існує такої! Чудова новина полягає в тому, що кожен може слідувати правилам «Здорового харчування» та вибирати корисні, ароматні продукти, щоб створити дієту, яка найкраще підходить вам.

Посилання


23. Мозаффаріан Д. та ін., Зміни в харчуванні та способі життя та довгострокове збільшення ваги у жінок та чоловіків. N Engl J Med, 2011. 364 (25): стор. 2392-404.
24. Гарднер, К. Д. та ін., Порівняння дієт Аткінса, Зони, Орніша та ВИВЧЕННЯ щодо зміни ваги та пов'язаних з ними факторів ризику серед жінок із передменопаузою із надмірною вагою: Дослідження втрати ваги A TO Z: рандомізоване дослідження. ДЖАМА, 2007. 297 (9): стор. 969-77.
25. Сакс, Ф. М. та ін., Порівняння дієт для схуднення з різним складом жирів, білків та вуглеводів .N Engl J Med,2009. 360 (9): стор. 859-73.
26. Ларсен, Т.М. та ін., Дієти з високим або низьким вмістом білка та глікемічним індексом для підтримки схуднення .N Engl J Med, 2010. 363 (22): стор. 2102-13.

Умови використання

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


Удосконалення та оцінка заповнення граничної алгебри для виявлення перетинів багатокутників

Перетин багатокутників важливий для обробки даних у геоінформаційних системах. Для великих наборів даних методи просторового індексування, такі як R-дерево, дозволяють ідентифікувати перетини полігонів, але часто отримують неточні результати. Поліпшений метод заповнення граничної алгебри (iBAF) був попередньо запропонований як альтернатива R-дереву. Однак його застосування, продуктивність та точність вимагають оптимізації, а умови його застосування залишаються невідомими. Це дослідження розробляє версію iBAF 2.0 для більш ефективної ідентифікації та оцінює продуктивність для різних обчислювальних інтенсивностей та застосувань. І перетинаються полігони, і растрові зони в межах перетинів можна швидко згрупувати в растровані комірки вхідних полігонів. Отримані полігони можна генерувати шляхом налаштування груп багатокутників або перетворення зон у вектори. Ми використовуємо коефіцієнт складності CR, що визначається як сума кількості багатокутників у кожній фактично перетинається групі, поділена на загальну кількість багатокутників, для представлення обчислювальної інтенсивності. Розглядаються два набори даних про землекористування, що містять 4295 та 741,562 багатокутників, і ми встановлюємо тестові приклади, що містять однакові багатокутники з різними CR. Експериментальні результати показують, що iBAF 2.0 перевершує R-дерево при застосуванні до перевірки топології, однак його продуктивність є умовною для накладання полігону та обчислення площі між двома шарами. Зокрема, iBAF 2.0 демонструє більш ефективну групування багатокутників і растрових зон, коли CR перевищує певні порогові значення. Крім того, краща масштабованість досягається порівняно з R-деревом, коли розглядаються полігони зі складною формою та додатковими шарами.

Це попередній перегляд вмісту передплати, доступ до якого здійснюється через вашу установу.


6 Відповіді 6

Відкрийте налаштування сітки та оснастки, натисніть середню точку

Виберіть свій об’єкт, на панелі редагування натисніть редагувати полі

У розгортанні "виділення" натисніть край

Знайдіть і натисніть "вставити кнопку вершини", націліть потрібний край і натисніть його

Виберіть об’єкт, до якого потрібно застосувати підрозділ. Перейдіть на панель зміни та у списку модифікаторів перейдіть до модифікаторів простору об’єктів. У списку виберіть Підрозділ. Тепер його слід застосувати до вибраного об’єкта

Знайшов цей допис через Google і вирішив надати розширений список варіантів досягнення цього результату з іншої статті на цю тему. Залежно від вашого варіанту використання, існує інший підхід, який додасть вершину або, у деяких випадках, додасть кілька. Щоправда, деякі краще підходять, ніж інші. Усі використовують набір інструментів модифікатора Editable Poly.

1. Вставте Vertex Tool

У крайовому режимі є кнопка з написом «Вставити вершину». Він робить саме те, що говорить. Просто натисніть на ребро, щоб додати стільки вершин, скільки вам потрібно. Увімкніть знімки (в ідеалі - середню точку), щоб не зійти з розуму.

2. Інструмент підключення Натисніть будь -які два ребра, коли ви перебуваєте в режимі країв, і ви можете скористатися інструментом Connect. Це створює додатковий край між двома (або більше) обраними краями. У кожній кінцевій точці є нова вершина.

3. Швидкий зріз Швидкий зріз створить ребро на двовимірній площині (або тривимірній площині, якщо на непроектованому поданні), що створює нову точку вершини в кожній точці перетину з іншим ребром вашої моделі. Це не підхід, який я б використав, але, безумовно, створив би додаткові вершини.

4. Площина зрізу Подібний до інструменту швидкого зрізу, але дозволяє використовувати інструмент gizmo для налаштування в 3D -просторі з 2D -вигляду. Створює багато вершин у точках перетину.

5. Інструмент мозаїка Знову ж таки, цей підхід я б не рекомендував, але в деяких випадках може бути корисним. Істотне підрозділяє вашу геометрію, додаючи додаткові ребра. Буде обмежено будь-яким виділеним суб-об’єктом (грань або краї). Нові вершини знаходяться в кінцевих точках.


Подивіться відео: python file for buffer in arcGIS (Жовтень 2021).