Como obter um shapefile do oceano a partir de um shapefile de área terrestre muito detalhado?


10

Estou procurando uma possibilidade de "inverter" um shapefile. O que eu quero fazer é converter um shapefile com os continentes e ilhas em um shapefile com polígonos de água. O arquivo shapefile do oceano existente na Terra Natural é muito impreciso.

Como colaborador ativo do OSM, pensei que usar os shapefiles existentes do OSM seria bom para mim. Estes são muito mais precisos, mas muito problemáticos, do ponto de vista de GIS. No entanto, o mapserver pode lidar com isso, então eu pensei que eles deveriam estar bem. Esses shapefiles, alguns deles você pode encontrar aqui http://metro.teczno.com/#coastline são muito grandes.

Eu criei um shapefile com um polígono com limites mundiais (-180 a 180, -90 a 90). Depois, tentei recortar as áreas do meu mundo que limitam o shapefile onde as áreas de terra estão no outro shapefile. Eu tentei com QGIS, ferramentas vetoriais -> função de diferença. Após 12 horas com 100% de uso da CPU, parei. Sempre exibia um progresso de 100%. RAM não era um problema.

Estou procurando outra possibilidade de recortar as áreas de terra de um "polígono mundial", de preferência da linha de comando do Linux.


2
No ArcGIS, a operação que você está descrevendo é conhecida como Apagar. Parece que você está procurando uma solução de código aberto, então talvez a pesquisa nesse termo apareça. MapWindow parece que tem uma ferramenta Erase mas a discussão aqui sugere que também podem ter limitações: mapwindow.org/phorum/read.php?4,20317
PolyGeo

2
Você deseja dividir seu "shapefile" do polígono com limites mundiais (-180 a 180, -90 a 90) "em pedaços menores. Então você pode cortar as áreas. Você está enfrentando dois problemas prováveis, um deles é o processamento de dados no hemisfério norte e no hemisfério sul ao mesmo tempo. Dois, possíveis problemas com os limites de -180/180. Tente dividir os limites do seu mundo em quatro pedaços menores, como: superior esquerdo, superior direito, inferior esquerdo, inferior direito, do mundo.
Michael Markieta

Suponho que, quando você criou o polígono do mundo, o projetou no mesmo sistema que os dados da terra?
DJQ

Respostas:


6

Rasters para o resgate! Você pode fazer essa operação convertendo seu shapefile em um raster, executando a operação 'invert' e convertendo-o novamente em vetor

  • Rasterizar -> Converter -> Rasterizar. Raster de camada de saída1
  • Calculadora de campo aberto, insira a expressão raster1 @ 1 = 0
  • Raster -> Converter -> Poligonizar, camada de saída ocean_polygons
  • Abra a tabela de atributos, pesquise DN = 0, alterne a edição, exclua os recursos selecionados e salve. O que restará serão polígonos para as áreas oceânicas.

insira a descrição da imagem aqui


1

SAGA GIS (e muitos outros provavelmente também) possui um comando chamado "interseção de polígonos". Crie um polígono contendo o mundo inteiro e subtraia seus polígonos terrestres. Então, o método 2 ou 3 nessa biblioteca.

Usage: saga_cmd libshapes_polygons "Polygon Intersection" -SHAPES_A <str> [-FIELD_A <str>] -SHAPES_B <str> [-FIELD_B <str>] -SHAPES_AB <str> [-METHOD <str>] [-SPLITPARTS]
  -SHAPES_A:<str>   Layer A
    Shapes (input)
  -FIELD_A:<str>    Attribute A
    Table field
  -SHAPES_B:<str>   Layer B
    Shapes (input)
  -FIELD_B:<str>    Attribute B
    Table field
  -SHAPES_AB:<str>  Intersection
    Shapes (output)
  -METHOD:<str>     Method
    Choice
    Available Choices:
    [0] Complete Intersection
    [1] Intersection
    [2] Difference (A - B)
    [3] Difference (B - A)
  -SPLITPARTS       Split Parts
    Boolean

0

Uma varredura pode ter muitos dados se você precisar de detalhes nas linhas costeiras. O mesmo princípio sugerido pelos pensamentos espaciais, mas usando um Delaunay TIN, pode ser uma opção?



0

Não tive muito sucesso com a inversão de arquivos de forma de terra do OSM devido à sua complexidade, no entanto, é possível gerar arquivos de forma de terra e oceano a partir dos dados brutos do OSM. http://openstreetmapdata.com/data oferece downloads de ambos os quais considero extremamente úteis.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.