Fórum Regional de Sustentabilidade

Nós da Geoadmin gostaríamos de parabenizar a organização do Fórum Regional Ambiental realizado dia 12 de Março de 2018 em Uberlândia MG, onde a SUPRAM Triângulo Mineiro pode discutir com os agentes envolvidos quais foram as principais mudanças na Deliberação Normativa Copam nº 217, de 06 de dezembro de 2017 que entrou em vigor em 06/12/2018.

“Tudo deveria se tornar o mais simples possível, mas não simplificado.” Albert Einstein

Essa frase resume bem nossas impressões ao participar do Fórum Regional de Sustentabilidade e queremos destacar dois pontos importantes:

O Primeiro relacionado à principal mudança, a desburocratização de processos, porém a responsabilidade do empreendedor e do consultor ambiental em relação aos processos ambientais ficou bem maior.

O Promotor de Justiça Dr. Carlos Valera citou a famosa frase do Tio Ben da história quadrinho Homem Aranha “com grandes poderes, vem grandes responsabilidades”, alertando empreendedores e técnicos ambientais que o processo será mais rápido, porém a responsabilidade técnica não prescreve, então havendo qualquer problema os técnicos poderão ser responsabilizados criminalmente pelos danos ao meio ambiente a qualquer tempo.

O segundo relacionado à municipalização do licenciamento ambiental (Deliberação Normativa Copam nº 213) cujo o objetivo é transferir do estado para o município a responsabilidade de licenciar empreendimentos que causem ou possam causar impacto ambiental de âmbito local, seguindo critérios estabelecidos no convênio firmado, neste sentido destacamos os seguintes aspectos:

  • Agilidade no processo de licenciamento
  • Facilidade logística para o empreendedor
  • Competência fiscalizatória
  • Competência Normativa
  • Recebimentos de taxas de licenciamento
  • Recebimento de multas ambientais
  • Compensações ambientais

Em ambos os casos tanto do lado do consultor quanto do órgão municipal é necessário fazer uma boa gestão das informações geradas.

Neste sentido o Geoadmin Projetos é uma ferramenta que pode concentrar todas as informações em uma única plataforma e auxiliar na gestão dos projetos.

O Geoadmin é um programa criado para a gestão de de empreendimentos e projetos. Trata-se de um sistema segmentado em seções tais como “Empreendedores”, “Empreendimentos”, “Projetos”, “Tarefas”, e “Documentos” que estão intimamente ligadas para garantir que o usuário tenha controle efetivo sobre às ações pertinentes aos projetos cadastradas de forma rápida e precisa.

As informações geradas pelo órgão ambiental, empreendedores e consultores ambientais em seus projetos e pesquisas são um patrimônio valioso do ponto de vista estratégico, pois todo seu legado esta associada a esse patrimônio.

O acesso e a gestão de forma integrada será um diferencial competitivo nas decisões do órgão ambiental e consultores ambientais, além de poupar recursos que poderão ser investidos em outras áreas.

Acesse o Site do Geoadmin pra maiores informações.

Django Topology

Olá pessoal!

Aqui na SIGMA sempre estamos desenvolvendo ferramentas úteis para nós e que talvez também sejam úteis para outras pessoas.

Nossa ideia principal, é contribuir um pouco com esse enorme ecossistema Python/Django existente. Como já disseram, estamos sobre os ombros de gigantes.

Bem, desenvolvemos o Django Topology com o objetivo de simplificar a validação de dados geométricos/geográficos que encontramos em nosso dia a dia.

É muito comum, por exemplo, ter de validar a entrada de um polígono e precisamos garantir que ele esteja dentro de outro polígono. Ou garantir que este polígono específico não esteja sobrepondo outro polígono de uma mesma classe.

Para isso desenvolvemos o Django Topology. Através dele você consegue configurar suas validações dentro do banco de dados e executá-las de forma simples.

O fluxo é simples e o pacote já conta com três validações:

  • must be contained – garante que o modelo A deve estar contido no modelo B;
  • must not overlap – garante que o modelo A não pode sobrepor nenhum outro registro em A;
  • must not overlap with – garante que o modelo A não pode sobrepor o modelo B;

