Onde posso encontrar as coordenadas necessárias para desenhar os EUA na projeção Mercator?

StackOverflow https://stackoverflow.com/questions/2298769

Pergunta

Então, estou escrevendo uma biblioteca JavaScript que leva as coordenadas x, y e as usa para desenhar um mapa dos EUA. Para fazer isso, preciso encontrar os dados de coordenadas necessários para desenhar cada estado. Este mapa na Wikipedia é um ótimo exemplo do que eu preciso, porque o arquivo SVG contém as formas que compõem cada estado bem rotulado: http://upload.wikimedia.org/wikipedia/commons/3/32/blank_us_map.svg

Eu também tenho um conjunto de sites que preciso colocar neste mapa. Como conheço a latitude e a longitude de cada site, posso usá -lo para desenhar cada site em seu local apropriado no mapa. Infelizmente, para que isso funcione, meu mapa precisa usar a projeção do Mercator, para que possa haver um mapeamento fácil de Lat, Let to X, Y Pixel Coordenadas.

O mapa da Wikipedia que mencionei acima usa alguma outra projeção, por isso não posso usá -lo para esse fim. Alguém sabe onde posso encontrar esse tipo de dados do mapa na projeção do Mercator? Qualquer formato de dados é bom, desde que eu possa obter programaticamente as coordenadas que são usadas para desenhar cada estado e identificar quais formas compreendem cada estado.

Foi útil?

Solução

Kevin McCurley criou alguns mapas dos Estados Unidos, incluindo um mapa de Todos os 50 estados, na projeção Mercator. Se você observar a fonte desse link final, ele consiste em pares (latitude, longitude) para os contornos dos estados, que são então transformados em pares (x, y) para exibição no formato SVG. Seu uso permitido é

Sinta -se à vontade para usar esses arquivos em sua própria diversão, mas eu gostaria de receber crédito por tê -los criado. Apreciar...

Não sei se isso é bom o suficiente para você.

Outras dicas

Esta é uma pergunta GIS e não seria resolvida facilmente, a menos que você esteja usando as ferramentas adequadas.

  • Usar Qgis Para abrir o Dados de shapfile dos EUA

    EDITAR No caso dos Shapefiles a que vinculei não exatamente os que você procurava, o Google para "Shapefiles dos EUA". Shapefiles são na verdade um grupo de geoespaciais (e não apenas um arquivo).

  • Reprodunciar sua camada para a projeção especificada

    EDITAR Isso pode ser um aborrecimento, mas, para o caso, não é o OGR (veja abaixo) pode reproduzir. EPSG é obtido de Referência espacial

  • Usar OGR2OGR (folha de dicas) ou o plug -in conversor para converter seus dados em KML. Isso produzirá seus dados em um formato legível por Terra/Terra/Humano que terá as coordenadas nelas

Editar 2O que você está usando para exibir os mapas online? você considerou OpenLayers ou API do Google Maps ou MapServer

Editar 3Eu testei meu método em alguns dados que tenho e funciona, aqui está uma saída de amostra para um polígono usando camada "Estado e equivalente (atual)":

<Placemark>
      <name>American Samoa</name>
      <styleUrl>#PolyStyle00</styleUrl>
      <Snippet></Snippet>
      <MultiGeometry>
        <Polygon>
          <tessellate>1</tessellate>
          <extrude>0</extrude>
          <altitudeMode>clampToGround</altitudeMode>
          <outerBoundaryIs><LinearRing><coordinates> -0.001536,-0.000099,0.000000 -0.001536,-0.000099,0.000000 -0.001536,-0.000100,0.000000 -0.001536,-0.000100,0.000000 -0.001536,-0.000100,0.000000 -0.001536,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000100,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001537,-0.000099,0.000000 -0.001536,-0.000099,0.000000 -0.001536,-0.000099,0.000000 -0.001536,-0.000099,0.000000 -0.001536,-0.000099,0.000000 -0.001536,-0.000099,0.000000 -0.001536,-0.000099,0.000000 -0.001536,-0.000099,0.000000 -0.001536,-0.000099,0.000000</coordinates>
            </LinearRing>
          </outerBoundaryIs>
        </Polygon>

