classe_mapa.php

Manipulação do mapa.  Altera tamanho, lista temas, etc.

Licenca

GPL2

I3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet

Direitos Autorais Reservados © 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar..nosp@m.moretti@mma.g.nosp@m.ov.br

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;

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.

Arquivo

i3geo/classesphp/classe_mapa.php

Summary
classe_mapa.phpManipulação do mapa.
Mapa
Variaveis
$mapaObjeto mapa
$arquivoArquivo map file
$layersObjetos layers
$qyfileNome do arquivo de seleção (.qy)
Functions
__constructCria um objeto mapa
salvaSalva o mapfile atual
listaTemasBuscaRapidaElabora uma lista de temas e seus respectivos itens para uso no método buscaRegistros da classe classe_atributos
mudaoutputformatMuda o OUTPUTFORMAT
pegaMensagensPega as mensagens do metadata “mensagem” existentes nos layers do mapa atual
gravaImagemCorpo (depreciado)Grava a imagem do mapa atual
parametrosTemasPega os parametros dos layers do mapa.
redesenhaCorpoRedesenha o mapa e retorna as variáveis necessárias para montar o mapa.
redesenhaEntorno (depreciado)Redesenha o entorno do mapa (depreciado).
ativalegendaAtiva/desativa legenda, incluindo ou não no corpo do mapa.
ativalogoAtiva/desativa logomarca.
listaTemasLocaisLista os temas locais de um mapa.
listaTemasLista os temas de um mapa.
listaTemasTipoLista os temas, visíveis, de um determinado tipo de feição de um mapa.
listaTemasComSelLista os temas de um mapa que possuem elementos selecionados.
mudaQSMuda o tamanho do query map.
corQMMuda a cor do query map.
corfundoMuda a cor do fundo do mapa.
gradeCoordGera uma grade de coordenadas
adicionaTemaAcrescenta um novo tema em um arquivo map file.
excluiTemasExclui temas de um mapa.
ligaDesligaTemasLiga desliga temas.
adicionatemawmsAcrescenta um novo tema em um arquivo map file tendo como fonte um WMS.
converteWSTransforma o mapa atual em um web service.
converteWMCTransforma o mapa atual em um Web Map Context.
adicionaTemaGeoJsonAdiciona um canal GeoRSS como um tema no mapa.
adicionaTemaGeoRSSAdiciona um canal GeoRSS como um tema no mapa.
adicionaTemaSHPAdiciona um tema a partir de um arquivo shape file armazenado no servidor de arquivos.
adicionaTemaIMGAdiciona um tema a partir de um arquivo imagem armazenado no servidor de arquivos.

Mapa

Summary
Variaveis
$mapaObjeto mapa
$arquivoArquivo map file
$layersObjetos layers
$qyfileNome do arquivo de seleção (.qy)
Functions
__constructCria um objeto mapa
salvaSalva o mapfile atual
listaTemasBuscaRapidaElabora uma lista de temas e seus respectivos itens para uso no método buscaRegistros da classe classe_atributos
mudaoutputformatMuda o OUTPUTFORMAT
pegaMensagensPega as mensagens do metadata “mensagem” existentes nos layers do mapa atual
gravaImagemCorpo (depreciado)Grava a imagem do mapa atual
parametrosTemasPega os parametros dos layers do mapa.
redesenhaCorpoRedesenha o mapa e retorna as variáveis necessárias para montar o mapa.
redesenhaEntorno (depreciado)Redesenha o entorno do mapa (depreciado).
ativalegendaAtiva/desativa legenda, incluindo ou não no corpo do mapa.
ativalogoAtiva/desativa logomarca.
listaTemasLocaisLista os temas locais de um mapa.
listaTemasLista os temas de um mapa.
listaTemasTipoLista os temas, visíveis, de um determinado tipo de feição de um mapa.
listaTemasComSelLista os temas de um mapa que possuem elementos selecionados.
mudaQSMuda o tamanho do query map.
corQMMuda a cor do query map.
corfundoMuda a cor do fundo do mapa.
gradeCoordGera uma grade de coordenadas
adicionaTemaAcrescenta um novo tema em um arquivo map file.
excluiTemasExclui temas de um mapa.
ligaDesligaTemasLiga desliga temas.
adicionatemawmsAcrescenta um novo tema em um arquivo map file tendo como fonte um WMS.
converteWSTransforma o mapa atual em um web service.
converteWMCTransforma o mapa atual em um Web Map Context.
adicionaTemaGeoJsonAdiciona um canal GeoRSS como um tema no mapa.
adicionaTemaGeoRSSAdiciona um canal GeoRSS como um tema no mapa.
adicionaTemaSHPAdiciona um tema a partir de um arquivo shape file armazenado no servidor de arquivos.
adicionaTemaIMGAdiciona um tema a partir de um arquivo imagem armazenado no servidor de arquivos.

