Utilitários

i3GEO.util

Funções de uso geral

Arquivo

i3geo/classesjs/classe_util.js

Licença

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@gmai.nosp@m.l.com

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 ADEQUACAO 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
Utilitáriosi3GEO.util
Functions
$iObtem um elemento DOM a partir de seu id
Array.remove()Extende os metodos de um objeto Array, permitindo remover um elemento.
escapeURLConverte uma string em uma url valida
insereCookieCria um novo cookie.
pegaCookiePega o valor de um cookie.
listaChavesLista as chaves de um objeto que forem true.
listaTodasChavesLista as chaves de um objeto
arvoreCria uma arvore com base em um objeto contendo as propriedades.
removeAcentosRemove acentos de uma palavra ou frase
protocoloObtem o protocolo utilizado na URL atual
pegaPosicaoObjetoRetorna a posicao x,y de um objeto em relacao a tela do navegador
pegaElementoPaiPega o elemento pai de um elemento clicado
mudaCursorAltera o cursor do ponteiro do mouse.
criaPinCria um elemento imagem na pagina atual.
posicionaImagemNoMapaPosiciona uma imagem no mapa no local onde o mouse esta posicionado sobre o mapa
escondePinEsconde os PINS com IDs registrados em i3GEO.util.PINS
$im ou nome curto $imRetorna o caminho correto de uma imagem.
$top ou nome curto $topMuda a posicao (superior) de um objeto tanto no IE como no Firefox.
$left ou nome curto $leftMuda a posicao (esquerda) de um objeto tanto no IE como no Firefox.
insereMarcaInsere ou remove pontos no mapa.
criaInsere um ponto no mapa
adicionaSHPInclui um arquivo shapefile no mapa atual como uma nova camada
abreCorAbre a janela flutuante para escolha de uma cor
ajaxhttpCria o objeto XMLHttpRequest para uso com funcoes proprias de chamada em ajax
ajaxexecASXmlExecuta uma chamada ajax no modo assincrono retornando o resultado em XML.
apareceAplica efeito de aparecimento suave de um objeto
desapareceAplica efeito de desaparecimento suave de um objeto
wkt2extCalcula a extensao geografica de uma geometria fornecida no formato WKT
sortNumberOrdena um array contendo numeros.
getScrollerWidthCalcula o tamanho da barra de rolagem, permitindo calcular o tamanho correto da area util do navegador
getScrollHeightCalcula o tamanho vertical do browser
scriptTagInsere um javascript no documento HTML
removeScriptTagRemove um javascript no documento HTML
verificaScriptTagVerifica se um javascript esta carregado no documento.
mensagemAjudaFormata uma mensagem de texto com icone de ?
randomRGBGera uma cor RGB de forma aleatoria
rgb2hexConverte uma cor RGB para HEX
comboTemasCria um combo (caixa de selesao) com a lista de temas existentes no mapa e de determinado tipo
checkComboCria uma lista com check box generico baseado em um objeto com os dados
checkTemasCria uma lista com check box de temas existentes no mapa e de determinado tipo
comboItensCria um combo (caixa de selecao) com a lista de itens de um layer
comboValoresItemCria uma caixa de selecao com os valores de um item de um tema
comboFontesCria um combo (caixa de selecao) com a lista fontes de texto disponiveis
comboSimNaoCria uma caixa de selecao com as palavras sim e nao
checkItensEditaveisCria uma lista de elementos do tipo input com textos editaveis contendo a lista de itens de um tema.
radioEpsgCria uma lista de codigos EPSG para o usuario escolher um deles.
proximoAnteriorCria uma sequencia de opcoes com botao de anterior e proximo.
dialogoFerramentaAtalho para abrir a janela de dialogo de uma ferramenta padrao
intersectaBoxVerifica se um retangulo esta dentro de outro retangulo
abreColourRampAbre a janela flutuante para escolha de um degrade de cores
removeChildRemove um filho de um elemento DOM
defineValorAplica um valor a uma propriedade de um elemento
in_arrayProcura a ocorrencia de um elemento em um array
multiStepImplementa a tecnica de particionamento para execussao de funcoes no modo assincrono
tamanhoBrowserCalcula o tamanho da area util do navegador considerando-se as propriedades nativas do objeto window
detectaTabletVerifica se esta em uso um dispositivo do tipo tablet
detectaMobileVerifica se esta em uso um dispositivo do tipo movel
calculaDPICalcula o valor de DPI do monitor.
ajustaDocTypeAjusta o DOCTYPE do HTML para funcionar com CSS3
versaoNavegadorRetorna algumas versoes de navegador
decimalPlacesArredonda um numero
ajaxGetFaz uma requisição ao servidor por meio de AJAX
pegaDadosLocalObtem um valor armazenado localmente
limpaDadosLocalLimpa os dados locais
gravaDadosLocalGrava um valor localmente
extGeo2OSMConverte string xmin ymin xmax ymax de geo para a projecao OSM
extGeo2OSMConverte string xmin ymin xmax ymax de geo para a projecao OSM
navegadorDirAbre o navegador de arquivos localizados no servidor
navegadorPostgisAbre o navegador de de tabelas existentes no banco de dados Postgis

