Manipulação do mapa. Altera tamanho, lista temas, etc.
GPL2
I3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet
Direitos Autorais Reservados © 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar.@mma.g ov.br moretti
Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da Licença Pública Geral GNU conforme publicada pela Free Software Foundation; tanto a versão 2 da Licença. Este programa é distribuído na expectativa de que seja útil, porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral do GNU para mais detalhes. Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto com este programa; se não, escreva para a Free Software Foundation, Inc., no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
i3geo/classesphp/classe_mapa.php
classe_mapa.php | Manipulação do mapa. |
Classe | |
Mapa | |
Variaveis | |
$mapa | Objeto mapa |
$arquivo | Arquivo map file |
$layers | Objetos layers |
Functions | |
__construct | Cria um objeto mapa |
salva | Salva o mapfile atual |
pegaMensagens | Pega as mensagens do metadata “mensagem” existentes nos layers do mapa atual |
gravaImagemCorpo (depreciado) | Grava a imagem do mapa atual |
parametrosTemas | Pega os parametros dos layers do mapa. |
redesenhaCorpo | Redesenha o mapa e retorna as variáveis necessárias para montar o mapa. |
redesenhaEntorno (depreciado) | Redesenha o entorno do mapa (depreciado). |
ativalegenda | Ativa/desativa legenda, incluindo ou não no corpo do mapa. |
ativalogo | Ativa/desativa logomarca. |
listaTemasLocais | Lista os temas locais de um mapa. |
listaTemas | Lista os temas de um mapa. |
listaTemasTipo | Lista os temas, visíveis, de um determinado tipo de feição de um mapa. |
listaTemasComSel | Lista os temas de um mapa que possuem elementos selecionados. |
mudaQS | Muda o tamanho do query map. |
corQM | Muda a cor do query map. |
corfundo | Muda a cor do fundo do mapa. |
gradeCoord | Gera uma grade de coordenadas |
adicionaTema | Acrescenta um novo tema em um arquivo map file. |
excluiTemas | Exclui temas de um mapa. |
ligaDesligaTemas | Liga desliga temas. |
adicionatemawms | Acrescenta um novo tema em um arquivo map file tendo como fonte um WMS. |
converteWS | Transforma o mapa atual em um web service. |
adicionaTemaGeoRSS | Adiciona um canal GeoRSS como um tema no mapa. |
adicionaTemaSHP | Adiciona um tema a partir de um arquivo shape file armazenado no servidor de arquivos. |
adicionaTemaIMG | Adiciona um tema a partir de um arquivo imagem armazenado no servidor de arquivos. |
function __construct( $map_file, $locaplic = "" )
Cria um objeto mapa
$map_file | Endereço do mapfile no servidor. |
function pegaMensagens()
Pega as mensagens do metadata “mensagem” existentes nos layers do mapa atual
{String}
function parametrosTemas()
Pega os parametros dos layers do mapa.
string | javascript com os parametros |
function redesenhaCorpo( $locsistemas, $locidentifica, $tipoimagem, $utilizacgi, $locmapserv )
Redesenha o mapa e retorna as variáveis necessárias para montar o mapa.
$locsistemas | Endereço do arquivo xml com a lista de sistemas adicionais. |
$locidentifica | Variável definida no arquivo ms_configura.php que identifica se existem sistemas adicionais a ser mostrados na opção de identificação. |
$tipoimagem | filtro que será aplicado na imagem (opcional). |
string | parametros do corpo do mapa |
function redesenhaEntorno()
Redesenha o entorno do mapa (depreciado).
Redesenha as partes norte, sul, leste e oeste do mapa e retorna as variáveis necessárias para montar o mapa.
string | javascript com as variáveis para redesenho do mapa |
function ativalogo()
Ativa/desativa logomarca.
A logomarca é mostrada no canto superior direito da imagem do mapa. No mapfile padrão (geral1.map), o layer “copyright” é utilizado para incluir a logomarca. Essa função liga ou desliga esse layer, manipulando a propriedade “status”.
function listaTemasLocais( $tipo = )
Lista os temas locais de um mapa.
Lista os temas existentes no mapfile atual, que utilizam como fonte de dados shape file, e que estão armazenados no diretório temporário do mapa. Os arquivos shape file existentes no diretório temporário do mapa são passíveis de edição. Obs.: Toda vez que um tema local é criado pelo I3Geo, o METADATA “TEMALOCAL” é marcado como “sim”.
$tipo | tipo de layer que será considerado. Default é 0. |
function listaTemas( $opcao )
Lista os temas de um mapa.
Obs.: o “METADATA” “ESCONDIDO”, quando presente no tema e diferente de vazio, indica que o tema é do tipo escondido, ou seja, não deve ser listado pelo I3Geo em combos ou listagens. Por isso, layers desse tipo são ignorados por essa função.
$opcao Situação desejada do tema (ligados ou todos).
Array com os temas e seus nomes
tema
nome
function listaTemasTipo( $tipo, $selecao = "nao" )
Lista os temas, visíveis, de um determinado tipo de feição de um mapa.
Obs.: o “METADATA” “ESCONDIDO”, quando presente no tema e diferente de vazio, indica que o tema é do tipo escondido, ou seja, não deve ser listado pelo I3Geo em combos ou listagens. Por isso, layers desse tipo são ignorados por essa função.
$tipo Tipo de tema (pode ser mais de um) ponto,poligono,linha,raster
Array com os temas e seus nomes
tema
nome
function listaTemasComSel()
Lista os temas de um mapa que possuem elementos selecionados.
Obs.: o “METADATA” “ESCONDIDO”, quando presente no tema e diferente de vazio, indica que o tema é do tipo escondido, ou seja, não deve ser listado pelo I3Geo em combos ou listagens. Por isso, layers desse tipo são ignorados por essa função.
Array com os temas e seus nomes
tema
nome
function mudaQS( $w, $h )
Muda o tamanho do query map.
Essa função é executada na inicialização do mapa ou quando o mapa tem suas dimensões alteradas. A função de alteração dos parâmetros do query map original do PHPMapscript, não funciona corretamente.
$w | Largura. |
$h | Altura. |
function corQM( $cor )
Muda a cor do query map.
Muda a cor utilizada para mostrar os elementos selecionados de um tema ou retorna a cor atual
$cor | RGB separado por vírgula. Se a cor for vazia, retorna a cor atual. |
function corfundo( $cor )
Muda a cor do fundo do mapa.
$cor | RGB separado por vírgula. Se a cor for vazia, retorna a cor atual. |
function gradeCoord( $intervalo, $corlinha = "200,200,200", $larguralinha = 1, $tipolinha = "linha", $tamanhotexto = MS_TINY, $fonte = "bitmap", $cortexto = "0,0,0", $incluitexto = "sim", $mascara = "-1,-1,-1", $shadowcolor = "-1,-1,-1", $shadowsizex = 0, $shadowsizey = 0 )
Gera uma grade de coordenadas
A grade é incluida no mapa como um novo layer.
$intervalo | intervalo entre as linhas da grade. |
$corlinha | cor em RGB das linhas da grade |
$larguralinha | largura das linhas da grade em pixel |
$tipolinha | símbolo das linhas |
$tamanhotexto | tamanho do texto |
$cortexto | cor do texto |
$incluitexto | sim|nao |
function adicionaTema( $temas, $locaplic, $random = "sim" )
Acrescenta um novo tema em um arquivo map file.
O tema deve estar incluído em um arquivo .map localizado no diretório “temas”. Ao ser adicionado, todos os layers do arquivo indicado serão acrescentados. Os layers que formam grupos também são processados, tendo seus nomes alterados de acordo. Cada novo layer receberá um novo nome, definido de forma aleatória. Os nomes dos temas podem conter o caminho completo do mapfile.
$temas | string Lista separada por vírgulas, dos arquivos que serão abertos para pegar os novos layers. Não inclua a extensão “.map”. |
$locaplic | string Diretório onde fica a aplicação. |
$random | indica se os nomes dos novos layers serão modificados ou nao |
function excluiTemas( $temas )
Exclui temas de um mapa.
O arquivo de seleção (.qy) é apagado do diretório temporário.
$temas | lista separada por vírgula dos temas que serão excluídos. |
function ligaDesligaTemas( $ligar, $desligar, $adicionar = "nao" )
Liga desliga temas.
Torna temas visíveis ou não no mapa alterando seu status.
$ligar | lista separada por vírgula dos temas que serão ligados. |
$desligar | lista separada por vírgula dos temas que serão desligados. Se for igual a todos, todos os layers serão desligados. |
$adicionar | sim|nao força a adição de um tema se ele não existir no mapfile atual |
function adicionatemawms( $tema, $servico, $nome, $proj, $formato, $locaplic, $tipo, $versao, $nomecamada, $dir_tmp, $imgdir, $imgurl, $tiporep, $suportasld, $formatosinfo = "text/plain", $time = "" )
Acrescenta um novo tema em um arquivo map file tendo como fonte um WMS.
$tema | Tema que será adicionado. |
$servico | Endereço do web service. |
$nome | Nome do tema para a legenda. |
$proj | Lista das projeções suportadas separadas por vírgula. |
$formato | Lista dos formatos de imagem separadas por vírgula. |
$locaplic | Diretório onde fica a aplicação. |
$tipo | Tipo de representação poligonal|linear|pontual. |
$versao | Versão do getcapabilities |
$nomecamada | nome da camada do WMS |
$dir_tmp | diretório temporário do I3Geo |
$imgdir | diretório temporário das imagens |
$imgurl | url do imgdir |
$tiporep | tipo de representação das feições do mapa |
$suportasld | Suporta SLD sim|nao. |
$formatosinfo | lista de formatos da requisição de atributos para a função getfeatureinfo (default text/plain) |
$time | específico para WMS-T (parâmentro wms_time) Include: wmswfs.php |
function converteWS( $locmapserv, $h )
Transforma o mapa atual em um web service.
O novo map file é armazenado no mesmo diretório do map file original.
$locmapserv | localização do CGI do mapserver |
$h | host name |
Endereço do WMS
function adicionaTemaGeoRSS( $servico, $dir_tmp, $locaplic, $canal )
Adiciona um canal GeoRSS como um tema no mapa.
$servico | Endereço do RSS. |
$dir_tmp | Diretório onde o arquivo será criado. |
$locaplic | Localização do I3geo |
$canal | Identificador do canal (ordem em que está no RSS) |
Cria um objeto mapa
function __construct( $map_file, $locaplic = "" )
Salva o mapfile atual
function salva()
Pega as mensagens do metadata “mensagem” existentes nos layers do mapa atual
function pegaMensagens()
Grava a imagem do mapa atual
function gravaImagemCorpo()
Pega os parametros dos layers do mapa.
function parametrosTemas()
Redesenha o mapa e retorna as variáveis necessárias para montar o mapa.
function redesenhaCorpo( $locsistemas, $locidentifica, $tipoimagem, $utilizacgi, $locmapserv )
Redesenha o entorno do mapa (depreciado).
function redesenhaEntorno()
Ativa/desativa legenda, incluindo ou não no corpo do mapa.
function ativalegenda()
Ativa/desativa logomarca.
function ativalogo()
Lista os temas locais de um mapa.
function listaTemasLocais( $tipo = )
Lista os temas de um mapa.
function listaTemas( $opcao )
Lista os temas, visíveis, de um determinado tipo de feição de um mapa.
function listaTemasTipo( $tipo, $selecao = "nao" )
Lista os temas de um mapa que possuem elementos selecionados.
function listaTemasComSel()
Muda o tamanho do query map.
function mudaQS( $w, $h )
Muda a cor do query map.
function corQM( $cor )
Muda a cor do fundo do mapa.
function corfundo( $cor )
Gera uma grade de coordenadas
function gradeCoord( $intervalo, $corlinha = "200,200,200", $larguralinha = 1, $tipolinha = "linha", $tamanhotexto = MS_TINY, $fonte = "bitmap", $cortexto = "0,0,0", $incluitexto = "sim", $mascara = "-1,-1,-1", $shadowcolor = "-1,-1,-1", $shadowsizex = 0, $shadowsizey = 0 )
Acrescenta um novo tema em um arquivo map file.
function adicionaTema( $temas, $locaplic, $random = "sim" )
Exclui temas de um mapa.
function excluiTemas( $temas )
Liga desliga temas.
function ligaDesligaTemas( $ligar, $desligar, $adicionar = "nao" )
Acrescenta um novo tema em um arquivo map file tendo como fonte um WMS.
function adicionatemawms( $tema, $servico, $nome, $proj, $formato, $locaplic, $tipo, $versao, $nomecamada, $dir_tmp, $imgdir, $imgurl, $tiporep, $suportasld, $formatosinfo = "text/plain", $time = "" )
Transforma o mapa atual em um web service.
function converteWS( $locmapserv, $h )
Adiciona um canal GeoRSS como um tema no mapa.
function adicionaTemaGeoRSS( $servico, $dir_tmp, $locaplic, $canal )
Adiciona um tema a partir de um arquivo shape file armazenado no servidor de arquivos.
function adicionaTemaSHP( $arq )
Adiciona um tema a partir de um arquivo imagem armazenado no servidor de arquivos.
function adicionaTemaIMG( $arq )