{"id":637,"date":"2017-06-20T23:00:00","date_gmt":"2017-06-20T23:00:00","guid":{"rendered":"https:\/\/geoadmin.com.br\/?p=637"},"modified":"2021-06-09T10:24:16","modified_gmt":"2021-06-09T13:24:16","slug":"metodologia-para-cartografia-de-larga-escala","status":"publish","type":"post","link":"https:\/\/geoadmin.com.br\/?p=637","title":{"rendered":"Metodologia para cartografia de larga escala"},"content":{"rendered":"<p>Boa noite pessoal!<\/p>\n<p>Hoje vamos falar um pouco sobre a metodologia da SIGMA referente a cartografia de larga escala.<\/p>\n<p>Bem, a defini\u00e7\u00e3o de larga escala pode variar de projeto para projeto, mas geralmente estamos falando de \u00e1reas com milhares de objetos geogr\u00e1ficos (ou fei\u00e7\u00f5es) em uma escala de at\u00e9 1:10.000.<\/p>\n<p>Vou comentar primeiramente da nossa experi\u00eancia e logo depois irei comentar das ferramentas que desenvolvemos para auxiliar os analistas de geoprocessamento e a ger\u00eancia a ter uma vis\u00e3o completa do projeto.<\/p>\n<h2>Nossa experi\u00eancia<\/h2>\n<p>A SIGMA Geosistemas j\u00e1 executou diversos projetos que podem ser considerados como cartografia de larga escala. Em uma conta r\u00e1pida, estimo aproximadamente entre 60 e 70 mil km2 mapeados, utilizando apenas tecnologias livres, distribu\u00eddos entre os diversos projetos executados.<\/p>\n<p>Uma breve descri\u00e7\u00e3o sobre nosso <em>stack<\/em> tecnol\u00f3gico:<\/p>\n<ul>\n<li>PostgreSQL + PostGIS;<\/li>\n<li>pgpool;<\/li>\n<li>QGIS (diversas vers\u00f5es);<\/li>\n<li>cartobash;<\/li>\n<li>X9 (monitor de progresso);<\/li>\n<\/ul>\n<p>O PostgreSQL com o PostGIS, \u00e9 sem d\u00favida, o banco de dados geoespacial mais capaz do mercado. Ele \u00e9 nossa principal arma para este tipo de projeto, pois \u00e9 um banco de dados:<\/p>\n<ol>\n<li>Robusto;<\/li>\n<li>Cheio de funcionalidades importantes para <strong>an\u00e1lise espacial<\/strong>;<\/li>\n<li>Permite centenas de conex\u00f5es simult\u00e2neas, sem problemas;<\/li>\n<li>F\u00e1cil de configurar e manter;<\/li>\n<\/ol>\n<p>Junto ao PostgreSQL, para ajudar a manter estas centenas de conex\u00f5es simult\u00e2neas (cada usu\u00e1rio pode abrir mais de uma conex\u00e3o ao banco), usamos o pgpool. Ele \u00e9 respons\u00e1vel por criar um <em>pool<\/em> de conex\u00f5es, sem termos a necessidade de recriamos cada conex\u00e3o a todo momento. Isto nos traz robustez e aumenta o desempenho.<\/p>\n<p>Em cima disto tudo, a estrela: QGIS, de prefer\u00eancia uma vers\u00e3o recente.<\/p>\n<p>O <strong>cartobash<\/strong> e o <strong>X9<\/strong> s\u00e3o ferramentas abertas que a SIGMA desenvolveu para auxiliar nesta tarefa.<\/p>\n<p>O <strong>cartobash<\/strong> \u00e9 uma ferramenta escrita basicamente em shell script, que automatiza diversas partes da constru\u00e7\u00e3o de novos bancos de dados, configura\u00e7\u00e3o de logging, backups e <strong>issues<\/strong>.<\/p>\n<p>Al\u00e9m disso, o <strong>cartobash<\/strong> gerencia vers\u00f5es padr\u00f5es de projetos QGIS, permitindo que cada analista gere seu arquivo de projeto, insira rapidamente sua senha e configure as diversas camadas daquele projeto.<\/p>\n<p>O <strong>X9<\/strong> \u00e9 um experimento escrito em Python e Django para ajudar a monitorar o que est\u00e1 sendo feito pelos analistas, em tempo real.<\/p>\n<p>Ele consulta a base de dados e a base de logs, para determinar qual \u00e9 o total de edi\u00e7\u00f5es realizadas naquele dia, qual \u00e9 a porcentagem de progresso do projeto, entre outras m\u00e9tricas interessantes.<\/p>\n<p>Descrita as ferramentas, passamos para a metodologia!<\/p>\n<h2>Metodologia<\/h2>\n<p>Em temos gerais, passamos pelas seguintes etapas:<\/p>\n<ol>\n<li>Defini\u00e7\u00e3o da abrang\u00eancia geogr\u00e1fica do projeto;<\/li>\n<li>Defini\u00e7\u00e3o do <strong>modelo de dados<\/strong>;<\/li>\n<li>Constru\u00e7\u00e3o do banco de dados com o <strong>cartobash<\/strong>;<\/li>\n<li>Setup de logging, issues, \u00e1reas de trabalho e funcionalidades de valida\u00e7\u00e3o automatizadas;<\/li>\n<li>Constru\u00e7\u00e3o do projeto padr\u00e3o QGIS;<\/li>\n<li>Delega\u00e7\u00e3o de permiss\u00e3o para os analistas;<\/li>\n<li>M\u00e3os a obra!isto <\/li>\n<\/ol>\n<p>Para o in\u00edcio de todos os projetos, o primeiro passo \u00e9 determinar seu modelo de dados e sua abrang\u00eancia geogr\u00e1fica.<\/p>\n<p>De posse dessas informa\u00e7\u00f5es, j\u00e1 saberemos o qu\u00e3o complexo ser\u00e1 a constru\u00e7\u00e3o e digitaliza\u00e7\u00e3o dessa base de dados.<\/p>\n<p>Neste ponto, com o modelo de dados principal, tabelas relacionados (ou auxiliares) prontas, configuramos o logging, issues e \u00e1reas de trabalho.<br \/>\nisto<br \/>\nEsta etapa \u00e9 (e deve ser) automatizada. Tudo isto \u00e9 feito pelo <strong>cartobash<\/strong>. Dividimos o projeto em sub-\u00e1reas, utilizando algumas funcionalidades do PostGIS e delegamos as mesmas para os analistas.<\/p>\n<p>As issues tamb\u00e9m s\u00e3o configuradas nesta etapa. As <strong>issues<\/strong> ou <strong>n\u00e3o-conformidades<\/strong> s\u00e3o dados geogr\u00e1ficos que podem ser utilizados pelos analistas e revisores, para marcar \u00e1reas que n\u00e3o estejam de acordo com o padr\u00e3o de qualidade esperado.<\/p>\n<p>Dependendo do tipo de projeto, configuramos as isto valida\u00e7\u00f5es automatizadas, como regras topol\u00f3gicas, executadas a cada minuto, podendo ser visualizadas pelos analistas em tempo real.<\/p>\n<p>UFA! O <strong>cartobash<\/strong> nos ajuda at\u00e9 a\u00ed, ent\u00e3o \u00e9 bem f\u00e1cil de realizar isso tudo. Basta rodar um comando <code>bash<\/code> e correr para o abra\u00e7o.<\/p>\n<p>A parte complicada, \u00e9 constru\u00e7\u00e3o do projeto do QGIS. O QGIS permite a constru\u00e7\u00e3o de formul\u00e1rios customizados, com regras avan\u00e7adas de relacionamento entre tabelas.<\/p>\n<p>Por exemplo, um tipo de fei\u00e7\u00e3o possui um campo chamado <code>CLASSE<\/code>, que s\u00f3 pode ter um dos valores: <code>A<\/code>, <code>B<\/code> ou <code>C<\/code>. Usando as ferramentas do QGIS permitem que voc\u00ea configure e limite as op\u00e7\u00f5es do analista, apenas a estas tr\u00eas.<\/p>\n<p>Este \u00e9 um exemplo simples, mas a partir desta configura\u00e7\u00e3o, o projeto padr\u00e3o \u00e9 disseminado entre os analistas, que inserem seu pr\u00f3prio usu\u00e1rio e senha do banco de dados.<\/p>\n<p>A partir deste momento, devemos por a m\u00e3o na massa.<\/p>\n<h2>Divis\u00e3o em sub-\u00e1reas<\/h2>\n<p>Existe um desafio complexo ao trabalhar com projetos massivos como os que trabalhamos. A sensa\u00e7\u00e3o de progresso experimentada pelos analistas \u00e9 bastante pequena, quando n\u00e3o delegamos \u00e1reas menores para seus trabalhos.<\/p>\n<p>Caso eles tenham liberdade para escolher as \u00e1reas de trabalho, sem uma limita\u00e7\u00e3o menor, a sensa\u00e7\u00e3o de avan\u00e7o do trabalho \u00e9 pequena e acabam se desmotivando.<\/p>\n<p>O segredo que permitiu aumentar a produtividade e aumentar a sensa\u00e7\u00e3o de progresso entre os colaboradores foi a divis\u00e3o do projeto em \u00e1reas menores, assinalando as mesmas a cada analista.<\/p>\n<p>Apesar de funcionar, pode trazer alguns problemas, como a eventual corre\u00e7\u00e3o de diverg\u00eancias entre as grades, mas em nossa experi\u00eancia, essas corre\u00e7\u00f5es s\u00e3o pequenas &#8211; fazendo esta estrat\u00e9gia valer a pena.<\/p>\n<h2>Conclus\u00e3o<\/h2>\n<p>Neste post tentamos trazer para voc\u00eas um pouco nossa experi\u00eancia com projetos de cartografia de larga escala.<\/p>\n<p>Qual \u00e9 a sua experi\u00eancia? Comente conosco!<\/p>\n<p>E voc\u00ea? tem algum projeto de cartografia de larga escala e precisa de ajuda? Conte conosco.<\/p>\n<p>Um abra\u00e7o!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Boa noite pessoal! Hoje vamos falar um pouco sobre a metodologia da SIGMA referente a cartografia de larga escala. Bem, a defini\u00e7\u00e3o de larga escala pode variar de projeto para projeto, mas geralmente estamos falando de \u00e1reas com milhares de objetos geogr\u00e1ficos (ou fei\u00e7\u00f5es) em uma escala de at\u00e9 1:10.000. Vou comentar primeiramente da nossa &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/geoadmin.com.br\/?p=637\" class=\"more-link\">Leia mais<span class=\"screen-reader-text\"> &#8220;Metodologia para cartografia de larga escala&#8221;<\/span><\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1],"tags":[64,26,30,29,38,45,18,65],"class_list":["post-637","post","type-post","status-publish","format-standard","hentry","category-sem-categoria","tag-banco-dados","tag-cartografia","tag-desenvolvimento-de-sistemas","tag-dev","tag-postgis","tag-python","tag-qgis","tag-x9"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/posts\/637","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=637"}],"version-history":[{"count":1,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/posts\/637\/revisions"}],"predecessor-version":[{"id":1308,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=\/wp\/v2\/posts\/637\/revisions\/1308"}],"wp:attachment":[{"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=637"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=637"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/geoadmin.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=637"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}