Functions

$i

$i = function(id)

Obtem um elemento DOM a partir de seu id

Parametros

id{String} ID do elemento.

Returns

{Object} Objeto.

Array.remove()

Extende os metodos de um objeto Array, permitindo remover um elemento.

escapeURL

escapeURL: function(sUrl)

Converte uma string em uma url valida

Parametros

sUrl {String}url que sera convertida

Return

Tipo

{String}

insereCookie

insereCookie: function(nome,
valor,
expira)

Cria um novo cookie.

Parametros

nome{String} Nome do cookie.
valor{String} Valor do cookie
expira{numerico} Dias que levara para expirar

pegaCookie

pegaCookie: function(nome)

Pega o valor de um cookie.

Parametros

nome{String} Nome do cookie.

Returns

(String)valor do cookie

listaChaves

listaChaves: function (obj)

Lista as chaves de um objeto que forem true.

Parametros

obj{Object}

Return

(Array)array com as chaves.

listaTodasChaves

listaTodasChaves: function (obj)

Lista as chaves de um objeto

Parametros

obj{Object}

Return

(Array)array com as chaves.

arvore

arvore: function(titulo,
onde,
obj)

Cria uma arvore com base em um objeto contendo as propriedades.

No objeto com as propriedades, se “url” for igual a “”, sera incluido o texto original definido em “text”.

Caso contrario, o valor de “text” sera traduzido com $trad().  Nesse caso, utilize em “text” o codigo definido em dicionario.js

Parametros

titulo{String} cabecalho da arvore
onde{String} nome do id doelemento que contera a arvore
obj{Object} objeto contendo os parametros, exemplo

g_listaPropriedades = {

”propriedades”: [

{ text: “p2”, url: “javascript:tipoimagem()” }

]}

removeAcentos

removeAcentos: function(palavra)

Remove acentos de uma palavra ou frase

Parametros

palavra {String}

Return

{String}

protocolo

protocolo: function()

Obtem o protocolo utilizado na URL atual

Return

{String}protocolo

pegaPosicaoObjeto

pegaPosicaoObjeto: function(obj)

Retorna a posicao x,y de um objeto em relacao a tela do navegador

Parametros

obj {Object}objeto dom

Return

{Array}array com a posicao [x,y]

pegaElementoPai

pegaElementoPai: function(e)

Pega o elemento pai de um elemento clicado

Parametros

eelemento do DOM.

Return

{Node}objeto DOM

mudaCursor

mudaCursor: function(cursores,
tipo,
idobjeto,
locaplic)

Altera o cursor do ponteiro do mouse.

Os cursores disponiveis sao definidos por default em classe_configura.js

Exemplo i3GEO.util.mudaCursor(“”,”crosshair”)

Parametros

cursores {i3GEO.configura.cursores}objeto JSON com as URIs de cada cursor (veja i3GEO.configura.cursores)
tipo {String}tipo de cursor disponivel em cursores
idobjeto {String}id do objeto que tera o estilo alterado para o cursor desejado
locaplic {String}onde esta instalado o i3Geo

criaPin

criaPin: function(id,
imagem,
w,
h,
mouseover)

Cria um elemento imagem na pagina atual.

Parametros

id {String}(opcional) id do elemento que sera criado.  Por default, sera ‘boxpin’
imagem {URL}(opcional) endereco da imagem
w {String}(opcional) largura da imagem
h {String}(opcional) altura da imagem
mouseoverfuncao que sera executada no evento mouseover

posicionaImagemNoMapa

posicionaImagemNoMapa: function(id,
x,
y)

Posiciona uma imagem no mapa no local onde o mouse esta posicionado sobre o mapa

