Commit 80991dbd3e8a34e9a8978088f9e3a6cff9e1494a
1 parent
ba84fc02
Exists in
master
Opção de cluster na ferramenta Legenda
Showing
5 changed files
with
90 additions
and
23 deletions
Show diff stats
classesphp/classe_alteraclasse.php
... | ... | @@ -148,8 +148,7 @@ class Alteraclasse |
148 | 148 | return "erro"; |
149 | 149 | } |
150 | 150 | $numclasses = $this->layer->numclasses; |
151 | - if ($numclasses > 0) | |
152 | - { | |
151 | + if ($numclasses > 0){ | |
153 | 152 | //elimina a expressão da primeira classe |
154 | 153 | $classe0 = $this->layer->getClass(0); |
155 | 154 | //echo "<pre>";var_dump($classe0);exit; |
... | ... | @@ -162,6 +161,16 @@ class Alteraclasse |
162 | 161 | $classe->set("status",MS_DELETE); |
163 | 162 | } |
164 | 163 | } |
164 | + else{ | |
165 | + $classe = ms_newClassObj($this->layer); | |
166 | + $novoestilo = ms_newStyleObj($classe); | |
167 | + if ($this->layer->type == 0){ | |
168 | + $novoestilo->set("symbolname","ponto"); | |
169 | + $novoestilo->set("size","6"); | |
170 | + } | |
171 | + $cor = $novoestilo->color; | |
172 | + $cor->setRGB(255,100,100); | |
173 | + } | |
165 | 174 | $this->layer->setMetaData("cache",""); |
166 | 175 | return("ok"); |
167 | 176 | } |
... | ... | @@ -195,6 +204,7 @@ class Alteraclasse |
195 | 204 | $ids = explode(";",$ids); |
196 | 205 | $minScales = explode(";",$minScales); |
197 | 206 | $maxScales = explode(";",$maxScales); |
207 | + | |
198 | 208 | $nomes = $this->converteTexto($nomes); |
199 | 209 | $nomes = explode(";",$nomes); |
200 | 210 | //$exps = mb_convert_encoding($exps,"ISO-8859-1","UTF-8"); |
... | ... | @@ -210,12 +220,13 @@ class Alteraclasse |
210 | 220 | //elimina as classes existentes atualmente em cada layer |
211 | 221 | foreach ($t as $tema){ |
212 | 222 | $layer = $this->mapa->getlayerbyname($tema); |
213 | - $layer->setMetaData("cache",""); | |
223 | + $layer->setmetadata("cache",""); | |
214 | 224 | $nc = $layer->numclasses; |
215 | - for($i=0;$i < $nc;++$i) | |
216 | - { | |
217 | - $class = $layer->getclass($i); | |
218 | - $class->set("status",MS_DELETE); | |
225 | + if($nc > 0){ | |
226 | + for($i=0;$i < $nc;++$i){ | |
227 | + $class = $layer->getclass($i); | |
228 | + $class->set("status",MS_DELETE); | |
229 | + } | |
219 | 230 | } |
220 | 231 | } |
221 | 232 | //acrescenta as classes definidas | ... | ... |
classesphp/classe_legenda.php
... | ... | @@ -749,7 +749,12 @@ class Legenda |
749 | 749 | $linha[] = corRGB($estilo->backgroundcolor); |
750 | 750 | $linha[] = corRGB($estilo->color); |
751 | 751 | $linha[] = $estilo->symbolname; |
752 | - $linha[] = $estilo->size; | |
752 | + if($estilo->getbinding(MS_STYLE_BINDING_SIZE)){ | |
753 | + $linha[] = $estilo->getbinding(MS_STYLE_BINDING_SIZE); | |
754 | + } | |
755 | + else{ | |
756 | + $linha[] = $estilo->size; | |
757 | + } | |
753 | 758 | $linha[] = $estilo->opacity; |
754 | 759 | if($this->v >= 6){ |
755 | 760 | $linha[] = $estilo->width; |
... | ... | @@ -842,7 +847,13 @@ class Legenda |
842 | 847 | } |
843 | 848 | if ((isset ($size)) && ($size != "-1")) |
844 | 849 | { |
845 | - $estilo->set("size",$size); | |
850 | + if(is_numeric($size)){ | |
851 | + $estilo->removebinding(MS_STYLE_BINDING_SIZE); | |
852 | + $estilo->set("size",$size); | |
853 | + } | |
854 | + else{ | |
855 | + $estilo->setbinding(MS_STYLE_BINDING_SIZE, $size); | |
856 | + } | |
846 | 857 | } |
847 | 858 | if ((isset ($width)) && ($width != "-1") && ($this->v >= 6)) |
848 | 859 | { |
... | ... | @@ -1096,13 +1107,19 @@ class Legenda |
1096 | 1107 | $cor->setRGB($nc[0],$nc[1],$nc[2]); |
1097 | 1108 | continue; |
1098 | 1109 | case "color": |
1099 | - $cor = $estilo->color; | |
1100 | - $nc = explode(",",$valor); | |
1101 | - $cor->setRGB($nc[0],$nc[1],$nc[2]); | |
1110 | + $cor = $estilo->color; | |
1111 | + $nc = explode(",",$valor); | |
1112 | + $cor->setRGB($nc[0],$nc[1],$nc[2]); | |
1102 | 1113 | continue; |
1103 | 1114 | case "size": |
1104 | - $estilo->set("size",$valor); | |
1105 | - break; | |
1115 | + if(is_numeric($valor)){ | |
1116 | + $estilo->removebinding(MS_STYLE_BINDING_SIZE); | |
1117 | + $estilo->set("size",$valor); | |
1118 | + } | |
1119 | + else{ | |
1120 | + $estilo->setbinding(MS_STYLE_BINDING_SIZE, $valor); | |
1121 | + } | |
1122 | + continue; | |
1106 | 1123 | case "width": |
1107 | 1124 | $estilo->set("width",$valor); |
1108 | 1125 | continue; | ... | ... |
classesphp/classe_temas.php
... | ... | @@ -1312,7 +1312,24 @@ Adiciona LABEL em uma classe de um tema |
1312 | 1312 | $cluster->updateFromString("CLUSTER $par END"); |
1313 | 1313 | $this->layer->setMetaData("cache",""); |
1314 | 1314 | $this->layer->setMetadata("tiles","NAO"); |
1315 | - $this->layer->setMetadata("cortepixels",0); | |
1315 | + $this->layer->setMetadata("cortepixels",0); | |
1316 | + //apaga as classes pois nao fazem mais sentido | |
1317 | + if($group == ""){ | |
1318 | + $numclasses = $this->layer->numclasses; | |
1319 | + if ($numclasses > 0){ | |
1320 | + for ($i=0; $i < $numclasses; ++$i) | |
1321 | + { | |
1322 | + $classe = $this->layer->getClass($i); | |
1323 | + $classe->set("status",MS_DELETE); | |
1324 | + } | |
1325 | + } | |
1326 | + $classe = ms_newClassObj($this->layer); | |
1327 | + $novoestilo = ms_newStyleObj($classe); | |
1328 | + $novoestilo->set("size",6); | |
1329 | + $novoestilo->set("symbolname","ponto"); | |
1330 | + $cor = $novoestilo->color; | |
1331 | + $cor->setRGB(255,100,100); | |
1332 | + } | |
1316 | 1333 | } |
1317 | 1334 | function removeCluster(){ |
1318 | 1335 | $cluster = $this->layer->cluster; |
... | ... | @@ -1320,6 +1337,18 @@ Adiciona LABEL em uma classe de um tema |
1320 | 1337 | $this->layer->setMetaData("cache",""); |
1321 | 1338 | $this->layer->setMetadata("tiles","NAO"); |
1322 | 1339 | $this->layer->setMetadata("cortepixels",0); |
1340 | + $numclasses = $this->layer->numclasses; | |
1341 | + if ($numclasses > 0){ | |
1342 | + for ($i=0; $i < $numclasses; ++$i) | |
1343 | + { | |
1344 | + $classe = $this->layer->getClass($i); | |
1345 | + $numestilos = $classe->numstyles; | |
1346 | + for($j=0;$j<$numestilos;++$j){ | |
1347 | + $estilo = $classe->getstyle($j); | |
1348 | + $estilo->removebinding(MS_STYLE_BINDING_SIZE); | |
1349 | + } | |
1350 | + } | |
1351 | + } | |
1323 | 1352 | } |
1324 | 1353 | } |
1325 | 1354 | ?> | ... | ... |
ferramentas/legenda/index.js
... | ... | @@ -1826,6 +1826,7 @@ i3GEOF.legenda = |
1826 | 1826 | + linha[6] |
1827 | 1827 | + "' id='i3GEOlegendasizes' />" |
1828 | 1828 | + "</form></div>" |
1829 | + + "<div class='styled-select' id='i3GEOlegendaComboSize'></div>" | |
1829 | 1830 | |
1830 | 1831 | + "<br><img style='float:left;' onclick='i3GEOF.legenda.aplicaTodasClasses(\"width\",\"i3GEOlegendawidth\")' title='" |
1831 | 1832 | + $trad('aplicatodos', i3GEOF.legenda.dicionario) |
... | ... | @@ -1974,6 +1975,13 @@ i3GEOF.legenda = |
1974 | 1975 | + "</form></div>"; |
1975 | 1976 | |
1976 | 1977 | $i("i3GEOlegendaParametrosEstilos").innerHTML = d; |
1978 | + //preenche as listas de itens | |
1979 | + i3GEO.util.comboItens("", i3GEOF.legenda.tema, function(retorno) { | |
1980 | + if ($i("i3GEOlegendaComboSize")) { | |
1981 | + $i("i3GEOlegendaComboSize").innerHTML = retorno.dados.replace("id=''"," onchange='$i(\"i3GEOlegendasizes\").value = this.value'"); | |
1982 | + } | |
1983 | + }); | |
1984 | + | |
1977 | 1985 | i3GEO.util.aplicaAquarela("i3GEOlegendaParametrosEstilos"); |
1978 | 1986 | p = |
1979 | 1987 | i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" | ... | ... |
ferramentas/saiku/instal.txt
... | ... | @@ -27,7 +27,7 @@ Utilize uma das opções abaixo para instalar o servidor saiku-server |
27 | 27 | |
28 | 28 | - Faça o download do SAIKU Server no endereço: http://meteorite.bi/saiku/download |
29 | 29 | |
30 | - - Descompacte os arquivos em uma pasta em seu servidor, podendo ser a mesma pasta onde se encontra a pasta i3geo (no Linux /var/www por exemplo) | |
30 | + - Descompacte os arquivos em uma pasta em seu servidor (no Linux /var por exemplo) | |
31 | 31 | |
32 | 32 | - Edite o arquivo saiku-server/tomcat/conf/server.xml para definir a porta utilizada pelo SAIKU |
33 | 33 | |
... | ... | @@ -44,7 +44,7 @@ Utilize uma das opções abaixo para instalar o servidor saiku-server |
44 | 44 | |
45 | 45 | Para que o SAIKU veja essa pasta é necessário editar o arquivo |
46 | 46 | |
47 | - /var/www/saiku-server/tomcat/webapps/saiku/WEB-INF/saiku-beans.xml | |
47 | + saiku-server/tomcat/webapps/saiku/WEB-INF/saiku-beans.xml | |
48 | 48 | |
49 | 49 | Procure pela linha: |
50 | 50 | |
... | ... | @@ -59,12 +59,14 @@ Utilize uma das opções abaixo para instalar o servidor saiku-server |
59 | 59 | Alguns dos códigos do SAIKU originais foram alterados. As alterações estão na pasta i3geo/ferramentas/saiku/saiku-server |
60 | 60 | O conteúdo dessa pasta deve ser copiado para a pasta onde o saiku for instalado (saiku-server) |
61 | 61 | |
62 | -2) Download via SVN do saiku-server com as alterações já realizadas | |
63 | - | |
64 | - Digite no terminal do sistema operacional: | |
65 | - | |
66 | - svn checkout http://svn.softwarepublico.gov.br/svn/i3geo/subgrupos/i3geosaude/saiku-server /var/www/saiku-server | |
62 | +2) Download via Git do saiku-server com as alterações já realizadas | |
67 | 63 | |
64 | + Veja as orientações sobre uso do Git e sobre como obter o código do i3geo. A obtenção do código do saiku-server segue a mesma lógica, no entanto você deve usar como exemplo os comandos abaixo: | |
65 | + | |
66 | + mkdir /var/saiku-server | |
67 | + cd /var/saiku-server | |
68 | + git -c http.sslVerify=false clone http://softwarepublico.gov.br/gitlab/i3geo/saiku-server.git . | |
69 | + chmod -R 766 /var/www/saiku-server | |
68 | 70 | |
69 | 71 | Após a obtenção dos arquivos, inicialize o servidor |
70 | 72 | |
... | ... | @@ -97,7 +99,7 @@ Banco de dados |
97 | 99 | |
98 | 100 | Essa tabela pode ser obtida fazendo-se o RESTORE do banco de dados default. Para obter o arquivo de backup utilize: |
99 | 101 | |
100 | - http://devel.gvsig.org/svn/i3geo/subgrupos/i3geosaude/databasei3geosaude.backup | |
102 | + https://softwarepublico.gov.br/gitlab/i3geo/i3geosaude/blob/master/databasei3geosaude.backup | |
101 | 103 | |
102 | 104 | Por padrão, esse banco de ve ser restaurado em um DATABASE chamado "i3geosaude" com usuário "postgres" e senha "postgres" |
103 | 105 | ... | ... |