Commit d23939b97de081f0a0ca553da4b7f2247df4970e
1 parent
55d1b5ef
Exists in
master
and in
7 other branches
Inclusão de parâmetros que permitem controlar as características da legenda quan…
…do embutida na funcao getmap em ogc.php
Showing
2 changed files
with
84 additions
and
9 deletions
Show diff stats
ogc.php
| @@ -31,8 +31,8 @@ Arquivo: i3geo/ogc.php | @@ -31,8 +31,8 @@ Arquivo: i3geo/ogc.php | ||
| 31 | 31 | ||
| 32 | Parâmetros: | 32 | Parâmetros: |
| 33 | 33 | ||
| 34 | -lista - (opcional) se for igual a "temas", mostra uma lista de links em HTML dos temas disponíveis, | ||
| 35 | -se for igual a "temaswfs", mostra a lista de links WFS | 34 | +lista - (opcional) se for igual a 'temas', mostra uma lista de links em HTML dos temas disponíveis, |
| 35 | +se for igual a 'temaswfs', mostra a lista de links WFS | ||
| 36 | 36 | ||
| 37 | ajuda - (opcional) mostra uma ajuda ao usuário | 37 | ajuda - (opcional) mostra uma ajuda ao usuário |
| 38 | 38 | ||
| @@ -40,6 +40,26 @@ tema ou temas - (opcional) nome do tema que será mostrado no servi&ccedil | @@ -40,6 +40,26 @@ tema ou temas - (opcional) nome do tema que será mostrado no servi&ccedil | ||
| 40 | 40 | ||
| 41 | legenda - (opcional) mostra a legenda no corpo do mapa sim|nao | 41 | legenda - (opcional) mostra a legenda no corpo do mapa sim|nao |
| 42 | 42 | ||
| 43 | + Ao ativar a legenda dentro do mapa, os seguintes parametros podem ser utilizados para controlar as características: | ||
| 44 | + | ||
| 45 | + legenda_imagecolor - cor RGB do fundo da legenda. Quando especificado, o mapa deixa de ser transparente. Exemplo: &legenda_imagecolor=255,0,0 | ||
| 46 | + | ||
| 47 | + legenda_keysizex - largura da figura de cada classe | ||
| 48 | + | ||
| 49 | + legenda_keysizey - altura da figura de cada classe | ||
| 50 | + | ||
| 51 | + legenda_keyspacingx - distancia entre a figura e o inicio do texto de cada classe | ||
| 52 | + | ||
| 53 | + legenda_keyspacingy - distancia entre as figuras de cada classe | ||
| 54 | + | ||
| 55 | + legenda_position - posicao da legenda no mapa ul|uc|ur|ll|lc|lr | ||
| 56 | + | ||
| 57 | + legenda_outlinecolor - cor RGB do contorno das figuras de cada classe | ||
| 58 | + | ||
| 59 | + legenda_font - fonte (tipogafica) utilizada nos textos (arial, verdana...) | ||
| 60 | + | ||
| 61 | + legenda_size - tamanho dos textos | ||
| 62 | + | ||
| 43 | templateLegenda - (opcional) nome de um template HTML para uso em legendas do tipo text/html. Dever ser o caminho relativo a pasta | 63 | templateLegenda - (opcional) nome de um template HTML para uso em legendas do tipo text/html. Dever ser o caminho relativo a pasta |
| 44 | onde o i3Geo esta instalado e deve usar a extensao .htm. Sobre templates, veja a documentacao do Mapserver. exemplo &templateLegenda=aplicmap/legenda8.htm | 64 | onde o i3Geo esta instalado e deve usar a extensao .htm. Sobre templates, veja a documentacao do Mapserver. exemplo &templateLegenda=aplicmap/legenda8.htm |
| 45 | 65 | ||
| @@ -59,7 +79,7 @@ nao deve ser utilizado junto com tema | @@ -59,7 +79,7 @@ nao deve ser utilizado junto com tema | ||
| 59 | 79 | ||
| 60 | restauramapa - ID de um mapa salvo no sistema de administracao. O mapa e restaurado e tratado como WMS | 80 | restauramapa - ID de um mapa salvo no sistema de administracao. O mapa e restaurado e tratado como WMS |
| 61 | 81 | ||
| 62 | -DESLIGACACHE (opcional) {sim|nao} - forca a nao usar o cache de imagens qd definido como "sim", do contrário, o uso ou não do cache será definido automaticamente | 82 | +DESLIGACACHE (opcional) {sim|nao} - forca a nao usar o cache de imagens qd definido como 'sim', do contrário, o uso ou não do cache será definido automaticamente |
| 63 | 83 | ||
| 64 | filtros - filtros podem ser adicionados incluindo o parametro da seguinte forma: &map_layer_<nomedotema>_filter= | 84 | filtros - filtros podem ser adicionados incluindo o parametro da seguinte forma: &map_layer_<nomedotema>_filter= |
| 65 | 85 | ||
| @@ -79,7 +99,16 @@ ogc.php?tema=bioma | @@ -79,7 +99,16 @@ ogc.php?tema=bioma | ||
| 79 | 99 | ||
| 80 | ogc.php?tema=/var/www/i3geo/aplicmap/geral1debianv6.map&layers=mundo | 100 | ogc.php?tema=/var/www/i3geo/aplicmap/geral1debianv6.map&layers=mundo |
| 81 | 101 | ||
| 82 | -*/ | 102 | +*/ |
| 103 | + | ||
| 104 | +if(count($_GET) == 0){ | ||
| 105 | + echo "<pre> | ||
| 106 | + | ||
| 107 | + | ||
| 108 | +"; | ||
| 109 | + exit; | ||
| 110 | +} | ||
| 111 | + | ||
| 83 | include(dirname(__FILE__)."/classesphp/sani_request.php"); | 112 | include(dirname(__FILE__)."/classesphp/sani_request.php"); |
| 84 | include_once (dirname(__FILE__)."/classesphp/carrega_ext.php"); | 113 | include_once (dirname(__FILE__)."/classesphp/carrega_ext.php"); |
| 85 | include(dirname(__FILE__)."/ms_configura.php"); | 114 | include(dirname(__FILE__)."/ms_configura.php"); |
| @@ -425,7 +454,7 @@ else{ | @@ -425,7 +454,7 @@ else{ | ||
| 425 | $oMap->setmetadata("wms_attribution_logourl_height","56"); | 454 | $oMap->setmetadata("wms_attribution_logourl_height","56"); |
| 426 | $oMap->setmetadata("wms_attribution_logourl_width","85"); | 455 | $oMap->setmetadata("wms_attribution_logourl_width","85"); |
| 427 | $oMap->setmetadata("wms_attribution_logourl_href",$urli3geo."/imagens/i3geo.png"); | 456 | $oMap->setmetadata("wms_attribution_logourl_href",$urli3geo."/imagens/i3geo.png"); |
| 428 | - $oMap->setmetadata("wms_attribution_onlineresource",$urli3geo); | 457 | + $oMap->setmetadata("wms_attribution_onlineresource",$urli3geo); |
| 429 | $oMap->setmetadata("wms_attribution_title",$tituloInstituicao); | 458 | $oMap->setmetadata("wms_attribution_title",$tituloInstituicao); |
| 430 | $oMap->setmetadata("ows_enable_request","*"); | 459 | $oMap->setmetadata("ows_enable_request","*"); |
| 431 | //parametro mandatario | 460 | //parametro mandatario |
| @@ -441,7 +470,6 @@ else{ | @@ -441,7 +470,6 @@ else{ | ||
| 441 | //para o caso do tema ser um arquivo mapfile existente em uma pasta qualquer | 470 | //para o caso do tema ser um arquivo mapfile existente em uma pasta qualquer |
| 442 | //$temai3geo = true indica que o layer será buscado na pasta i3geo/temas | 471 | //$temai3geo = true indica que o layer será buscado na pasta i3geo/temas |
| 443 | $temai3geo = true; | 472 | $temai3geo = true; |
| 444 | - //FIXME nao aceita gvp quando o caminho e completo | ||
| 445 | if(file_exists($_GET["tema"]) && !isset($_GET["id_medida_variavel"])){ | 473 | if(file_exists($_GET["tema"]) && !isset($_GET["id_medida_variavel"])){ |
| 446 | $nmap = ms_newMapobj($_GET["tema"]); | 474 | $nmap = ms_newMapobj($_GET["tema"]); |
| 447 | $temai3geo = false; | 475 | $temai3geo = false; |
| @@ -793,7 +821,55 @@ else{ | @@ -793,7 +821,55 @@ else{ | ||
| 793 | $legenda = $_GET["legenda"]; | 821 | $legenda = $_GET["legenda"]; |
| 794 | if((isset($legenda)) && (strtolower($legenda) == "sim")){ | 822 | if((isset($legenda)) && (strtolower($legenda) == "sim")){ |
| 795 | $leg = $oMap->legend; | 823 | $leg = $oMap->legend; |
| 796 | - $leg->set("status",MS_EMBED); | 824 | + $leg->set("status",MS_EMBED); |
| 825 | + if(!empty($_GET["legenda_imagecolor"])){ | ||
| 826 | + $_GET["legenda_imagecolor"] = str_replace(","," ",$_GET["legenda_imagecolor"]); | ||
| 827 | + $ncor = explode(" ",$_GET["legenda_imagecolor"]); | ||
| 828 | + $cor = $leg->imagecolor; | ||
| 829 | + $cor->setRGB($ncor[0],$ncor[1],$ncor[2]); | ||
| 830 | + $req->setParameter("TRANSPARENT",0); | ||
| 831 | + } | ||
| 832 | + if(!empty($_GET["legenda_keysizex"])){ | ||
| 833 | + $leg->set("keysizex",$_GET["legenda_keysizex"]); | ||
| 834 | + } | ||
| 835 | + if(!empty($_GET["legenda_keysizey"])){ | ||
| 836 | + $leg->set("keysizey",$_GET["legenda_keysizey"]); | ||
| 837 | + } | ||
| 838 | + if(!empty($_GET["legenda_keyspacingx"])){ | ||
| 839 | + $leg->set("keyspacingx",$_GET["legenda_keyspacingx"]); | ||
| 840 | + } | ||
| 841 | + //ul|uc|ur|ll|lc|lr | ||
| 842 | + if(!empty($_GET["legenda_position"])){ | ||
| 843 | + if($_GET["legenda_position"] == "ul") $leg->set("position",MS_UL); | ||
| 844 | + if($_GET["legenda_position"] == "uc") $leg->set("position",MS_UC); | ||
| 845 | + if($_GET["legenda_position"] == "ur") $leg->set("position",MS_UR); | ||
| 846 | + if($_GET["legenda_position"] == "ll") $leg->set("position",MS_LL); | ||
| 847 | + if($_GET["legenda_position"] == "lc") $leg->set("position",MS_LC); | ||
| 848 | + if($_GET["legenda_position"] == "lr") $leg->set("position",MS_LR); | ||
| 849 | + } | ||
| 850 | + if(!empty($_GET["legenda_keyspacingy"])){ | ||
| 851 | + $leg->set("keyspacingy",$_GET["legenda_keyspacingy"]); | ||
| 852 | + } | ||
| 853 | + if(!empty($_GET["legenda_outlinecolor"])){ | ||
| 854 | + $_GET["legenda_outlinecolor"] = str_replace(","," ",$_GET["legenda_outlinecolor"]); | ||
| 855 | + $ncor = explode(" ",$_GET["legenda_outlinecolor"]); | ||
| 856 | + $cor = $leg->outlinecolor; | ||
| 857 | + $cor->setRGB($ncor[0],$ncor[1],$ncor[2]); | ||
| 858 | + } | ||
| 859 | + //fonte e size so com truetype | ||
| 860 | + if (!empty($_GET["legenda_font"])){ | ||
| 861 | + $label = $leg->label; | ||
| 862 | + $label->updatefromstring("LABEL TYPE TRUETYPE END"); | ||
| 863 | + $label->set("font",$_GET["legenda_font"]); | ||
| 864 | + } | ||
| 865 | + if (!empty($_GET["legenda_size"])){ | ||
| 866 | + $label = $leg->label; | ||
| 867 | + $label->updatefromstring("LABEL TYPE TRUETYPE END"); | ||
| 868 | + if(empty($_GET["legenda_font"])){ | ||
| 869 | + $label->set("font","arial"); | ||
| 870 | + } | ||
| 871 | + $label->set("size",$_GET["legenda_size"]); | ||
| 872 | + } | ||
| 797 | } | 873 | } |
| 798 | $oMap->setSymbolSet($locaplic."/symbols/".basename($oMap->symbolsetfilename)); | 874 | $oMap->setSymbolSet($locaplic."/symbols/".basename($oMap->symbolsetfilename)); |
| 799 | $oMap->setFontSet($locaplic."/symbols/".basename($oMap->fontsetfilename)); | 875 | $oMap->setFontSet($locaplic."/symbols/".basename($oMap->fontsetfilename)); |
| @@ -1223,7 +1299,6 @@ function carregaCacheImagem($cachedir,$map,$tms){ | @@ -1223,7 +1299,6 @@ function carregaCacheImagem($cachedir,$map,$tms){ | ||
| 1223 | $nome = $cachedir.$tms; | 1299 | $nome = $cachedir.$tms; |
| 1224 | } | 1300 | } |
| 1225 | $nome = str_replace(".png","",$nome).".png"; | 1301 | $nome = str_replace(".png","",$nome).".png"; |
| 1226 | - //TODO verificar esses cabecalhos e comparar com geoserver | ||
| 1227 | if(file_exists($nome)){ | 1302 | if(file_exists($nome)){ |
| 1228 | ob_clean(); | 1303 | ob_clean(); |
| 1229 | //header('Content-Length: '.filesize($nome)); | 1304 | //header('Content-Length: '.filesize($nome)); |
ogc/dicionario.js
| @@ -67,7 +67,7 @@ g_traducao_ogc = | @@ -67,7 +67,7 @@ g_traducao_ogc = | ||
| 67 | es : "" | 67 | es : "" |
| 68 | }], | 68 | }], |
| 69 | "jumbotron" : [{ | 69 | "jumbotron" : [{ |
| 70 | - pt : "Navegue pela árvore ao lado para localizar o tema desejado. Clicando-se em um tema, é mostrado o endereço do serviço OGC. Os serviços são Web Wervices que possibilitam o acesso aos dados disponíveis nessa instalação do i3Geo. A lista de temas baseia-se nas configurações específicas de cada servidor onde o i3Geoestá instalado. Você pode usar um Web Service para acessar os dados configurados nesse servidor por meio de outros softwares de geoprocessamento, como o <a href='http://www.gvsig.gva.es/index.php?id=gvsig&L=0'>gvSIG.</a> Para maiores informações sobre o uso de web services, veja <a href='http://www.opengeospatial.org/standards' target=blank>http://www.opengeospatial.org/standards</a>", | 70 | + pt : "Navegue pela árvore ao lado para localizar o tema desejado. Clicando-se em um tema, é mostrado o endereço do serviço OGC. Os serviços são Web Wervices que possibilitam o acesso aos dados disponíveis nessa instalação do i3Geo. A lista de temas baseia-se nas configurações específicas de cada servidor onde o i3Geoestá instalado. Você pode usar um Web Service para acessar os dados configurados nesse servidor por meio de outros softwares de geoprocessamento, como o <a href='http://www.gvsig.gva.es/index.php?id=gvsig&L=0'>gvSIG.</a> Para maiores informações sobre o uso de web services, veja <a href='http://www.opengeospatial.org/standards' target=blank>http://www.opengeospatial.org/standards</a>. <div class='alert alert-info' role='alert'>O i3Geo possuí alguns parâmetros especiais, que não fazem parte dos padrões de serviços OGC. Para ver esses parâmetros acesse <a href='../ogc.php' target='_blank' class='alert-link' >ogc.php</a></div>", |
| 71 | en : "", | 71 | en : "", |
| 72 | es : "" | 72 | es : "" |
| 73 | }], | 73 | }], |