Parametros

id {string}id do elemento que sera posicionado
x {posicao do pixel}se nao for definida ou for vazia, sera utilizado o valor de objposicaocursor.telax
y {posicao do pixel}se nao for definida ou for vazia, sera utilizado o valor de objposicaocursor.telay

Return

array[top,left]valores em pixel da posicao calculada da imagem

escondePin

escondePin: function()

Esconde os PINS com IDs registrados em i3GEO.util.PINS

Os ids sao criados pela funcao criaPin

$im ou nome curto $im

Retorna o caminho correto de uma imagem.

Exemplo: $im(“imagem.png”)

Parametros

g {String}nome da imagem

Retorno

stringcaminho para a imagem

$top ou nome curto $top

Muda a posicao (superior) de um objeto tanto no IE como no Firefox.

Exemplo: $top(“imagem”,100)

Parametros

ididentificador do objeto
valorposicao em relacao ao topo.

$left ou nome curto $left

Muda a posicao (esquerda) de um objeto tanto no IE como no Firefox.

Exemplo: $left(“imagem”,100)

Parametros

ididentificador do objeto
valorposicao em relacao a esquerda.

insereMarca

insereMarca:

Insere ou remove pontos no mapa.

cria

cria:function(xi,
yi,
funcaoOnclick,
container,
texto,
srci,
w,
h)

Insere um ponto no mapa

Os pontos sao inseridos em um contaier de pontos e mostrados temporariamente

Parametros

xi {Numeric}coordenada x no mapa (imagem).
yi {Numeric}coordenada y no mapa (imagem).
funcaoOnclick {String}funcao que sera executada quando a marca for clicada, se for “”, o container sera esvaziado ao ser clicado na marca
container {String}id do container que recebera os pontos.  Se nao existir um elemento com esse ID, sera criado um novo DIV.  No caso da interface google Earth, e utilizado na definicao do nome da marca (setname).
texto {String}(apenas para interface Google Earth) nome que sera adicionado junto da marca
srci {string}(opcional) endereco da imagem (sera incluido em SRC do tag IMG)
w {numeric}(opcional) largura
h {numeric}(opcional) altura

adicionaSHP

adicionaSHP: function(path)

Inclui um arquivo shapefile no mapa atual como uma nova camada

Parametros

path {String}caminho completo do shapefile

abreCor

abreCor: function(janelaid,
elemento,
tipo)

Abre a janela flutuante para escolha de uma cor

Parametros

janelaid {String}id do conteudo da janela flutuante que chamou a funcao.  Pode ser “” caso elemento exista em document
elemento {String}id do elemento que recebera os valores da cor selecionada
tipo {String}opcional pode ser definido como rgb,rgbSep (separado por espacos em branco) ou hex indicando o tipo de retorno da cor

ajaxhttp

ajaxhttp: function()

Cria o objeto XMLHttpRequest para uso com funcoes proprias de chamada em ajax

O uso dessa funcao nao e recomendado.  De preferencia para uso da chamada ajax via YUI

Return

{XMLHttpRequest}

ajaxexecASXml

ajaxexecASXml: function(programa,
funcao)

Executa uma chamada ajax no modo assincrono retornando o resultado em XML.

Parametros

programa {String}URL do programa que sera executado no servidor.
funcao {funcao}funcao que tratara o resultado.

Returns

O resultado em um objeto DOM.  Se o retorno contiver a palavra “Erro”, e gerado um alert.

aparece

aparece: function(id,
tempo,
intervalo)

Aplica efeito de aparecimento suave de um objeto

Parametros

id {String}id do objeto
tempo {Integer}tempo em milesegundos que levara o efeito
intervalo {Integer}intervalo entre uma imagem e outra

desaparece

desaparece: function(id,
tempo,
intervalo,
removeobj)

Aplica efeito de desaparecimento suave de um objeto

Parametros

id {String}id do objeto
tempo {Integer}tempo em milesegundos que levara o efeito
intervalo {Integer}intervalo entre uma imagem e outra
removeobj {Boolean}remove ou nao o objeto no final

wkt2ext

wkt2ext:function(wkt,
tipo)

Calcula a extensao geografica de uma geometria fornecida no formato WKT

Parametros

wkt {String}geometria no formato wkt
tipo {String}tipo de geometria (polygon,point,line)

Return

{String}extensao geografica (xmin ymin xmax ymax)

sortNumber

sortNumber: function(a,
b)