Um novo mapa do zero

É fácil criar um mapa a partir do grátis Shapefile qual é fornecido em alta resolução pelo USGS. Na verdade, um cara já criou um shapefile-> script de tradução SVG Isso faz exatamente isso para você, mas observe que O projeto foi transferido para o Github.

Infelizmente o shapfile está no Projeção NAD83 Portanto, ele precisa ser reprojetado para o Mercator antes de executar o script. Novamente, este é um problema já resolvido e uma coisa muito comum a fazer em GIS's e só precisa ser feito uma vez. Para isso, vou sugerir MapWindow Porque é trivial fazer nisso.

Para reproduzir os shapefiles para o Mercator, você precisa baixar e instalar MapWindow. Quando você executa o programa, você pode ver um Plug-ins menu na janela principal e você precisará ativar o Ferramentas GIS plugar. Em seguida, você clica no símbolo verde "Plus" para adicionar o ShapFile ao MapWindow e ele deve renderizar os EUA na tela.

Quando você importou o ShapeFile para o MapWindow, você vai reproduzir. Para fazer isso, você clica no Ferramentas GIS -> Vetor -> Reprodupe um shapfile e deve abrir uma caixa de diálogo.

A primeira caixa de diálogo que você vê pergunta sobre qual projeção você deseja:

  • Categoria: Sistemas de coordenadas projetadas
  • Grupo: Mundo
  • Nome: Mercator (mundo)

O segundo pode não aparecer, mas se isso acontecer, está perguntando sobre a projeção atual:

  • Categoria: Sistemas de coordenadas geográficas
  • Grupo: América do Norte
  • Nome: Datum norte -americano 1983

Este processo deve criar um novo shapefile chamado STATESP020_REPROJEDO ou algo assim.

Você agora precisa Traduzir o shpaefil para SVG usando o script acima. Não vou me preocupar em escrever instruções sobre isso porque não tentei antes, mas tenho certeza que você pode descobrir!

Aqui: http://www.nws.noaa.gov/geodata/catalog/national/html/us_state.htm
você pode baixar um shp arquivo com os dados. o shape O formato inclui a dbf com alguns atributos, incluindo coordenadas para cada estado.

Além disso, você pode usar shp2text Para extrair todas as informações.

Editar:Dados no mapa estão em Datum norte -americano de 1983, mas você pode usar o Planilha e fórmulas aqui para converter para Mercator (UTM).

Você já olhou para os produtos NIMA? http://egsc.usgs.gov/nimamaps/ e https://www1.nga.mil/productsservices/pages/default.aspx Eles têm uma variedade de mapas, formatos, etc. e todos pagos pelos contribuintes dos EUA, muito está disponível ao público. Boa primeira parada para mapas.

Eu nunca fiz o tipo de trabalho que você está perguntando, mas me parece que esses dados do Corpo de Engenheiros do Exército dos EUA serão úteis para você:

http://crunch.tec.army.mil/software/corpscon/corpscon.html

VISOKIO.com possui coleções para downloads de mapas vetoriais aqui: http://www.visokio.com/mapsA maioria deles suporta coordenadas de latitude/longitude decimais.

No entanto, parece que todos estão em um formato propetiário visível apenas com seu próprio software. Um software de teste está disponível, Tho.

hth.

editar: encontre -os ao navegar pela Wikipedia:

Aqui está uma resposta StackOverflow com o JS Math de Lat Long to Mercator

Converter lat/longs para x/y coordenadas

Faça o download de um desses shapefiles listados acima e depois use o OGR para fazer og2ogr para converter para CSV

Obtenha OGR aqui

http://www.gdal.org/ogr/index.html

Aqui está o documento para OGR

http://www.gdal.org/ogr2ogr.html

Aqui está o nome dos formatos de saída

http://www.gdal.org/ogr/ogr_formats.html

Dada a sua reputação, sei que você pode lidar com isso quando você o levar ao CSV

IndieProjector deve ser capaz de gerar os arquivos necessários. É uma ferramenta on -line gratuita que reproduz qualquer shapefile e a exporta novamente para .svg. Eles até os tiverem estados incluídos on -line, para que você não precise mexer com o Shapefile.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top