Skip to content

Releases: arrobaraujo/map_maker

v1.4.0

01 Apr 17:36

Choose a tag to compare

GTFS Map Maker v1.4.0

Esta versao entrega uma refatoracao arquitetural ampla para facilitar manutencao, testes e evolucao do projeto.

Novidades

Arquitetura modular

  • Nova camada de controllers para orquestracao de fluxo:
    • src/controllers/map_controller.py
    • src/controllers/gtfs_controller.py
  • Nova camada de services para regras de negocio:
    • src/services/layer_service.py
    • src/services/zoom_service.py
    • src/services/export_service.py
  • Nova camada de UI builder:
    • src/ui/ui_builder.py

Melhorias tecnicas

  • src/app.py simplificado e focado em coordenacao.
  • Separacao clara entre interface, orquestracao e regras de negocio.
  • Ajuste para evitar redraw desnecessario na reordenacao de camadas sem mudanca real.

Qualidade

  • Suite de testes expandida para controllers e services.
  • Cobertura de cenarios para:
    • selecao e reordenacao de camadas
    • parse/clamp de zoom
    • exportacao KML/SVG
    • carregamento GTFS assincrono

Compatibilidade

  • Mantem comportamento da interface e fluxo principal do usuario.
  • Requer Python 3.10+.

v1.3.0

01 Apr 16:53

Choose a tag to compare

GTFS Map Maker v1.3.0

Esta versao adiciona suporte a Docker com GUI no navegador, melhorias de estabilidade e documentacao em ingles.

Novidades

Docker e execucao

  • Runtime de GUI com Xvfb + x11vnc + noVNC
  • docker-compose.yml para subir com um comando
  • Interface acessivel via http://localhost:6080/vnc.html
  • Persistencia de cache em map_tiles_cache

Melhorias no app

  • Correcao de remocao de camada com estado residual
  • Limpeza de duplicacao no ajuste de zoom
  • Encerramento mais seguro com liberacao do processor

Melhorias no processamento

  • Validacao de arquivos obrigatorios no ZIP GTFS
  • Fechamento idempotente do GTFSProcessor

Documentacao e build

  • Novo CONTRIBUTING.md em ingles
  • Novo ARCHITECTURE.md em ingles
  • READMEs PT/EN com instrucoes de Docker
  • Script scripts/build_exe.ps1 para gerar o executavel

Release v1.2.0 - Melhorias no zoom e na renderização de mapas, e novos recursos

23 Mar 19:28

Choose a tag to compare

Release Notes - v1.2.0 🎯

Esta versão traz o Zoom Fracionário Estabilizado e melhorias significativas na Interface de Camadas.

O que há de novo?

🗺️ Mapa e Navegação (Foco em Precisão)

  • Zoom Granular (0.1): Agora você pode ajustar o zoom em passos de 0.1 (ex: 14.5). O mapa não "pula" mais apenas nos inteiros, permitindo o enquadramento perfeito.
  • Correção de Alinhamento: Resolvemos o problema de tiles desalinhados ou "misturados" durante o zoom fracionário. Marcadores e rotas permanecem perfeitamente posicionados.
  • Performance de Renderização: Implementamos um sistema de cache de redimensionamento de tiles. O mapa agora é muito mais fluido ao navegar e aproximar.

🍱 Gestão de Camadas (Sidebar)

  • Seleção Múltipla: Agora é possível selecionar várias camadas simultaneamente na lista lateral.
    • Ctrl + Clique: Seleciona/deseleciona camadas individuais.
    • Shift + Clique: Seleciona automaticamente todas as direções da mesma linha (ex: Ida e Volta).
  • Estilização em Lote: Altere a cor ou a espessura de todas as camadas selecionadas de uma só vez, economizando tempo no design do mapa.

🧹 Limpeza e Estabilidade

  • Console Limpo: Removemos todos os logs de diagnóstico redundantes (DEBUG LIB, DEBUG UTIL), deixando o terminal livre de poluição visual.

Release v1.1.0 - Melhorias de desempenho e novos formatos de exportação

23 Mar 17:34

Choose a tag to compare

Release Notes - v1.1.0 🚀

Esta versão foca em estilização automática, interoperabilidade e performance extrema.

O que há de novo?

🎨 Estilização e Cores

  • Cores Oficiais GTFS: O app agora lê o campo route_color do seu arquivo GTFS. Ao selecionar uma linha, ela aparece automaticamente com a cor oficial da agência.
  • Suporte a SVG (Vetorial): Novo formato de exportação! Perfeito para designers que precisam editar o mapa no Adobe Illustrator ou Inkscape sem perda de qualidade.
  • Suporte a KML: Agora você pode exportar suas rotas para o Google Earth ou outras ferramentas de GIS que utilizam o formato KML.

⚡ Performance e Estabilidade (Upgrade Massivo)

  • Carregamento Assíncrono: O processamento do GTFS agora acontece em segundo plano, mantendo a interface sempre responsiva.
  • Otimização de Memória (SQLite): Reduzimos drasticamente o uso de RAM ao armazenar as coordenadas em um banco de dados temporário ultra-rápido.
  • Lista de Rotas Virtual: Rolar e filtrar milhares de linhas agora é instantâneo, graças ao novo sistema de virtualização de interface.
  • Decimação de Coordenadas: Implementamos o algoritmo de Douglas-Peucker para simplificar rotas complexas sem perder a precisão, resultando em um mapa muito mais fluido.

Release v1.0.0 - Refatoração e Melhorias de UI

23 Mar 16:37

Choose a tag to compare

🚀 Release v1.0.0 - Refatoração e Melhorias de UI

Esta versão traz uma reestruturação completa do projeto para seguir as melhores práticas de Python, além de melhorias significativas na experiência do usuário e na qualidade das exportações.

✨ Novidades e Melhorias

🎨 Interface do Usuário (GUI)

  • Controle de Zoom Preciso: Substituímos o slider por botões de + e - e um campo de entrada de texto direto para ajustes finos.
  • Layout Otimizado: A barra lateral agora se expande corretamente para exibir nomes de linhas longos sem cortes.
  • Inicialização Inteligente: O aplicativo agora abre automaticamente em tela cheia (maximizado) de forma estável no Windows.
  • Legenda Inteligente: Melhoria na lógica de agrupamento de legendas para mapas mais limpos.

🛠️ Arquitetura e Código

  • Modularização: Código refatorado e dividido em src/app.py, src/processor.py e src/utils/renderer.py.
  • Robustez: Reintroduzido o suporte completo a trips.txt para garantir identificação precisa de todas as rotas e nomes.
  • Qualidade de Exportação: O DPI padrão foi aumentado para 300 para garantir mapas nítidos em impressões e apresentações.
  • Testes Automatizados: Adicionada suite de testes iniciais com pytest para garantir a integridade do processamento de dados.

📦 Distribuição

  • Suporte a Executável: Configuração pronta para gerar um arquivo .exe único via PyInstaller, incluindo todos os recursos visuais do CustomTkinter.

📥 Como instalar

  1. Baixe o arquivo app.exe abaixo (em Assets).
  2. Ou, para desenvolvedores:
    • pip install -r requirements.txt
    • python src/app.py

🛠️ Correções de Bugs

  • Corrigido erro de justify em botões do CustomTkinter.
  • Fixado bug onde a janela minimizava sozinha logo após abrir.
  • Resolvido problema de sobreposição de elementos na barra de ferramentas.