Projeções de mapa descontínuas ou interrompidas?


21

Algum dos atuais softwares GIS de código aberto suporta sistemas de projeção descontínuos? Por exemplo , sinusoidal , dymaxion , borboleta , etc? Caso contrário, existem outros comerciais acessíveis (significado acessível <$ 150)?

Upate: aparentemente, foi uma má idéia liderar com "sinusoidal", pois essa projeção também tem uma forma de ponto único, sem interrupção. Observe que a palavra-chave aqui é descontínua ou interrompida . Obrigado.

Mapa da borboleta de Cahill em 1909

Respostas:


10

É possível construir algo como a projeção sinusoidal interrompida e projeções semelhantes, fazendo várias projeções sinusoidais (normais) e cortando e colando-as juntas. Não conheço uma ferramenta que faça isso (mas não sou a pessoa certa para perguntar sobre ferramentas); portanto, no caso de você precisar recorrer a cuspir e colar ...

  • Se você observar um exemplo aleatório do sinusoidal interrompido, cada meridiano perfeitamente vertical corresponde a uma única projeção sinusoidal.

  • Para esse exemplo, você está vendo sinusoidais centrados em longitudes: -160, -100, -60, ...

  • Em seguida, corte e mude as peças para alinhar: A parte inferior esquerda é composta por longitudes -180 ..- 100 e latitudes 0 ..- 90 e projetada com uma longitude central de -160. A próxima parte são longitudes -180 ..- 40 e latitudes 0..90, projetadas com um centro de -100. E assim por diante (o exemplo que vinculei foi bastante complicado e pode haver coisas engraçadas acontecendo na Rússia; não parece uma baunilha sinusoidal lá).

Se você estiver atrás de um mapa pronto, eu o renderizaria para uma boa imagem georreferenciada de alta resolução e construiria as peças de projeção projetando-as em cada projeção sinusoidal e depois mascarando-as. (Construa as máscaras projetando quadrados sólidos que cobrem os intervalos de lat / lon de destino para cada peça.) Se você estiver trabalhando com dados brutos, eu os particionarei em partes de entrada, tomando o cuidado de dividir linhas e polígonos ao longo de qualquer "corte" arestas na projeção.

Espero que esta seja uma resposta melhor que nada. :)

Seria um projeto paralelo interessante automatizar isso em um script (por exemplo, w / gdalwarp) ...


obrigado pelo cuspe e cola, talvez eu precise cortar isso e atacá-lo aos poucos; Eu não tinha considerado essa abordagem.
mate Wilkie

Encontrei um documento sobre essa abordagem que usa o ArcInfo - postou uma nova resposta para a 'recompensa'
Mapperz

1
da leitura dos documentos, os exemplos de ArcInfo e GMT dados até agora usam esse processo de geração de peças e colagem. Em teoria, isso deve ser adaptável a qgis, grama ou qualquer outra coisa. O artigo arcinfo possui detalhes espetaculares para o processo, enquanto a GMT é favorável para reduzi-lo a 3 comandos, embora restrito a uma única variante de projeção.
mate Wilkie

Confira abaixo a minha resposta, eu fiz um programa que faz exatamente isso :)
Michał

7

Agora, enviei um programa gratuito e muito detalhado para gerar o Megamap em várias escalas Cahill-Keyes com bordas e resolução de geocélula de um grau em 1 / 1.000.000 ou em escalas menores. Ele usa o OpenOffice.org Draw 3.0 e o Perl gratuitos. http://www.genekeyes.com/MEGAMAP-BETA-1/Megamap-Beta-1.html . (Verifique o link aqui para muitos jpegs, pdfs e downloads gratuitos de até 40 MB.)

insira a descrição da imagem aqui


4

Aqui tem um programa C que pode fazer a transformação de coordenadas de (Lat, Long) para (X, Y) na projeção dymaxion. Não tenho certeza se isso atende aos seus critérios de código aberto, mas é o mais próximo que eu cheguei.

Não encontrei nada para fazer uma projeção adequada, mas encontrei esse recurso por Gene Keyes comparando as projeções borboleta de Cahill e dymaxion de Fuller, o que é muito bom. Ele tem um script perl que pode plotar coordenadas em um mapa dymaxion. A partir daí, encontrei a base para esse script: o site mencionado por RW Gray, que tem um programa em C que pode fazer a transformação de coordenadas e, por favor, veja sua nota na parte inferior da página sobre os termos de uso do código.



2

