i3Geo

Arquivo

i3geo/classesjs/classe_i3geo.js

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.

Summary
i3Geoi3geo/classesjs/classe_i3geo.js
i3GEOA classe i3GEO possuí os métodos de criação e atualização do mapa.
Propriedades
parametrosParâmetros obtidos do mapa atual.
scrollerWidthLargura da barra de rolagem do navegador.
finalizaFunção que será executada após a inicialização do mapa.
Variaveis
tamanhodocLargura e altura do navegador após a inicialização do mapa
temaAtivoIndica o último tema que foi ativado no mapa
contadorAtualizaEssa variável é um contador utilizado para indicar quantos processos estão ativos e que irão executar o redesenho do mapa.
Functions
criaCria e configura a visualização do mapa, definindo posicionamentos, tamanho etc
iniciaInicializa o mapa
aposIniciarExecuta operações após o mapa ter sido posicionado na tela
atualizaAtualiza o mapa atual, altera a imagem do mapa os gadgets ativos e os parâmetros e verifica a integridade do mapa em uso (arquivo mapfile)
calculaTamanhoCalcula o tamanho do mapa atual e define alguns elementos HTML do mapa
reCalculaTamanhoRecalcula o tamanho do mapa com base nas configurações do navegador
atualizaParametrosAtualiza os valores da variável i3GEO.parametros
i3GEOFEsta classe recebe os métodos sob demanda por meio da injeção de javascripts por meio de script tag.

i3GEO

A classe i3GEO possuí os métodos de criação e atualização do mapa.  Todas as subclasses são baseadas em i3GEO, por exemplo, para criar uma janela flutuante sobre o mapa, utilize i3GEO.janela.cria()

Para inicializar o mapa, utilize i3GEO.inicia() e para atualizar o mapa, utilize i3GEO.atualiza().  Após terminado o processo de inicialização, pode-se executar uma função de ajuste.  Essa função deve ser definida em i3GEO.finaliza, por exemplo i3GEO.finaliza = “funcaoDeAjuste()” ou i3GEO.finaliza = function(){}

Ao inicializar ou atualizar o i3Geo, é feita uma chamada em AJAX para a obtenção dos parâmetros necessários ao funcionamento do mapa.  Esses parâmetros são armazenados na variável i3GEO.parametros

Nessa classe estão disponíveis variáveis internas utilizadas em várias funções, como i3GEO.temaAtivo

Summary
Propriedades
parametrosParâmetros obtidos do mapa atual.
scrollerWidthLargura da barra de rolagem do navegador.
finalizaFunção que será executada após a inicialização do mapa.
Variaveis
tamanhodocLargura e altura do navegador após a inicialização do mapa
temaAtivoIndica o último tema que foi ativado no mapa
contadorAtualizaEssa variável é um contador utilizado para indicar quantos processos estão ativos e que irão executar o redesenho do mapa.
Functions
criaCria e configura a visualização do mapa, definindo posicionamentos, tamanho etc
iniciaInicializa o mapa
aposIniciarExecuta operações após o mapa ter sido posicionado na tela
atualizaAtualiza o mapa atual, altera a imagem do mapa os gadgets ativos e os parâmetros e verifica a integridade do mapa em uso (arquivo mapfile)
calculaTamanhoCalcula o tamanho do mapa atual e define alguns elementos HTML do mapa
reCalculaTamanhoRecalcula o tamanho do mapa com base nas configurações do navegador
atualizaParametrosAtualiza os valores da variável i3GEO.parametros

Propriedades

parametros

Parâmetros obtidos do mapa atual.  Os parâmetros são fornecidos pelos programas PHP de redesenho e criação do mapa e atualizados sempre que o mapa é alterado.

Exemplos

alert(i3GEO.parametros.mapexten); i3GEO.parametros.mapscale = 25000;

Parametros

mapexten {String}extensão geográfica do mapa no formato xmin ymin xmax ymax
mapscale {Numeric}denominador da escala do mapa
mapres {Numeric}resolução da imagem do mapa em DPI
pixelsize {Numeric}tamanho em unidades de terreno dos pixels da imagem
mapfile {String}nome do mapfile atualmente em uso
cgi {String}endereço do executável do mapserver no servidor acessível pela URL
extentTotal {String}extensão do mapa na inicialização
mapimagem {String}URL da imagem que compõe o mapa
geoip {sim|nao}indica se o geoip está instalado
listavisual {String}lista de visuais disponíveis
utilizacgi {sim|nao}indica se o mapa atual está no modo CGI
versaoms {String}versão do Mapserver instalado no servidor (maior)
versaomscompleta {String}versão do Mapserver instalado no servidor (completa)
mensagens {String}mensagens para uso no letreiro
w {Integer}largura do mapa atual
h {Integer}altura do mapa atual
locsistemas {String}endereço do xml com a lista de sistemas adicionais
locidentifica {String}endereço do xml com a lista de sistemas de identificação
r {sim|nao}indica se o software R está instalado no servidor
locmapas {String}endereço do xml com a lista de mapas
extentref {String}extensão geográfica do mapa de referência
celularef {Numeric}tamanho do pixel do mapa de referência em unidades do terreno
kmlurl {String}url de um arquivo kml que será inserido no mapa.  Válido apenas na interface Google Maps
mensagemInicia {String}mensagem definida em ms_configura.php indicando a versão atual do i3Geo.
interfacePadrao {String}interface padrão definida em ms_configura
embedLegenda {String}sim|nao indica se na inicialização a legenda foi inserida no conteúdo do mapa ou não
celularef {Numeric}tamanho da célula do mapa de referência
autenticadoopenid {sim|nao}indica se o usuário foi autenticado em alguma rede social
editor {sim|nao}indica se o usuário atual é um editor (administrador)

