Cálculo das coordenadas no formato GMSPesquisei e quebrei a cabeça na internet um bom tempo(+ de semana) e não conseguia solução.Com ajuda consegui duas formas, graças aos colegas LUIZ MOTTA e MARCELO CABRAL do IBAMA - OBRIGADO PELA AJUDA.As duas formas funcionaram comigo, tanto no Windows 7 como no UBUNTU 16.4, com Qgis 2.14.2A primeira foi do Marcelo Cabral, eu testei no Qgis 2.14.2 com Windows 7, da seguinte forma:1) Adiciona uma camada shapefile com feições(pontos)2) Abrir Tabela de Atributos do Shapefile3) Habilitar edição4) Clicar em Abrir Calculadora de Campo5) Inserir Nome do novo Campo = “Lat” –> Tipo do novo campo = “Texto (string)” –> Comprimento do campo = 20 -> Na ficha “Expressão” copiar e colar a linha abaixo e depois clicar em OK:CASE WHEN $y<0THEN (floor ($y*-1) || '° ' || floor((($y*-1) - floor ($y*-1)) * 60) ||'\' ' || substr( (tostring(((($y*-1) - floor ($y*-1)) * 60) - floor((($y*-1) - floor ($y*-1)) * 60)) * 60),1,5) || '" S')ELSE (floor ($y) || '° ' || floor((($y) - floor ($y)) * 60) ||'\' ' || substr( (tostring(((($y) - floor ($y)) * 60) - floor((($y) - floor ($y)) * 60)) * 60),1,5) || '" N')END6) Clicar em Abrir Calculadora de Campo7) Inserir Nome do novo Campo = “Long” –> Tipo do novo campo = “Texto (string)” –> Comprimento do campo = 20 -> Na ficha “Expressão” copiar e colar a linha abaixo e depois clicar em OK::CASE WHEN $X<0THEN (floor ($x*-1) || '° ' || floor((($x*-1) - floor ($x*-1)) * 60) ||'\' ' || substr( (tostring(((($x*-1) - floor ($x*-1)) * 60) - floor((($x*-1) - floor ($x*-1)) * 60)) * 60),1,5) || '" W')ELSE (floor ($x) || '° ' || floor((($x) - floor ($x)) * 60) ||'\' ' || substr( (tostring(((($x) - floor ($x)) * 60) - floor((($x) - floor ($x)) * 60)) * 60),1,5) || '" E')ENDA segunda ajuda foi do Luiz Motta, eu testei no Qgis 2.14.2 no UBUNTU 16.4 e funcionou blz, da seguinte forma:1) Primeiramente acessar o endereço "https://github.com/lmotta/expressions_qgis/blob/master/ibama_expressions.py". Ao acessar esta página selecionar e copiar da linha número 1 até 243, deixar na memória e voltar para o Qgis.2) Adiciona uma camada shapefile com feições(pontos)3) Abrir Tabela de Atributos do Shapefile4) Habilitar o ícone "Selecionar Feições Usando uma Expressão"(ícone com símbolo do E sobre um quadrado)5) Clicar na aba Editor de Funções6) Clicar em Novo arquivo7) No campo Nome do arquivo digitar "ibama" -> OK -> o arquivo gerado vai aparecer no lado esquerdo8) Do lado direito tem um editor com números, selecionar as linhas número 1 até a 12 e clicar em cima da área selecionada com o botão direito do mouse para colar as linhas que vç copiou no ítem 1;9) Acima da linha número 1 tem um ícono Carregar, clicar nele -> A partir deste momento ele irá aparecer na ficha de Expressão10) Para checar clicar na aba Expressão -> abaixo do campo Busca tem o arquivo gerado(ibama), se clicar nele irá aparecer "dms_x" e "dms_y"11) Fechar esta janela e ir para Tabela de atributos da camada shapefile com feições(pontos)12) Clicar no ícole calculadora de campo(ícone com desenho de ábaco)13) Em Nome do novo campo digitar LATITUDE -> no Tipo do novo campo selecionar Texto(String) -> no Comprimento do campo de saída digitar 2014) Clicar na seta, ao lado do arquivo criado "ibama" -> clicar 2 vezes na opção dms_y. No lado esquerdo irá aparecer a expressão "dms_y( ", completar com o código do EPSG 4326, ou seja, irá ficar assim: dms_y( 4326) -> clicar em ok15) Para LONGITUDE clicar no ícole calculadora de campo(ícone com desenho de ábaco)16) Em Nome do novo campo digitar LONGITUDE -> no Tipo do novo campo selecionar Texto(String) -> no Comprimento do campo de saída digitar 2017) Clicar na seta, ao lado do arquivo criado "ibama" -> clicar 2 vezes na opção dms_x. No lado esquerdo irá aparecer a expressão "dms_x( ", completar com o código do EPSG 4326, ou seja, irá ficar assim: dms_x( 4326) -> clicar em okEspero que funcionem também para vçs...Bom trabalho a todos!!
--
Comunidade QGIS Brasil: http://qgisbrasil.org/
---
Você recebeu essa mensagem porque está inscrito no grupo "qgisbrasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para qgisbrasil+...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para qgisb...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/qgisbrasil.
Para mais opções, acesse https://groups.google.com/d/optout.
Cria um campo decimal com Grau: ceil($x)
Cria um campo decimal com Minuto: floor((ceil($x)-($x))*60)
Cria um campo decimal com Segundo: 60*(((ceil($x)-($x))*60)-(floor((ceil($x)-($x))*60)))
Se for pra ter tudo no mesmo campo:
Cria um campo texto com a coordenada em GMS, com segundos em número inteiros: ceil($x) || 'º' || floor((ceil($x)-($x))*60) || '\'' || round(60*(((ceil($x)-($x))*60)-(floor((ceil($x)-($x))*60)))) || '"'
Cria um campo texto com a coordenada em GMS, com segundos decimais: ceil($x) || 'º' || floor((ceil($x)-($x))*60) || '\'' || (60*(((ceil($x)-($x))*60)-(floor((ceil($x)-($x))*60)))) || '"'