O pacote mapproj R suporta uma boa variedade de projeções, sinusoidais entre elas.

Você também pode olhar para as Projeções Myriahedral de Jack van Wijk, de acordo com seu artigo :

Todas as imagens foram produzidas com uma ferramenta integrada e desenvolvida sob encomenda para definir malhas e pesos, além de calcular e renderizar os resultados, executados no MS Windows.


Mas ela suporta a versão descontínua da projeção sinusoidal?
Underdark

1
-1 para o mapproj, que (dos documentos) suporta apenas a forma de ponto único de sinusoidal, "sinusoidal () paralelos igualmente espaçados, área igual, bonne (0)" . +1 para Myriahedral, que é definitivamente descontínuo e parece interessante. O software usado parece ser privado e não está disponível.
mate Wilkie

1
@ underdark: não ficou claro a atualização b4 de que sinusoidal deve ser descontínua, daí a minha sugestão. @ Matt: foi criado em ambiente acadêmico e acho que há uma chance de obter acesso do autor.
radek 8/09/10

bem, o título da pergunta não mudou;) nvm
underdark



2

Há muito tempo, implementei o Cahill-Keyes no D3.js, seguindo a excelente documentação / código de Gene Keyes em seu site. Você pode encontrá-lo neste bloco.

Aqui está um instantâneo:

insira a descrição da imagem aqui


1

Gene Keyes e sua parceira Mary Jo Graça publicaram recentemente a Cahill-Keyes Octant Graticule: Principles and Specifications com programas Perl e macros do OpenOffice.org 2.0 para 1 / 1.000.000 de Megamap sob um creative commons que compartilham da mesma forma nenhuma licença de trabalho comercial. Resumo "Como uma gratícula completa de um grau de um mapa-múndi de oito octantes a 1 / 1.000.000 é feita com Perl e macros em um programa gratuito de desenho vetorial do OpenOffice.org 2.0 em um netbook Asus de US $ 300. Esta é outra parte do meu rascunho notas para o mapa do mundo real de Cahill-Keyes. Ele descreve apenas a gratícula, em detalhes intrincados, tanto como arquétipos desenhados à mão quanto por computador. A introdução de dados GIS é o próximo desafio. "O gráfico da pergunta é do site de Gene. Eu não publiquei sobre a página perl & OO até agora, pois ele ainda não havia divulgado a página.

miniatura do resultado da macro do Open Office

Eu criei um repositório mercurial de código-fonte do trabalho deles em http://bitbucket.org/maphew/cahill-keyes com o objetivo, eventualmente, de lidar com a parte "entrar no GIS". Embora até o momento nada tenha sido feito - este é um canto do meu projeto de mesa, o progresso será lento. :)


1

Como mencionado anteriormente, o programa C aqui funciona bem. Também disponível, aqui em javascript para openlayers.

Usei os dois com êxito, mas obtive mais sucesso com a versão javascript no sistema de scripts do adobe illustrator. Peguei arquivos de forma e os converti em objetos javascript, carreguei-os no illustrator e, ao desenhar, corri os pontos pelo código de projeção javascript.

Eu produzi um mapa de fuso horário muito interessante com esse código.

Estou apenas começando o trabalho com o QGIS, por isso não tenho certeza se há alguma maneira de ter uma projeção programaticamente personalizada como essa, mas eu ficaria muito interessado aqui.


Olá pessoal, bem-vindo ao GIS.se :) É uma boa prática usar o título da página ou algum outro pedaço distinto de texto em vez de herevincular; facilita a busca de novos links quando a página de destino inevitavelmente sucumbe ao bitrot. (Isso também teria sido melhor colocado como um comentário à resposta "mencionada anteriormente", mas percebi que, como novo usuário, isso ainda não está aberto para você). Obrigado por contribuir. Encorajo uma pergunta e resposta sobre a Forma> Illustrator> OpenLayers fluxo de trabalho quanto parece interessante ( gis.stackexchange.com/help/self-answer )
Matt Wilkie

1

Codifiquei a projeção interrompida sinusoidal em javascript, para que ela seja executada no navegador da web. Você pode conferir aqui: http://www.winski.net/?page_id=12 . Também apoio a projeção de pétalas de margaridas do USGS.

Você só precisa escolher sua imagem de entrada, projeção interrompida sinusoidal da lista de projeções, número de gores e clicar em "projeto".

É sob BSD, então sinta-se livre para fazer o que quiser com ele :)

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.