Ordena um array contendo numeros.  Deve ser usado como parametro do metodo “sort”, exemplo

y.sort(i3GEO.util.sortNumber), onde y e um array de numeros

getScrollerWidth

getScrollerWidth: function()

Calcula o tamanho da barra de rolagem, permitindo calcular o tamanho correto da area util do navegador

http://www.fleegix.org/articles/2006-05-30-getting-the-scrollbar-width-in-pixels

Return

largura

getScrollHeight

getScrollHeight: function()

Calcula o tamanho vertical do browser

http://w3schools.invisionzone.com/index.php?showtopic=45977

Return

altura

scriptTag

scriptTag: function(js,
ini,
id,
aguarde)

Insere um javascript no documento HTML

Parametros

js {String}endereco do JS
ini {String} ou {function}funcao que sera executada ao ser carregado o script (pode ser “”)
idid do elemento script que sera criado
aguarde {boolean}mostra ou nao a janela de aguarde

removeScriptTag

removeScriptTag: function(id)

Remove um javascript no documento HTML

Parametros

idid do elemento script que sera removido

verificaScriptTag

verificaScriptTag: function(texto)

Verifica se um javascript esta carregado no documento.

util para verificar se existe alguma ferramenta ativa ao procurar por i3GEOF.

Parametros

textonome do javascript

Retorno

{boolean}

mensagemAjuda

mensagemAjuda: function(onde,
texto)

Formata uma mensagem de texto com icone de ?

Parametros

onde {String}id do elemento que recebera a mensagem
texto {String}texto da mensagem

randomRGB

randomRGB: function()

Gera uma cor RGB de forma aleatoria

Return

{String}r,g,b

rgb2hex

rgb2hex: function(str)

Converte uma cor RGB para HEX

Parametro

str {String}r,g,b

Return

{String}

comboTemas

comboTemas: function(id,
funcao,
onde,
nome,
multiplo,
tipoCombo,
estilo,
yui)

Cria um combo (caixa de selesao) com a lista de temas existentes no mapa e de determinado tipo

Parametros

id {String}id do elemento select que sera criado
funcao {Function}funcao que sera executada ao terminar a montagem do combo.  Essa funcao recebera como parametros um Array associativo contendo os dados em HTML gerados e o tipo de resultado.  P.ex.: {dados:comboTemas,tipo:”dados”} tipo sera uma string que pode ser “dados”|”mensagem”|”erro” indicando o tipo de retorno.
onde {String}id do elemento HTML que recebera o combo. e utilizado apenas para inserir uma mensagem de aguarde.
nome {String}valor que sera incluido no parametro “name” do elemento “select”.
multiplo {Booleano}indica se o combo permite selecoes multiplas
tipoCombo {String}Tipo de temas que serao incluidos no combo ligados|selecionados|raster|pontosSelecionados|pontos|linhaDoTempo
estilo {string}estilo (css) que sera aplicado ao combo
yui {boolean}(opcional) indica se o combo sera montado com o estilo YUI (menu)

checkCombo

checkCombo: function(id,
nomes,
valores,
estilo,
funcaoclick,
ids,
idschecked)

Cria uma lista com check box generico baseado em um objeto com os dados

Parametros

id {String}id do elemento select que sera criado
nomes {Array}array com os nomes
valores {Array}array com os valores
obj {objeto}objeto contendo name e value, exemplo {“nome”:”a”,”valor”:”1”}
estilo {string}string inserida no item style do container do combo
funcaoclick {string}string inserida no evento onclick

ids (opcional) array com os ids de cada checkbox

idschecked (opcional) array com os ids dos elementos marcados como selecionados

checkTemas

checkTemas: function(id,
funcao,
onde,
nome,
tipoLista,
prefixo,
size)

Cria uma lista com check box de temas existentes no mapa e de determinado tipo

Parametros

id {String}id do elemento select que sera criado
funcao {Function}funcao que sera executada ao terminar a montagem do combo.  Essa funcao recebera como parametros um Array associativo contendo os dados em HTML gerados e o tipo de resultado.  P.ex.: {dados:comboTemas,tipo:”dados”} tipo sera uma string que pode ser “dados”|”mensagem”|”erro” indicando o tipo de retorno.
onde {String}id do elemento HTML que recebera o combo. e utilizado apenas para inserir uma mensagem de aguarde.
nome {String}valor que sera incluido no parametro “name” do elemento “select”.
tipoLista {String}Tipo de temas que serao incluidos na lista ligados|selecionados|raster|pontosSelecionados|pontos|polraster
prefixo {string}Prefixo que sera usado no id de cada elemento
size {numeric}tamanho dos elementos input editaveis