Variaveis

$mapa

Objeto mapa

$arquivo

Arquivo map file

$layers

Objetos layers

$qyfile

Nome do arquivo de seleção (.qy)

Functions

__construct

function __construct($map_file,  
$locaplic = "")

Cria um objeto mapa

parameters

$map_fileEndereço do mapfile no servidor.

salva

function salva()

Salva o mapfile atual

listaTemasBuscaRapida

function listaTemasBuscaRapida()

Elabora uma lista de temas e seus respectivos itens para uso no método buscaRegistros da classe classe_atributos

Atributos->buscaRegistros

A lista contém apenas os temas que estão visíveis e que possuem o metadata “itembuscarapida”

Retorno

{string}Lista de busca no formato item;tema,item;tema

mudaoutputformat

function mudaoutputformat($tipo)

Muda o OUTPUTFORMAT

Parametro

tipo {string}OUTPUTFORMAT que será aplicado. deve existir no mapfile básico que iniciou o i3Geo

pegaMensagens

function pegaMensagens()

Pega as mensagens do metadata “mensagem” existentes nos layers do mapa atual

Return

{String}

gravaImagemCorpo (depreciado)

function gravaImagemCorpo()

Grava a imagem do mapa atual

parametrosTemas

function parametrosTemas()

Pega os parametros dos layers do mapa.

return

stringjavascript com os parametros

redesenhaCorpo

function redesenhaCorpo($tipoimagem,
$utilizacgi,
$locmapserv)

Redesenha o mapa e retorna as variáveis necessárias para montar o mapa.

Parametros

$tipoimagemfiltro que será aplicado na imagem (opcional).

Return

stringparametros do corpo do mapa

Include

classe_imagem.php

redesenhaEntorno (depreciado)

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.

Return

stringjavascript com as variáveis para redesenho do mapa

ativalegenda

function ativalegenda()

Ativa/desativa legenda, incluindo ou não no corpo do mapa.

ativalogo

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”.

listaTemasLocais

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”.

Parameter

$tipotipo de layer que será considerado.  Default é 0.

listaTemas

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.

Parameter

$opcao Situação desejada do tema (ligados ou todos).

Return

Array com os temas e seus nomes

Properties

tema

nome

listaTemasTipo

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.

Parametros

$tipo Tipo de tema (pode ser mais de um) ponto,poligono,linha,raster

Return

Array com os temas e seus nomes

Properties

tema

nome

listaTemasComSel

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.

Return

Array com os temas e seus nomes

Properties

tema

nome

mudaQS

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.

Parametros

$wLargura.
$hAltura.

corQM

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

Parameter

$corRGB separado por vírgula.  Se a cor for vazia, retorna a cor atual.

corfundo

function corfundo($cor)

Muda a cor do fundo do mapa.

Parameter

$corRGB separado por vírgula.  Se a cor for vazia, retorna a cor atual.

gradeCoord

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.

Parameter

$intervalointervalo entre as linhas da grade.
$corlinhacor em RGB das linhas da grade
$larguralinhalargura das linhas da grade em pixel
$tipolinhasímbolo das linhas
$tamanhotextotamanho do texto
$cortextocor do texto
$incluitextosim|nao

adicionaTema

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.

Parametros

$temasstring Lista separada por vírgulas, dos arquivos que serão abertos para pegar os novos layers.  Não inclua a extensão “.map”.
$locaplicstring Diretório onde fica a aplicação.
$randomindica se os nomes dos novos layers serão modificados ou nao

excluiTemas

function excluiTemas($temas)

Exclui temas de um mapa.

O arquivo de seleção (.qy) é apagado do diretório temporário.

Parameter

$temaslista separada por vírgula dos temas que serão excluídos.

ligaDesligaTemas

function ligaDesligaTemas($ligar,  
$desligar,  
$adicionar = "nao")

Liga desliga temas.

Torna temas visíveis ou não no mapa alterando seu status.

Parametros

$ligarlista separada por vírgula dos temas que serão ligados.
$desligarlista separada por vírgula dos temas que serão desligados.  Se for igual a todos, todos os layers serão desligados.
$adicionarsim|nao força a adição de um tema se ele não existir no mapfile atual

adicionatemawms

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.

Parametros

$temaTema que será adicionado.
$servicoEndereço do web service.
$nomeNome do tema para a legenda.
$projLista das projeções suportadas separadas por vírgula.
$formatoLista dos formatos de imagem separadas por vírgula.
$locaplicDiretório onde fica a aplicação.
$tipoTipo de representação poligonal|linear|pontual.
$versaoVersão do getcapabilities
$nomecamadanome da camada do WMS
$dir_tmpdiretório temporário do I3Geo
$imgdirdiretório temporário das imagens
$imgurlurl do imgdir
$tiporeptipo de representação das feições do mapa.  Quando definido, é criado um sld para ser aplicado ao layer. poligonal|linear|pontual
$suportasldSuporta SLD sim|nao.
$formatosinfolista de formatos da requisição de atributos para a função getfeatureinfo (default text/plain)
$timeespecífico para WMS-T (parâmentro wms_time) Include: wmswfs.php

