Posso creare, unire e intersecare le funzionalità multipatch 3D usando l'estensione Analista 3D (ArcGIS 10)?


9

Sono su ArcGIS 10. Secondo tutta la documentazione che ho letto, 3D Analyst dovrebbe essere in grado di fare quello che sto cercando di farlo, ma sto incontrando problemi dopo problemi e sono quasi pronto a dare e trova un modo più semplice per rispondere alla domanda che mi viene posta.

In breve, ho diversi livelli che devo intersecare o unire in 3D. Alcuni sono punti (migliaia di essi, ciascuno dei quali rappresenta un volume 3D, un cubo o una sfera, le cui dimensioni sono valori di attributo), altri sono poligoni. Sono abbastanza sicuro che gli strumenti 3D Union e 3D Intersect funzionano solo con le funzionalità Multipatch, quindi devo prima convertirle tutte in funzionalità Multipatch.

Il problema principale che sto avendo finora è che gli strumenti 3D Analyst dell'Unione e si intersecano si rifiutano di operare sulle caratteristiche MultiPatch che non sono "chiuso", e io non riesco a forzare ArcGIS per creare Multipatches che vengono chiusi. Ho provato a convertire il mio unico livello poligonale (8 funzioni) in un multipatch sia estrudendolo in Arcscene usando la sua altezza e convertendolo in multipatch, sia utilizzando lo strumento "Estrudi tra", ed entrambi producono alcuni multipatch chiusi e alcuni che non lo sono. Ho provato a convertire i miei punti in sfere, usando un esempio che ho trovato sul sito ESRI qui:

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

Il che ti dice di simboleggiare i punti come sfere, usando un attributo come raggio, quindi usa lo strumento "Layer 3D To Feature Class" per trasformarli in multipatch. Ciò produce anche multipatch che non sono chiusi e quindi inutili. Non ho ancora affrontato la conversione di punti in cubi 3D.

Quindi, se qualcuno conosce un modo per creare in modo affidabile multipatch chiusi da strati poligonali 2D e / o punti centrali (con attributi che descrivono le dimensioni), fammi sapere. Anche qualsiasi soluzione software alternativa sarebbe eccezionale, non sono legato all'ESRI. In effetti, dopo essersi dilungati con questo negli ultimi giorni e aver realizzato che gli strumenti di ESRI creano multipatch che non possono essere utilizzati con molti strumenti 3D Analyst, sarebbe preferibile un'alternativa.

ETA: Quello che sto cercando dopo è calcolare il volume di spazio occupato da (per esempio) cubi con un valore di attributo di X in cui si intersecano sfere con un valore di Y (ovviamente, ho un sacco di un sacco di valori di X e Y da eseguire).


Buona domanda. Le sfere non sono chiuse? Riesci a ottenere un volume dai multipatch a sfera creati con la tecnica 3D To FC?
Jakub Sisak GeoGraphics,

Posso calcolare i volumi (usando lo strumento Aggiungi informazioni Z) per i multipatch chiusi, anche se non l'ho ancora provato con le sfere. Il problema principale che sto riscontrando è che non sembra esserci un modo affidabile per creare multipatch "chiusi" o per forzare ArcGIS a chiudere quelli aperti. Il che è esasperante, perché sto usando gli strumenti ESRI per crearli in primo luogo. Penseresti che i loro stessi strumenti creerebbero funzioni che sono costruite correttamente (apparentemente, affinché una multipatch sia "chiusa", i suoi vertici devono essere creati in un certo ordine).
Dan C

credo che solo un multipatch con un volume possa essere chiuso. Ad esempio, non è possibile chiudere un multipatch poligonale, ma è necessario chiudere un multipatch poligono estruso. Il motivo per cui mi chiedevo delle sfere è perché solo i multipatch chiusi possono essere uniti / intersecati. Puoi anche ottenere volume (Aggiungi informazioni Z) da un multipatch chiuso, quindi tecnicamente parlando se riesci a ottenere un volume, questo può essere intersecato e unito a un altro multipatch chiuso.
Jakub Sisak GeoGraphics,

Bene, questo è il problema che sto riscontrando: sto estrudendo poligoni ma quando li converto in multipatch non sono tutti chiusi. E non sembra esserci un modo per chiuderli.
Dan C

Risposte:


8

Per chiudere una funzione multipatch, deve racchiudere completamente un volume. È probabile che le funzioni di multipatch create con lo strumento Interpolate multipatch in poligono (usando una superficie) non possano essere chiuse. (A meno che non si estruda tra 2 superfici TIN che dovrebbero produrre un multipatch chiuso. Personalmente, non ho avuto molto successo usando "Estrudi tra" con superfici complesse)

