Могу ли я создавать, объединять и пересекать трехмерные мультипатчи, используя расширение 3D Analyst (ArcGIS 10)?


9

Я нахожусь на ArcGIS 10. Согласно всей документации, которую я прочитал, 3D Analyst должен иметь возможность делать то, что я пытаюсь, но я сталкиваюсь с проблемой за проблемой, и я почти готов дать и найти более простой способ ответить на вопрос, который мне задают.

В двух словах, у меня есть несколько слоев, которые мне нужно пересечь или объединить в 3D. Некоторые из них являются точками (тысячи из них, каждый из которых представляет трехмерный том, куб или сферу, размеры которой являются значениями атрибутов), некоторые являются полигонами. Я уверен, что инструменты 3D Union и 3D Intersect работают только с функциями Multipatch, поэтому мне нужно сначала преобразовать все из них в функции Multipatch.

Основная проблема , у меня до сих пор является то , что инструменты 3D Analyst Союза и отказываются Пересечение работать на особенностях MultiPatch, которые не являются «закрытыми», и я не могу заставить ArcGIS для создания Multipatches , которые будут закрыты. Я попытался преобразовать свой слой из одного полигона (8 объектов) в Multipatch, выдавив его в Arcscene, используя его высоту, и преобразовав его в мультипатч, а также используя инструмент «Выдавливание между», и они оба создали несколько мультипатчей, которые закрыты и некоторые это не так. Я попытался преобразовать мои очки в сферы, используя пример, который я нашел на сайте ESRI здесь:

http://www.esri.com/news/arcuser/1010/3danalysis.html

Это говорит о том, что вы должны обозначать точки как сферы, используя атрибут в качестве радиуса, а затем использовать инструмент «Слой 3D в класс объектов», чтобы превратить их в мультипатчи. Это также создает мультипатчи, которые не закрыты и, следовательно, бесполезны. Я еще не занимался преобразованием точек в 3D кубы.

Поэтому, если кто-нибудь знает способ надежного создания закрытых мультипатчей из 2D-слоев многоугольника и / или центральных точек (с атрибутами, описывающими размеры), дайте мне знать. Любые альтернативные программные решения тоже были бы хороши, я не привязан к ESRI. В самом деле, после того, как в течение последних нескольких дней об этом позаботились и поняли, что собственные инструменты ESRI создают мультипатчи, которые нельзя использовать со многими инструментами 3D Analyst, предпочтительнее была бы альтернатива.

ETA: после чего я в конечном итоге вычисляю объем пространства, которое занимают (например) кубы со значением атрибута X, где они пересекают сферы со значением Y (конечно, у меня много и много значения X и Y для запуска).


Хороший вопрос. Сферы не закрыты? Можете ли вы получить объем из мультипатчей сфер, созданных с помощью техники 3D To FC?
Якуб Сисак География

Я могу рассчитать объемы (используя инструмент «Добавить информацию Z») для закрытых мультипатчей, хотя я еще не пробовал с шарами. Возникающая у меня проблема заключается в том, что не существует надежного способа создания «закрытых» мультипатчей или принудительного закрытия ArcGIS открытых. Что сводит с ума, потому что я использую инструменты ESRI для их создания. Можно подумать, что их собственные инструменты будут создавать объекты, которые правильно сконструированы (очевидно, для того, чтобы мультипатч был «закрыт», его вершины должны быть созданы в определенном порядке).
Дан С

Я считаю, что только мультипатч, который имеет объем, может быть закрыт. Например, вы не можете закрыть мультипатч полигона, но экструдированный мультипатч полигона должен быть закрыт. Причина, по которой я спрашивал о сферах, заключается в том, что только замкнутые мультипатчи могут быть объединены / пересечены. Вы также можете получить объем (Add Z Information) только из замкнутого мультипатча, так что с технической точки зрения, если вы можете получить том, его можно пересечь и объединить с другим мультипатчем, который закрыт.
Якуб Сисак GeoGraphics

Да, вот в чем проблема: я выдавливаю полигоны, но когда я конвертирую их в мультипатчи, они не закрываются. И, кажется, нет способа их закрыть.
Дан С

Ответы:


8

Чтобы закрыть функцию мультипатча, она должна полностью заключать том. Многоэлементные объекты, созданные с помощью инструмента Интерполировать мультипатч к полигону (с использованием поверхности) , скорее всего, не будут закрыты. (Если вы не выдавливаете между двумя поверхностями TIN, которые должны создавать замкнутый мультипатч. Лично у меня не было большого успеха при использовании «Выдавливания между» со сложными поверхностями)