comboItens

comboItens: function(id,
tema,
funcao,
onde,
nome,
alias)

Cria um combo (caixa de selecao) com a lista de itens de um layer

Parametros

id {String}id do elemento select que sera criado
tema {String}codigo do tema (layer)
funcao {Function}funcao que sera executada ao terminar a montagem do combo.  Essa funcao recebera como parametros um Array associativo contendo os dados em HTML gerados e o tipo de resultado.  P.ex.: {dados:comboTemas,tipo:”dados”} tipo sera uma string que pode ser “dados”|”mensagem”|”erro” indicando o tipo de retorno.
onde {String}id do elemento HTML que recebera o combo. e utilizado apenas para inserir uma mensagem de aguarde.
nome {String}valor que sera incluido no parametro “name” do elemento “select”.

alias {string} sim|nao indica se para os nomes dos itens sera usado o alias (default= sim)

comboValoresItem

comboValoresItem: function(id,
tema,
itemTema,
funcao,
onde)

Cria uma caixa de selecao com os valores de um item de um tema

Parametros

id {String}id do elemento select que sera criado
tema {String}codigo do tema (layer)
itemTema {String}nome do item
funcao {Function}funcao que sera executada ao terminar a montagem do combo.  Essa funcao recebera como parametros um Array associativo contendo os dados em HTML gerados e o tipo de resultado.  P.ex.: {dados:comboTemas,tipo:”dados”} tipo sera uma string que pode ser “dados”|”mensagem”|”erro” indicando o tipo de retorno.
onde {String}id do elemento HTML que recebera o combo. e utilizado apenas para inserir uma mensagem de aguarde.

comboFontes

comboFontes: function(id,
onde)

Cria um combo (caixa de selecao) com a lista fontes de texto disponiveis

Parametros

id {String}id do elemento select que sera criado
onde {String}id do elemento HTML que recebera o combo. e utilizado apenas para inserir uma mensagem de aguarde.

comboSimNao

comboSimNao: function(id,
selecionado)

Cria uma caixa de selecao com as palavras sim e nao

Parametros

id [String}id do elemento select que sera criado
selecionado {string}qual valor estara selecionado sim|nao

Return

{string}

checkItensEditaveis

checkItensEditaveis: function(tema,
funcao,
onde,
size,
prefixo,
ordenacao)

Cria uma lista de elementos do tipo input com textos editaveis contendo a lista de itens de um tema.

Parametros

tema {string}codigo do layer existente no mapa
funcao {function}funcao que sera executada para montar a lista.  Essa funcao recebera como parametro um array do tipo {dados:ins,tipo:”dados”} onde ins e um array com as linhas e tipo e o tipo de resultado, que pode ser “dados”|”erro”
onde {string}id do elemento que recebera a mensagem de aguarde
size {numeric}tamanho dos elementos input editaveis
prefixo {string}Prefixo que sera usado no id de cada elemento
ordenacao {sim|nao}Indica se a colouna que permite indicar a ordem das escolhas sera ou nao incluida

radioEpsg

radioEpsg: function (funcao,
onde,
prefixo)

Cria uma lista de codigos EPSG para o usuario escolher um deles.

A lista e mostrada como uma serie de elementos do tipo radio com “name” igual ao prefixo mais a palavra EPSG

Parametros

funcao {function}funcao que sera executada para montar a lista.  Essa funcao recebera como parametro um array do tipo {dados:ins,tipo:”dados”} onde ins e um array com as linhas e tipo e o tipo de resultado, que pode ser “dados”|”erro”
onde {string}id do elemento que recebera a mensagem de aguarde
prefixo {string}Prefixo que sera usado no name de cada elemento

proximoAnterior

proximoAnterior: function(anterior,
proxima,
texto,
idatual,
container,
mantem,
onde)

Cria uma sequencia de opcoes com botao de anterior e proximo. e utilizado principalmente pelas ferramentas de analise espacial, onde o usuario segue uma sequencia de operacoes de escolha de parametros.

Parametros

