Esclarecimento da opção "25D" em ogr2ogr

11

[EDIT: Na minha postagem original, eu recebi um erro baseado em um erro de digitação, então recusei essa parte da pergunta, mas deixei as que ainda se aplicam.]

Nos documentos do ogr2ogr , diz:

-nlt type:
Define the geometry type for the created layer. One of NONE, GEOMETRY, POINT, LINESTRING, POLYGON, GEOMETRYCOLLECTION, MULTIPOINT, MULTIPOLYGON or MULTILINESTRING. Add "25D" to the name to get 2.5D versions.

Esta parte: se Add "25D" to the name to get 2.5D versionsaplica tanto ao carregamento de coisas no postgres quanto à exportação de dados do postgres para arquivos .shp?

Além disso, suponho que 25D signifique que um pode ter um valor az que corresponde a cada par de coordenadas xy (como é o caso dos tipos de arquivos de forma PolygonZ), mas essas coordenadas podem não se sobrepor. Isso está correto? Qual é a distinção pretendida neste caso entre 2.5D e 3D?

obrigado

BenjaminGolder
fonte
Para responder à primeira pergunta: não é necessário usar o -nlt com 25D para saída para shapefiles. Parece que se eu carregar shapefiles no Postgres usando a opção -nlt MULTIPOLYGON25D e depois exportar os recursos resultantes como shapefiles sem a opção -nlt, as coordenadas de cada forma manterão seus valores z individuais.
BenjaminGolder

Respostas:

11

O termo 2.5D é usado em vez de 3D porque, embora você tenha valores Z, eles não são levados em consideração ao executar qualquer uma das operações espaciais. Interseções, buffers, qualquer um dos predicados espaciais (dentro, sobreposições, etc.) operam ignorando o valor Z.

Ragi Yaser Burhum
fonte
4

Não para discordar ou contradizer, mas para adicionar à resposta de Ragi:

A distinção entre 2D, 2.5D e 3D

Geralmente, um GIS contém (pelo menos) recursos 2D em mapas 2D. Ou seja, os recursos estão localizados geograficamente em duas dimensões geográficas principais: X e Y. Dependendo do contexto, os chamamos de norte e leste ou latitudes e longitudes. Os recursos são representados por pontos, linhas e polígonos, cujos elementos são pares de dados XY.

Para ser mais útil, um GIS manterá superfícies geográficas ou até recursos localizados nessas superfícies. O caso óbvio é a superfície da Terra, mas poderia ser "superfícies" mais abstratas, como a densidade populacional local ou os dias anuais locais de sol. Existem as duas dimensões geográficas primárias, X e Y, e uma terceira dimensão, Z. Esses recursos são novamente representados por pontos, linhas e polígonos, mas cujos elementos agora são trigêmeos XYZ. Então é 3D? Sim e não. Uma característica distintiva de uma superfície geográfica é que, embora possa existir em qualquer lugar no espaço 2D XY, ele possui apenas um único valor Z em qualquer local 2D .

Ainda mais útil é um sistema que contém volumes geográficos . Esses são recursos 3D "verdadeiros" existentes em espaços 3D e podem ser colocados por superfícies de todos os lados. Pense em modelos geológicos, oceanográficos ou meteorológicos sofisticados. Ou edifícios de vários andares ou modelos complexos de plantas industriais. Eles são representados por pontos, linhas, polígonos (como acima) e poliedros . E, como acima, os elementos ainda são trigêmeos XYZ. No entanto, uma característica distintiva de um volume geográfico é que ele pode existir em qualquer lugar no espaço 3D XYZ. E num dado local 2D pode haver vários valores Z .

Então, o que chamar de tipo de dados do meio, se for mais do que 2D, mas menos do que o verdadeiro 3D?

Martin F
fonte
1
obrigado por reservar um tempo para adicionar a isso. Eu acho que isso deixa alguns aspectos mais confusos. Por exemplo, parece haver uma fusão entre o uso de valores z para indicar relações espaciais tridimensionais e o uso de valores z para conter outros valores de parâmetros. As superfícies geográficas não são mais ou menos características 3D "verdadeiras" que os volumes geográficos. Além disso, essa distinção entre superfícies e volumes não corresponde à significância de 2.5D no GDAL.
BenjaminGolder
Parece que você está discordando ou não entende o que eu disse? Não sei o que você quer dizer com "valores Z para indicar relações espaciais em 3D ". Depois de reler as duas últimas frases, vejo que preciso modificar ou adicionar minha resposta até agora ...
Martin F
Desculpe por não ser claro. Por "relações espaciais", eu quis dizer "valores de elevação". Seus exemplos de superfícies usam valores-z para armazenar parâmetros (densidade populacional, luz do sol), enquanto seus exemplos de volumes usam valores-z para armazenar elevações. Mas superfícies podem armazenar elevações como valores z e volumes podem armazenar parâmetros como valores z (intervalos de tempo, por exemplo).
BenjaminGolder
Sim. Provavelmente melhor se eu remover qualquer menção de superfícies sem elevação.
Martin F