O pacote é facilmente extensível e você desenvolver suas próprias validações topológicas.

Um exemplo simples:

        rule = Rule(
            name='regra de validação 1',
            description='A deve estar contido em B',
            message='deve estar contido',
            method='topology.rules.must_be_contained'
        )
        rule.save()
        topology_rule = TopologyRule(
            content_type_a=ContentType.objects.get(app_label='seuapp', model='item'),
            content_type_b=ContentType.objects.get(app_label='seuapp', model='container'),
            geom_field_b='geom',
            rule=rule
        )
        topology_rule.save()

Até aqui, definimos nossa regra topológica, de que A (qualquer instância do modelo Item) deve estar contida em B (Container).

Veja como realizar a validação:

        item_a = Item(geom=unit_polygon(Point(x=0.0, y=0.0, srid=4326)))
        item_a.save()
        container = Container(geom=unit_polygon(Point(x=0.0, y=0.0, srid=4326), size=3))
        container.save()

        errors = topology_rule.validate(item_a)
        len(errors)
>>> 3

No exemplo acima, calculamos os erros diretamente pela regra topológica (TopologyRule) e não foi encontrado nenhum erro.

Os erros gerados pelo TopologyRule não são persistidos no banco de dados, ficando a cargo do desenvolvedor a determinar o melhor momento para tal. As vezes nem será necessário, como por exemplo, em uma validação de formulário Django.

Também desenvolvemos um análogo ao TopologyChecker do QGIS e ele tem o mesmo nome. Sua função é executar todas as validações associadas a um determinado modelo, de uma vez, e persisti-las (ou não).

Veja como usá-lo:

        # definindo as regras
        rule1 = Rule(
            name='A não deve sobrepor A',
            description='A não deve sobrepor A',
            message='sobrepõe',
            method='topology.rules.must_not_overlap'
        )
        rule1.save()
        rule2 = Rule(
            name='A não deve sobrepor B',
            description='A não deve sobrepor B',
            message='sobrepõe',
            method='topology.rules.must_not_overlap_with'
        )
        rule2.save()
        topology_rule1 = TopologyRule(
            content_type_a=ContentType.objects.get(app_label='seuapp', model='item'),
            rule=rule1
        )
        topology_rule1.save()
        topology_rule2 = TopologyRule(
            content_type_a=ContentType.objects.get(app_label='seuapp', model='item'),
            content_type_b=ContentType.objects.get(app_label='seuapp', model='container'),
            geom_field_b='geom',
            rule=rule2
        )
        topology_rule2.save()

        item1 = Item(geom=unit_polygon(Point(x=0.0, y=0.0, srid=4326)))
        item1.save()
        item2 = Item(geom=unit_polygon(Point(x=0.0, y=0.0, srid=4326)))
        item2.save()
        container = Container(geom=unit_polygon(Point(x=0.0, y=0.0, srid=4326), size=2))
        container.save()

        # até aqui, criamos nossas regras e os registros de item e container

        topo_checker = TopologyChecker()

        errors = topo_checker.validate_all(Item)

O TopologyChecker retorna um dicionário, usando como chave o nome da validação executada e uma lista associada, com N erros detectados. No caso acima, o topologychecker encontrou 4 erros:

  • item 1 sobrepõe item 2;
  • item 2 sobrepõe item 1;
  • item 1 sobrepõe Container 1;
  • item 2 sobrepõe COntainer 1;

Estamos usando o Django Topology em produção no Geoadmin um produto que trabalha intensivamente com dados geográficos.

Você pode extender o mesmo com suas próprias validações. Basta criar um método com a seguinte assinatura:

def minha_validacao(rule, feature, **kwargs):
    # sua validacao aqui
    # deve retornar uma lista de TopologyError (sem salvar no banco)
    if feature.geom.intersects(outra_geometria):
        return [TopologyError()]

    return []

Com este método pronto, você só precisa criar uma Rule, apontando o atributo method para o caminmho qualificado da sua função:

rule = Rule(
    name='name'
    method='foo.bar.minha_validacao
)

Quer ajudar? Estamos aí, confere o repositório e bora lá.