converteWS

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.

Parametros

$locmapservlocalização do CGI do mapserver
$hhost name

Return

Endereço do WMS

converteWMC

function converteWMC($locmapserv,
$h)

Transforma o mapa atual em um Web Map Context.

O novo map file é armazenado no mesmo diretório do map file original.

Parametros

$locmapservlocalização do CGI do mapserver
$hhost name

Return

Endereço do WMC

adicionaTemaGeoJson

function adicionaTemaGeoJson($servico,
$dir_tmp,
$locaplic)

Adiciona um canal GeoRSS como um tema no mapa.

Parametros

$servicoEndereço (url) do GeoJson.
$dir_tmpDiretório onde o arquivo será criado.
$locaplicLocalização do I3geo

adicionaTemaGeoRSS

function adicionaTemaGeoRSS($servico,
$dir_tmp,
$locaplic,
$canal)

Adiciona um canal GeoRSS como um tema no mapa.

Parametros

$servicoEndereço (url) do RSS.
$dir_tmpDiretório onde o arquivo será criado.
$locaplicLocalização do I3geo
$canalIdentificador do canal (ordem em que está no RSS)

adicionaTemaSHP

function adicionaTemaSHP($arq)

Adiciona um tema a partir de um arquivo shape file armazenado no servidor de arquivos.

Parametros

$arqNome do shape file.

adicionaTemaIMG

function adicionaTemaIMG($arq)

Adiciona um tema a partir de um arquivo imagem armazenado no servidor de arquivos.

Parametros

$arqNome do arquivo.
function __construct($map_file,  
$locaplic = "")
Cria um objeto mapa
function salva()
Salva o mapfile atual
function listaTemasBuscaRapida()
Elabora uma lista de temas e seus respectivos itens para uso no método buscaRegistros da classe classe_atributos
function mudaoutputformat($tipo)
Muda o OUTPUTFORMAT
function pegaMensagens()
Pega as mensagens do metadata “mensagem” existentes nos layers do mapa atual
function gravaImagemCorpo()
Grava a imagem do mapa atual
function parametrosTemas()
Pega os parametros dos layers do mapa.
function redesenhaCorpo($tipoimagem,
$utilizacgi,
$locmapserv)
Redesenha o mapa e retorna as variáveis necessárias para montar o mapa.
function redesenhaEntorno()
Redesenha o entorno do mapa (depreciado).
function ativalegenda()
Ativa/desativa legenda, incluindo ou não no corpo do mapa.
function ativalogo()
Ativa/desativa logomarca.
function listaTemasLocais($tipo = )
Lista os temas locais de um mapa.
function listaTemas($opcao)
Lista os temas de um mapa.
function listaTemasTipo($tipo,  
$selecao = "nao")
Lista os temas, visíveis, de um determinado tipo de feição de um mapa.
function listaTemasComSel()
Lista os temas de um mapa que possuem elementos selecionados.
function mudaQS($w,
$h)
Muda o tamanho do query map.
function corQM($cor)
Muda a cor do query map.
function corfundo($cor)
Muda a cor do fundo do mapa.
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
function adicionaTema($temas,  
$locaplic,  
$random = "sim")
Acrescenta um novo tema em um arquivo map file.
function excluiTemas($temas)
Exclui temas de um mapa.
function ligaDesligaTemas($ligar,  
$desligar,  
$adicionar = "nao")
Liga desliga temas.
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.
function converteWS($locmapserv,
$h)
Transforma o mapa atual em um web service.
function converteWMC($locmapserv,
$h)
Transforma o mapa atual em um Web Map Context.
function adicionaTemaGeoJson($servico,
$dir_tmp,
$locaplic)
Adiciona um canal GeoRSS como um tema no mapa.
function adicionaTemaGeoRSS($servico,
$dir_tmp,
$locaplic,
$canal)
Adiciona um canal GeoRSS como um tema no mapa.
function adicionaTemaSHP($arq)
Adiciona um tema a partir de um arquivo shape file armazenado no servidor de arquivos.
function adicionaTemaIMG($arq)
Adiciona um tema a partir de um arquivo imagem armazenado no servidor de arquivos.
function buscaRegistros($palavra,
$lista,
$tipo,
$onde)
Procura valores em uma tabela que aderem a uma palavra de busca.
Manipulação de imagens.
Funções de uso geral para realizar a leitura e o processamento de Web Services nos padrões OGC.