[general]
name=OrIFSC
qgisMinimumVersion=3.16
qgisMaximumVersion=4.99
description=Generate cartographic base maps for the sport of orienteering
description[pt]=Gerador de bases cartográficas para mapas de orientação esportiva
version=0.1.9
author= arthur berbert
email=arthur@berbert.eng.br
about=OrIFSC automates the production of cartographic base maps for the sport of orienteering. It is a partnership between IFSC (Instituto Federal de Santa Catarina), the Santa Catarina Orienteering Federation (FCO) and the Florianópolis Orienteering Club (FLORA). The plugin loads a georeferenced satellite image, generates smoothed contour lines from free elevation data (Copernicus 30 m DEM) and exports a ready-to-open project for OCAD and OpenOrienteering Mapper, already set up with georeferencing, magnetic declination, the satellite backdrop and the contour lines as map objects.
about[pt]=Plugin para geração automatizada de bases cartográficas para mapas de orientação esportiva, em parceria entre o IFSC, a Federação Catarinense de Orientação e o Clube de Orientação de Florianópolis. Carrega imagem georreferenciada de satélite, gera curvas de nível suavizadas (MDT Copernicus 30 m) e exporta um projeto pronto para abrir no OCAD e no OpenOrienteering Mapper, já com georreferência, declinação magnética, o satélite como fundo e as curvas como objetos.
tracker=https://github.com/arthurberbert-ifsc/orifsc/issues
repository=https://github.com/arthurberbert-ifsc/orifsc
hasProcessingProvider=yes
tags=orienteering,orientacao,mapa,contour,curvas de nivel,orientismo,ocad
homepage=https://github.com/arthurberbert-ifsc/orifsc
category=Vector
icon=icons/icon.svg
experimental=False
deprecated=False
changelog=
    0.1.9
    - Qualidade/segurança (revisão automática do repositório QGIS): auditado o uso de urlopen (apenas http/https são aceitos, marcado como seguro); removido o campo obsoleto supportsQt6 do metadata; removidos imports e uma variável sem uso; permissões dos arquivos do pacote normalizadas. Sem mudança de funcionalidade.
    0.1.8
    - Assistente: o menu indica o progresso do fluxo (✓ etapa concluída, ▶ próxima sugerida) sem travar nada; avisos amigáveis quando falta um pré-requisito; o diálogo de exportação já vem pré-preenchido (folha, curvas e pasta de saída) e mostra a escala do projeto.
    - Curvas de nível: geração mais robusta — a suavização passou a usar um algoritmo próprio (Chaikin) que não depende de algoritmos do QGIS que podiam travar/fechar o programa; saída como camada limpa "Curvas de Nível"; recorte por folha/limite aplicado de forma controlada.
    - Satélite de fundo: download paralelo confiável (não trava nem prende o QGIS ao fechar), sempre no melhor zoom, com progresso visível (contador de tiles e porcentagem da reprojeção), cancelável e com re-tentativas para a imagem sair completa.
    - Exportação OCAD 10 / OpenOrienteering Mapper: projeto pronto com georreferência (UTM + escala + grade), declinação magnética (WMM/NOAA) com grivação correta, satélite como mapa de fundo e curvas como objetos de linha.
    - Importar KML/GPX e camadas de base (Satélite Google, OpenStreetMap, WMS/WMTS, SIG@SC).
    - Compatível com QGIS 3.16+ e QGIS 4 (Qt5/Qt6).
    0.1.7.3
    - Qualidade: código de reload de módulos movido para trás de variável de ambiente ORIFSC_DEV — não roda mais em produção, evitando comportamento imprevisível com referências a classes recarregadas.
    - Qualidade: função _ocultar_da_toolbox centralizada em algorithms/utils.py, eliminando duplicação entre gerar_curvas.py e exportar_ocad.py.
    - Correção: cache de tiles Copernicus agora valida o tamanho mínimo do arquivo (1 KB); arquivos corrompidos ou incompletos de downloads anteriores são detectados e re-baixados automaticamente.
    - Correção: validação de intervalo das coordenadas no diálogo "Definir Local" — latitude fora de [-90, 90] ou longitude fora de [-180, 180] exibe mensagem clara em vez de gerar um CRS inválido silenciosamente.
    0.1.7
    - Correção: o satélite exportado não é mais carregado automaticamente no QGIS (evita o QGIS travar/ficar preso na memória ao fechar com imagens grandes); o .tif fica salvo na pasta de saída para abrir manualmente e é usado pelo OCAD. Os datasets GDAL da geração são fechados explicitamente (sem handle preso no arquivo).
    - Correção: download das tiles do satélite passa a ser assíncrono numa thread só (via QgsNetworkAccessManager), em vez de um pool de threads. As threads do pool criavam gerenciadores de rede do QGIS que ficavam órfãos e travavam o QGIS ao fechar. O GeoTIFF do satélite segue em LZW (necessário: sem compressão o arquivo passa de ~290 MB e o OCAD 10 falha ao ler).
    - Correção: o GeoTIFF do satélite voltou a sair com 3 bandas RGB (sem canal alpha). O alpha gerava um TIFF de 4 bandas que o OCAD lia como falsa-cor/infravermelho (OCAD 2020) ou nem abria (OCAD 10); os cantos vazios da rotação agora ficam brancos.
    - Exportação OCAD: o .ocd passa a ser gravado no formato OCD v10 (antes v9), abrindo direto no OCAD 10+ sem o pedido de conversão. A pasta de saída agora é obrigatória e não pode ser um diretório temporário (o satélite .tif precisa ficar junto dos projetos).
    - Exportação: novo seletor "Formato(s) a gerar" (OCAD .ocd / OpenOrienteering Mapper .omap / ambos), com "OCAD (.ocd)" como padrão — antes os dois arquivos eram sempre gerados. O campo de declinação manual agora deixa claro que só é usado se o automático estiver desmarcado ou falhar.
    - Compatibilidade com QGIS 4 (Qt6/PyQt6): enums de classes Qt agora usam a forma escopada (QImage.Format.Format_RGB888, Qt.PenStyle.DashLine, Qt.BrushStyle.NoBrush, QDialogButtonBox.StandardButton.*, QXmlStreamReader.TokenType.*) e os diálogos usam exec() em vez de exec_(). As mudanças continuam funcionando no QGIS 3.16+ (PyQt5). metadata: supportsQt6=True e qgisMaximumVersion=4.99.
    0.1.6.2
    - Correção: o GeoTIFF do satélite agora é gerado em formato compatível com o OCAD 10 (stripped + LZW, sem tiles nem DEFLATE/JPEG). Antes o OCAD 10 recusava o arquivo com "contains tiles" / "tipo de compressão não suportada".
    - Renomeia saídas e id do provider de "oriifsc" (grafia errada) para "orifsc": agora gera projeto_orifsc.ocd/.omap e satelite_orifsc.tif; algoritmos passam a ser orifsc:exportar_ocad e orifsc:gerar_curvas_nivel.