anterior {String}nome da funcao que e executada para voltar a tela anterior.  Pode ser “”.
proxima {String}nome da funcao que e executada para avancar para a proxima tela.  Pode ser “”.
texto {String}texto que compora a tela atual
idatual {String}id do elemento DIV que sera criado para inserir o conteudo definido em ‘texto”
container {String}id do elemento DIV ja existente que recebera as telas (texto).
mantem {boolean}mantem ou nao no container o texto ja produzido

onde {string} (opcional) id onde os botoes serao colocados

dialogoFerramenta

dialogoFerramenta: function(mensagem,
dir,
nome,
nomejs,
nomefuncao)

Atalho para abrir a janela de dialogo de uma ferramenta padrao

O script adicionado tera como ID “i3GEOF.”+nome+”_script”

Se a funcao de inicializacao nao for definida em nomefuncao, sera utilizado “i3GEOF.”+nome+”.criaJanelaFlutuante();”

Se o script ja estiver carregado, a funcao de inicializacao sera executada

Parametros

mensagem {string}mensagem que sera enviada ao console no caso do Firefox
dir {string}diretorio em i3geo/ferramentas
nome {string}nome da classe da ferramenta
nomejs {string}nome do arquivo javascript
nomefuncao {string} ou {function}nome da funcao do javascript carregado que sera executado apos a carga, exemplo: i3GEOF.locregiao.abreComFiltro()

intersectaBox

intersectaBox: function(box1,
box2)

Verifica se um retangulo esta dentro de outro retangulo

Parametros

box1retangulo que sera verificado
box2retangulo de referencia

Return

boolean

abreColourRamp

abreColourRamp: function(janelaid,
elemento,
ncores)

Abre a janela flutuante para escolha de um degrade de cores

Parametros

janelaid {String}id do conteudo da janela flutuante que chamou a funcao.  Pode ser “” caso o ‘elemento’ exista em window.document
elemento {String}id do elemento HTML (um input por exemplo) que recebera os valores da cor selecionada.  O evento ‘onchange’ desse elemento sera acionado quando o botao aplicar for clicado
ncores {numerico}numero de cores default ao abrir o seletor de cores

removeChild

removeChild: function(id,
el)

Remove um filho de um elemento DOM

Pode-se especificar o pai e o filho a ser removido ou simplesmente o ID do no que se quer remover

Parametros

id {string}id do elemento que sera removido (filho)
el {node}(opcional) node (DOM) que contem o elemento.  Se nao for definido, sera obtido o parent de id

defineValor

defineValor: function(id,
prop,
valor)

Aplica um valor a uma propriedade de um elemento

Parametros

id {string}id do elemento que sera removido (filho)
prop {string}propriedade que recebera o valor
valor {string}valor que sera aplicado

in_array

in_array: function(x,
matriz)

Procura a ocorrencia de um elemento em um array

Parametros

xo que sera procurado
matrizarray

Return

{boolean}

multiStep

multiStep: function(steps,
args,
callback)

Implementa a tecnica de particionamento para execussao de funcoes no modo assincrono

Conforme pagina 144 do livro “Javascript de alto desempenho, Nicholas Zakas

Parametros

steps {array}funcoes que serao executadas
args {array}array de arrays com os argumentos de cada funcao
callback {function}funcao que sera executada ao terminar os processos

tamanhoBrowser

tamanhoBrowser: function()

Calcula o tamanho da area util do navegador considerando-se as propriedades nativas do objeto window

Return

{[w,h]}

detectaTablet

detectaTablet: function()

Verifica se esta em uso um dispositivo do tipo tablet

Se for detectado, utiliza a interface alternativa definida em i3GEO.Interface.ALTTABLET

A deteccao e feita com base em i3geo/pacotes/mobileesp/mdetect.js

detectaMobile

detectaMobile: function()

Verifica se esta em uso um dispositivo do tipo movel

Se for detectado, utiliza a interface alternativa definida em i3GEO.Interface.ALTTABLET

A deteccao e feita com base em i3geo/pacotes/mobileesp/mdetect.js

calculaDPI

calculaDPI: function()

Calcula o valor de DPI do monitor.

O valor e aproximado e utilizado principalmente na interface OpenLayers

ajustaDocType

ajustaDocType: function()

Ajusta o DOCTYPE do HTML para funcionar com CSS3

versaoNavegador

versaoNavegador: function()

Retorna algumas versoes de navegador

decimalPlaces

decimalPlaces: function(float,
length)

Arredonda um numero

Obtido de