Ho provato a fare un esempio con le sfere e ho creato 2 classi di funzioni multipatch che si intersecano. Le sfere sono chiuse. Sono stato anche in grado di calcolare il volume delle sfere. L'intersezione è riuscita senza errori e ha prodotto i risultati previsti. (Vedi le schermate seguenti) Ho quindi creato alcuni poligoni circolari, li ho estrusi e li ho convertiti in funzioni multipatch. Anche l'intersezione è riuscita senza errori.

Sospetto che i tuoi multipatch poligonali non racchiudano completamente un volume. Esattamente come sono stati creati? Potete fornire alcune schermate? (Potrebbe essere necessario creare funzionalità di oggetti solidi 3D più complessi in un software di disegno 3D di terze parti poiché ArcGIS è molto limitato in quest'area. Potresti provare a modificare il multipatch in SketchUp tramite Collada e quindi a sostituire il modello al termine della modifica ) ArcScene 3D Editor -> Sostituisci con modello (questo dovrebbe essere possibile secondo la documentazione ma non ho provato.)

  1. Due funzioni multipatch. (Sfere create usando una tecnica simile a quella che hai descritto) inserisci qui la descrizione dell'immagine

  2. Intersezione risultante di quanto sopra (le funzioni sono chiuse - anche il volume calcolato): inserisci qui la descrizione dell'immagine inserisci qui la descrizione dell'immagine

  3. Come sopra ma usando le funzioni multipatch create dall'estrusione di poligoni: inserisci qui la descrizione dell'immagine

  4. Intersezione risultante (poligoni estrusi convertiti in funzioni multipatch): le funzioni inserisci qui la descrizione dell'immagine "poligono" sono chiuse


Grazie! Penso di averlo ora funzionante con sfere e strati poligonali estrusi come input multipatch. Tuttavia, avendo completato un 3D Intersect proprio ora, sembra che il livello multipatch risultante non mantenga i campi e gli attributi dei dati associati alle funzionalità di input, come fa un normale Intersect. Ho solo i campi ObjectID e Shape. È normale? Questo sarà un problema. Riceverò un altro commento insieme ai dettagli sugli errori che stavo facendo (principalmente che i poligoni estrusi che non venivano chiusi durante la conversione in multipatch avevano sezioni sovrapposte).
Dan C

Intersect 3D (Analista 3D): tutti gli attributi delle funzioni di input andranno persi. Union 3D (analista 3D): la classe di caratteristiche di output non avrà alcun attributo sulla classe di caratteristiche di input. È possibile creare una tabella opzionale registrando quali funzioni sono state unite per creare una nuova funzionalità. Questi nuovi concetti in 3D Analyst sono stati introdotti solo nella versione 9. Nella versione precedente non era nemmeno possibile calcolare il volume multipatch. A meno che ESRI non metta molta energia nel migliorare la modellazione 3D, sarà sempre l'anello debole.
Jakub Sisak GeoGraphics,

0

OK, ecco i due problemi che stavo riscontrando nella conversione di poligoni estrusi in multipatch:

  1. I tuoi poligoni devono trovarsi in un sistema di coordinate proiettato. Pensavo che tutti i miei fossero, ma da qualche parte lungo la strada mi mancava un passo e stavo cercando di convertire i poligoni in lat / long WGS84. Proiettarlo su UTM ha risolto quel problema e mi ha permesso di andare avanti, quando ho scoperto il n. 2:

  2. I tuoi poligoni devono racchiudere completamente uno spazio come dice Jakub, ma inoltre, a quanto pare, devono racchiudere solo uno spazio. Ho avuto alcuni "ciondoli" sui miei poligoni in cui si intersecano:

così quando li ho estrusi una caratteristica aveva due volumi chiusi separati. Che non è riuscito a convertire in un multipatch chiuso. Tagliare il poligono nel punto in cui si sovrappone (dove punta la freccia) ed eliminare la parte a sinistra. Probabilmente avrebbe funzionato se avessi tenuto entrambe le parti come funzioni separate e le avessi estruse separatamente, ma la parte a sinistra è stata un errore nel mio caso.

Una volta fatte queste cose, sono stato in grado di prendere un poligono con un valore di altezza, estruderlo usando la sua altezza in ArcScene e quindi usare lo strumento Livello 3D in Feature Feature per convertirlo in multipatch e sono tutti chiusi.


1
Un altro piccolo problema che ho riscontrato, essendo nuovo a 3D Analyst, è che quando si simbolizzano punti come sfere, c'è un simbolo "sfera" nel set di simboli ArcScene Basic, ma è quello sbagliato da usare per una sfera 3D. Quello giusto è nel set di simboli 3D di base.
Dan C,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.