SIG – Brasil – Como a implantação da INDE poderá auxiliar no seu dia-a-dia trabalhando com produção cartográfica?

O avanço da tecnologia da informação nos últimos 20 anos proporcionou grande impacto na vida dos profissionais na área da cartografia. A cartografia digital, com a evolução dos softwares e equipamentos de coleta de dados transformaram todo processo de produção cartográfica, tornando-o mais rápido e eficiente.
Com tanta facilidade e acesso a estas novas tecnologias, os produtos gerados nas diversas esferas e pelos diversos profissionais constituem uma enorme fonte de informação. Mas, mesmo com tanta informação gerada, não conseguimos encontrar com facilidade aquele base cartográfica específica de hidrografia ou sistema de transportes. E quando encontramos, muitos arquivos estão sem informações essenciais (fonte do levantamento, método utilizado, etc…) e outros apresentam tabela de atributo sem nenhuma informação correta ou estruturada. Para normalizar e organizar esta situação, a implantação da INDE (Infraestrutura Nacional de Dados Espaciais) torna-se essencial para melhor gestão das informações geográficas existentes no Brasil.
######O que é a INDE?
A INDE é o “conjunto integrado de tecnologias; políticas; mecanismos e procedimentos de coordenação e monitoramento; padrões e acordos, necessário para facilitar e ordenar a geração, o armazenamento, o acesso, o compartilhamento, a disseminação e o uso dos dados geoespaciais de origem federal, estadual, distrital e municipal.” Tem como principais objetivos:

  1. promover o adequado ordenamento na geração, armazenamento, acesso, compartilhamento, disseminação e uso dos dados geoespaciais;
  2. promover a utilização, na produção dos dados geoespaciais pelos órgãos públicos das esferas federal, estadual, distrital e municipal, dos padrões e normas homologados pela Comissão Nacional de Cartografia – CONCAR; e
  3. evitar a duplicidade de ações e o desperdício de recursos na obtenção de dados geoespaciais, por meio da divulgação da documentação (metadados) dos dados disponíveis nas entidades e nos órgãos públicos das esferas federal, estadual, distrital e municipal.

Um desafio grande da INDE está na utilização dos padrões e normas homologados pelo CONCAR nos órgãos públicos, principalmente naqueles onde não há setores ou profissionais capacitados para gestão de dados geográficos. Atualmente, o Exército Brasileiro, a partir da DSG (Diretoria de Serviço Geográfico) tem o encargo de elaborar Normas Técnicas para o Sistema Cartográfico Nacional no que concerne às séries de cartas gerais das escalas de 1:250.000 e maiores (Decreto-Lei 243, de 28/02/1967, Art. 15, §1º, item 2.). As normas elaboradas estão disponibilizadas no portal do portal do exército (http://www.geoportal.eb.mil.br/index.php/inde2), caso você ainda não conheça segue descrição:

ET-EDGV – Especificação Técnica para Estruturação de Dados Geoespaciais Vetoriais (define um modelo conceitual);

ET-ADGV – Especificação Técnica para a Aquisição de Dados Geoespaciais Vetoriais (define regras de aquisição da geometria dos dados);

ET-PCDG – Especificação Técnica de Produtos de Conjuntos de Dados Geoespaciais (define os padrões dos produtos vetoriais e matriciais);

ET-RDG – Especificação para a Representação de Dados Geoespaciais (garante a consistência na representação das classes de objetos);

ET-CQDG – Especificação Técnica para o Controle de Qualidade dos Produtos de Conjuntos de Dados Geoespaciais (define os procedimentos para o controle de qualidade dos produtos);`

Caso você utilize QGIS na produção de dados cartográficos, instale o plugin DSG Tools para utilizar funcionalidades de banco de dados (criar base dados no modelo da INDE) e camadas wms, com imagens de satélite rapideye e landsat e camadas de cartas topográficas, tudo disponibilizado pelo exército.
dsgtools

Na próxima postagem iremos demonstrar como produzir dados vetoriais a partir do modelo da EDGV, utilizando um banco de dados spatialite criado pelo DSG Tools.

Maiores informações sobre assunto você econtra aqui:

http://www.inde.gov.br/
http://www.geoportal.eb.mil.br/index.php/inde2