scrollerWidth

Largura da barra de rolagem do navegador.  Se for igual a “”, a largura será calculada automaticamente.

O valor “scrollerWidth” será utilizado no calculo da largura do mapa.  Se vc não quer diminuir o tamanho do mapa, subtraindo a largura da barra de rolagem, defina scrollerWidth = 0

Tipo

{numérico}

Default

{“”}

finaliza

Função que será executada após a inicialização do mapa.  Pode ser uma string também, que será avaliada com “eval”.

Tipo

{string}

Default

{“”}

Variaveis

tamanhodoc

Largura e altura do navegador após a inicialização do mapa

É utilizado como um parâmetro para verificar se o mapa foi ou não redimensionado pelo usuário de forma consistente

Type

{array}

temaAtivo

Indica o último tema que foi ativado no mapa

Permite que ao se passar de uma ferramenta para outra, os menus reflitam a última escolha.

Tipo

{string}

Default

{“”}

contadorAtualiza

Essa variável é um contador utilizado para indicar quantos processos estão ativos e que irão executar o redesenho do mapa.  O mapa só é atualizado quando o contador for menor que 1.  Esse contador é utilizado no método i3GEO.atualiza O contador é necessário para evitar chamadas desnecessárias à função de redesenho do mapa.

Tipo

{string}

Functions

cria

cria:function()

Cria e configura a visualização do mapa, definindo posicionamentos, tamanho etc

Após as definições básicas, é executado o programa i3GEO.Interface.cria que irá realizar as operações conforme a interface atualmente em uso.  A interface é definida em i3GEO.Interface.ATUAL

Veja i3GEO.Interface

inicia

inicia:function(retorno)

Inicializa o mapa

Verifica se o mapa apresenta algum problema no processamento no lado do servidor e realiza as operações de tentativa de recuperação, se for o caso

No início do processo é executada a função <i3GEOmantemCompatibilidade> para realizar as operações necessárias de manutenção de compatibilidade da versão atual para as anteriores

A inicialização é baseada em i3GEO.php.inicia cujo retorno é utilizado para definir a variável i3GEO.parametros

Após a inicialização é executado i3GEO.Interface.inicia

aposIniciar

aposIniciar: function()

Executa operações após o mapa ter sido posicionado na tela

Executa também o que for definido em i3Geo.finaliza

atualiza

atualiza: function(retorno)

Atualiza o mapa atual, altera a imagem do mapa os gadgets ativos e os parâmetros e verifica a integridade do mapa em uso (arquivo mapfile)

O processo executa também a função de atualização específica da interface atual em uso, veja i3GEO.Interface.redesenha

Os seguintes gadgets são processados

i3GEO.arvoreDeCamadas.atualiza

i3GEO.arvoreDeCamadas.atualizaFarol

Os eventos definidos em i3GEO.eventos.navegaMapa são executados

Parametro

retorno {String}string com os parâmetros do novo mapa.  Se retorno não for especificado ou se for vazio, será feita uma chamada em ajax para sua obtenção.  O resultado dessa chamada é armazenada em i3GEO.parametros

calculaTamanho

calculaTamanho: function()

Calcula o tamanho do mapa atual e define alguns elementos HTML do mapa

Return

{array}[w,h]

reCalculaTamanho

reCalculaTamanho: function()

Recalcula o tamanho do mapa com base nas configurações do navegador

Return

{array}[w,h]

atualizaParametros

atualizaParametros:function(variaveis)

Atualiza os valores da variável i3GEO.parametros

Parametro

variaveis {obj}objeto JSON com os valores.  Tipicamente é obtido do servidor por meio de uma chamada AJAX

i3GEOF

Esta classe recebe os métodos sob demanda por meio da injeção de javascripts por meio de script tag.

cria:function()
Cria e configura a visualização do mapa, definindo posicionamentos, tamanho etc
inicia:function(retorno)
Inicializa o mapa
aposIniciar: function()
Executa operações após o mapa ter sido posicionado na tela
atualiza: function(retorno)
Atualiza o mapa atual, altera a imagem do mapa os gadgets ativos e os parâmetros e verifica a integridade do mapa em uso (arquivo mapfile)
calculaTamanho: function()
Calcula o tamanho do mapa atual e define alguns elementos HTML do mapa
reCalculaTamanho: function()
Recalcula o tamanho do mapa com base nas configurações do navegador
atualizaParametros:function(variaveis)
Atualiza os valores da variável i3GEO.parametros
cria: function(w,
h)
Cria ou altera os elementos HTML necessários para a interface
Interface utilizada na criação e controle do mapa.
Funcoes que controlam o comportamento específico de determinadas interfaces
inicia: function(funcao,
embedLegenda,
w,
h)
INICIA
Parâmetros obtidos do mapa atual.
inicia: function(w,
h)
Inicia a interface
redesenha: function()
Aplica o método redesenha da interface atual.
atualiza: function(temas,
forca)
Atualiza a árvore de camadas.
atualizaFarol: function(mapscale)
Atualiza o farol de cada tema.
navegaMapa: function()
Executa as funções armazenadas em NAVEGAMAPA, ou seja, operações executadas quando o mapa tem sua extensão geográfica alterada.