http://stackoverflow.com/questions/4868556/how-do-i-stop-parsefloat-from-stripping-zeroes-to-right-of-decimal/4868718#4868718

Parameters

float {numer}numero que sera arredondado
length {number}numero de casas decimais

ajaxGet

ajaxGet: function(sUrl,
funcaoRetorno)

Faz uma requisição ao servidor por meio de AJAX

A função de processamento do resultado irá receber um objeto JSON como parâmetro

Exemplo

i3GEO.util.ajaxGet(“http://localhost/teste.php”,function(retorno){alert(retorno);})

Parametros

sUrlurl que será requisitada
funcaoRetornofunção que irá processar o resultado

pegaDadosLocal

pegaDadosLocal: function(item)

Obtem um valor armazenado localmente

Parametro

item {string}key a ser obtido

Return: array

limpaDadosLocal

limpaDadosLocal: function(item)

Limpa os dados locais

Parametro

item {string}key a ser limpo

gravaDadosLocal

gravaDadosLocal: function(item,
valor)

Grava um valor localmente

Parametro

item {string}key a ser gravado
valor {string}valor a ser gravado

extGeo2OSM

extGeo2OSM: function(ext)

Converte string xmin ymin xmax ymax de geo para a projecao OSM

extGeo2OSM

Converte string xmin ymin xmax ymax de geo para a projecao OSM

navegadorDir

navegadorDir: function(obj,
listaShp,
listaImg,
listaFig)

Abre o navegador de arquivos localizados no servidor

Parametro

objobjeto input que recebera de volta o valor do arquivo escolhido
listaShp {boolean}considera os arquivos shapefile
listaImg {boolean}considera os arquivos de imagem (geo)

listaFig {boolean} considera os arquivos de tipo figura (png e jpg)

navegadorPostgis

navegadorPostgis: function(obj,
conexao,
tipo)

Abre o navegador de de tabelas existentes no banco de dados Postgis

Parametro

objobjeto input que recebera de volta o valor do arquivo escolhido
conexao {numerico}codigo da conexao com o banco de dados cadastrado no sistema de metadados estatisticos
tipo {string}opcional.  Tipo de retorno esquema|tabela|sql
$i = function(id)
Obtem um elemento DOM a partir de seu id
escapeURL: function(sUrl)
Converte uma string em uma url valida
insereCookie: function(nome,
valor,
expira)
Cria um novo cookie.
pegaCookie: function(nome)
Pega o valor de um cookie.
listaChaves: function (obj)
Lista as chaves de um objeto que forem true.
listaTodasChaves: function (obj)
Lista as chaves de um objeto
arvore: function(titulo,
onde,
obj)
Cria uma arvore com base em um objeto contendo as propriedades.
removeAcentos: function(palavra)
Remove acentos de uma palavra ou frase
protocolo: function()
Obtem o protocolo utilizado na URL atual
pegaPosicaoObjeto: function(obj)
Retorna a posicao x,y de um objeto em relacao a tela do navegador
pegaElementoPai: function(e)
Pega o elemento pai de um elemento clicado
mudaCursor: function(cursores,
tipo,
idobjeto,
locaplic)
Altera o cursor do ponteiro do mouse.
criaPin: function(id,
imagem,
w,
h,
mouseover)
Cria um elemento imagem na pagina atual.
posicionaImagemNoMapa: function(id,
x,
y)
Posiciona uma imagem no mapa no local onde o mouse esta posicionado sobre o mapa
escondePin: function()
Esconde os PINS com IDs registrados em i3GEO.util.PINS
insereMarca:
Insere ou remove pontos no mapa.
cria:function(xi,
yi,
funcaoOnclick,
container,
texto,
srci,
w,
h)
Insere um ponto no mapa
adicionaSHP: function(path)
Inclui um arquivo shapefile no mapa atual como uma nova camada
abreCor: function(janelaid,
elemento,
tipo)
Abre a janela flutuante para escolha de uma cor
ajaxhttp: function()
Cria o objeto XMLHttpRequest para uso com funcoes proprias de chamada em ajax
ajaxexecASXml: function(programa,
funcao)
Executa uma chamada ajax no modo assincrono retornando o resultado em XML.
aparece: function(id,
tempo,
intervalo)
Aplica efeito de aparecimento suave de um objeto
desaparece: function(id,
tempo,
intervalo,
removeobj)
Aplica efeito de desaparecimento suave de um objeto
wkt2ext:function(wkt,
tipo)
Calcula a extensao geografica de uma geometria fornecida no formato WKT
sortNumber: function(a,
b)
Ordena um array contendo numeros.
getScrollerWidth: function()
Calcula o tamanho da barra de rolagem, permitindo calcular o tamanho correto da area util do navegador
getScrollHeight: function()
Calcula o tamanho vertical do browser
scriptTag: function(js,
ini,
id,
aguarde)
Insere um javascript no documento HTML
removeScriptTag: function(id)
Remove um javascript no documento HTML
verificaScriptTag: function(texto)
Verifica se um javascript esta carregado no documento.
mensagemAjuda: function(onde,
texto)
Formata uma mensagem de texto com icone de ?
randomRGB: function()
Gera uma cor RGB de forma aleatoria
rgb2hex: function(str)
Converte uma cor RGB para HEX
comboTemas: function(id,
funcao,
onde,
nome,
multiplo,
tipoCombo,
estilo,
yui)
Cria um combo (caixa de selesao) com a lista de temas existentes no mapa e de determinado tipo
checkCombo: function(id,
nomes,
valores,
estilo,
funcaoclick,
ids,
idschecked)
Cria uma lista com check box generico baseado em um objeto com os dados
checkTemas: function(id,
funcao,
onde,
nome,
tipoLista,
prefixo,
size)
Cria uma lista com check box de temas existentes no mapa e de determinado tipo
comboItens: function(id,
tema,
funcao,
onde,
nome,
alias)
Cria um combo (caixa de selecao) com a lista de itens de um layer
comboValoresItem: function(id,
tema,
itemTema,
funcao,
onde)
Cria uma caixa de selecao com os valores de um item de um tema
comboFontes: function(id,
onde)
Cria um combo (caixa de selecao) com a lista fontes de texto disponiveis
comboSimNao: function(id,
selecionado)
Cria uma caixa de selecao com as palavras sim e nao
checkItensEditaveis: function(tema,
funcao,
onde,
size,
prefixo,
ordenacao)
Cria uma lista de elementos do tipo input com textos editaveis contendo a lista de itens de um tema.
radioEpsg: function (funcao,
onde,
prefixo)
Cria uma lista de codigos EPSG para o usuario escolher um deles.
proximoAnterior: function(anterior,
proxima,
texto,
idatual,
container,
mantem,
onde)
Cria uma sequencia de opcoes com botao de anterior e proximo.
dialogoFerramenta: function(mensagem,
dir,
nome,
nomejs,
nomefuncao)
Atalho para abrir a janela de dialogo de uma ferramenta padrao
intersectaBox: function(box1,
box2)
Verifica se um retangulo esta dentro de outro retangulo
abreColourRamp: function(janelaid,
elemento,
ncores)
Abre a janela flutuante para escolha de um degrade de cores
removeChild: function(id,
el)
Remove um filho de um elemento DOM
defineValor: function(id,
prop,
valor)
Aplica um valor a uma propriedade de um elemento
in_array: function(x,
matriz)
Procura a ocorrencia de um elemento em um array
multiStep: function(steps,
args,
callback)
Implementa a tecnica de particionamento para execussao de funcoes no modo assincrono
tamanhoBrowser: function()
Calcula o tamanho da area util do navegador considerando-se as propriedades nativas do objeto window
detectaTablet: function()
Verifica se esta em uso um dispositivo do tipo tablet
detectaMobile: function()
Verifica se esta em uso um dispositivo do tipo movel
calculaDPI: function()
Calcula o valor de DPI do monitor.
ajustaDocType: function()
Ajusta o DOCTYPE do HTML para funcionar com CSS3
versaoNavegador: function()
Retorna algumas versoes de navegador
decimalPlaces: function(float,
length)
Arredonda um numero
ajaxGet: function(sUrl,
funcaoRetorno)
Faz uma requisição ao servidor por meio de AJAX
pegaDadosLocal: function(item)
Obtem um valor armazenado localmente
limpaDadosLocal: function(item)
Limpa os dados locais
gravaDadosLocal: function(item,
valor)
Grava um valor localmente
extGeo2OSM: function(ext)
Converte string xmin ymin xmax ymax de geo para a projecao OSM
navegadorDir: function(obj,
listaShp,
listaImg,
listaFig)
Abre o navegador de arquivos localizados no servidor
navegadorPostgis: function(obj,
conexao,
tipo)
Abre o navegador de de tabelas existentes no banco de dados Postgis