Existem APIs / kits de ferramentas de mapeamento de código-fonte aberto para desenhar eixos, etiquetas, gratículas etc.?


9

Tentei postar uma pergunta mais genérica na meta, mas é a minha primeira pergunta, então ainda não tinha uma reputação.

A primeira pergunta que tenho é se este é um local apropriado para fazer perguntas sobre a disponibilidade de "componentes" de software - APIs ou kits de ferramentas para mapeamento e funções geográficas / geodésicas.

Se este for o local apropriado: eu gostaria muito de encontrar uma API de mapeamento de código-fonte aberto, usando o OpenGL ou uma das APIs de gráficos QT como QPaint - algo que desenha e rotula eixos e gratículas, escalas, etc. - se tinha pontos de entrada geográfica (lat, long) tanto melhor. As subjacências do mapa seriam maravilhosas.

Não consegui encontrar nada, apesar das pesquisas repetidas, por isso escrevi bastante, usando C ++ / QT / OpenGL. Mas acho que estou gastando tanto tempo em minha infraestrutura quanto em meu aplicativo e gostaria de sair dessa situação, se possível.

Minha aplicação é tipicamente plotagem em tempo real de posições de veículos subaquáticos e dados associados.


Eu acho que este é o fórum perfeito para esse tipo de pergunta.
jswise

Respostas:


5

Parece que a API QGIS pode ser o que você está procurando. Está escrito em C ++ e Qt. Os documentos da API estão aqui: http://doc.qgis.org/ . Essa API permite carregar todos os tipos de dados geográficos para o seu mapa de plano de fundo, você pode rotular recursos etc.

Há também um guia para o desenvolvimento de seus próprios aplicativos com base na API QGIS .

Como seu caso de uso é rastreamento de veículos, você também pode estar interessado no código do QGIS GPS Tracker .


a API do QGIS parece muito boa - eu já tinha visto o QGIS antes, mas já fazia um tempo e não sabia que a API estava disponível. Não sei se ele faz tudo o que quero, mas vou ver mais adiante. Muitas das outras sugestões se referem às APIs Java e similares - a menos que tenham uma ligação C ++, elas não vão me poupar tempo.
precisa saber é o seguinte

2

Eu recomendaria o Mapnik . É uma ótima ferramenta para criar mapas e camadas de mapas. Ele tem uma ótima interface Pythonic ( tutorial ) e está sendo amplamente utilizado. Um dos usuários mais famosos é o OpenStreetMap :

O Mapnik é o software que usamos para renderizar a camada principal do Slippy Map para OSM, junto com outras camadas, como a camada "mapa de ciclo" e a camada "noname".

Um exemplo impressionante de sua galeria de fotos no flickr: texto alternativo


Mapnik parece muito bom - o que não vejo, no entanto, são eixos e gratículas. Talvez eu não conheça os termos de pesquisa corretos para encontrar essas coisas - existem muitos kits de ferramentas de mapeamento, mas muito poucos colocam escalas, eixos, tiques e outros elementos cartográficos no mapa - para o meu aplicativo, onde freqüentemente trabalho em mar aberto, estes são ajudas vitais para os usuários a entender os mapas
jhowland

1
AFAIK, a adição de eixos e escalas é feita manualmente. Veja este pequeno artigo para mais informações: britishideas.com/2009/09/22/map-scales-and-printing-with-mapnik
Adam Matan
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.