Я попытался запустить пример со сферами и создал 2 пересекающихся класса объектов-мультипатчей. Сферы закрыты. Я также смог рассчитать объем сфер. Пересечение прошло успешно без ошибок и дало ожидаемые результаты. (См. Снимки экрана ниже). Затем я создал несколько круглых многоугольников, вытеснил их и преобразовал их в объекты с множественными патчами. Пересечение также удалось без ошибок.

Я подозреваю, что ваши многоугольники многоугольника не полностью включают объем. Как именно они были созданы? Можете ли вы предоставить некоторые снимки экрана? (Возможно, вам придется создавать более сложные трехмерные объекты сплошных объектов в стороннем программном обеспечении для 3D-рисования, поскольку ArcGIS очень ограничен в этой области. Вы можете попробовать редактировать мультипатч в SketchUp с помощью Collada, а затем заменить модель, когда вы закончите редактирование. ) ArcScene 3D Editor -> Заменить моделью (Это должно быть возможно в соответствии с документацией, но я не пробовал.)

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

  2. Результирующее пересечение вышеперечисленного (функции закрыты - также рассчитывается объем): введите описание изображения здесь введите описание изображения здесь

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

  4. Результирующее пересечение (вытянутые многоугольники, преобразованные в объекты с множественными точками): объекты введите описание изображения здесь "многоугольника" закрыты


Спасибо! Я думаю, что теперь он работает со сферами и экструдированными слоями многоугольников в качестве входных данных для нескольких патчей. Однако, после завершения трехмерного пересечения, похоже, что получившийся слой мультипатча не сохраняет поля и данные атрибутов, связанные с входными объектами, как это делает нормальное пересечение. У меня просто есть поля ObjectID и Shape. Это нормально? Это будет проблемой. Я получу еще один комментарий вместе с подробностями об ошибках, которые я делал (в основном, из-за того, что экструдированные полигоны, которые не были закрыты при преобразовании в мультипатчи, имели перекрывающиеся секции).
Дан С

Пересечь 3D (3D Analyst) - все атрибуты входных объектов будут потеряны. Union 3D (3D Analyst) - выходной класс объектов не будет иметь никаких атрибутов во входном классе объектов. Необязательная таблица может быть создана запись, функции которых были объединены вместе, чтобы создать новую функцию. Это новые концепции в 3D Analyst, представленные только в версии 9. В предыдущей версии мы даже не могли рассчитать объем мультипатча. Если ESRI не вложит много сил в улучшение 3D-моделирования, это всегда будет слабым звеном.
Якуб Сисак GeoGraphics

0

Хорошо, вот две проблемы, с которыми у меня была проблема преобразования конвертированных полигонов в мультипатчи:

  1. Ваши полигоны должны быть в спроецированной системе координат. Я думал, что все мои были, но где-то по пути я пропустил шаг и пытался конвертировать многоугольники, которые были в lat / long WGS84. Проектирование его в UTM решило эту проблему и позволило мне двигаться дальше, когда я обнаружил # 2:

  2. Ваши полигоны должны полностью заключать пробел, как говорит Якуб, но, кроме того, они, очевидно, должны заключать только одну пробел. У меня было несколько «болтаний» на моих полигонах, где они пересекаются:

поэтому, когда я их выдавил, одна особенность имела два отдельных закрытых тома. Это не удалось преобразовать в закрытый мультипатч. Обрезка многоугольника в точке, где он перекрывает себя (там, где указывает стрелка) и удаление детали слева, исправили его. Вероятно, это сработало бы, если бы я сохранил обе части как отдельные элементы и выдавил их по отдельности, но часть слева была ошибкой в ​​моем случае.

Когда все это было сделано, я смог взять многоугольник со значением высоты, выдавить его, используя его высоту в ArcScene, а затем использовать инструмент Layer 3D To Feature Class, чтобы преобразовать его в мультипатч, и все они закрыты.


1
Еще одна небольшая проблема, с которой я столкнулся, будучи новичком в 3D Analyst, заключается в том, что при обозначении точек в виде сфер в наборе символов ArcScene Basic есть символ «сфера», но его нельзя использовать для 3D-сферы. Правый находится в наборе символов 3D Basic.
Дан С
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.