Desenho de elementos gráficos

Arquivo

i3geo/classesjs/classe_desenho.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
Desenho de elementos gráficosi3geo/classesjs/classe_desenho.js
i3GEO. desenhoControla as operações de desenho sobre o mapa
Variaveis
richdrawObjeto richdraw criado por criaContainerRichdraw
Propriedades
estilosEstilos que podem ser utilizados para desenhar os elementos
estiloPadraoEstilo utilizado como padrão
Functions
criaContainerRichdrawCria os elementos ‘dom’ necessários ao uso das funções de desenho sobre o mapa.
criaDivContainerCria o elemento DIV que será utilizado para renderizar os elementos gráficos.
aplicaDesenha ou reposiciona elementos na tela usando a biblioteca richdraw
insereCirculoInsere um circulo no container de elementos gráficos
definePadraoAplica um determinado padrao de estilos para os novos elementos que serão adicionados
caixaEstilosCria uma caixa de seleção para escolha do estilo a ser utilizado

i3GEO. desenho

Controla as operações de desenho sobre o mapa

Por desenho, entende-se elementos que são incluídos graficamente no mapa, como por exemplo, linhas, pontos, círculos, etc e que não compõem layers com dados

As operações de desenho são baseadas na biblioteca Richdraw (i3geo/pacotes/richdraw)

Link

http://starkravingfinkle.org- /blog- /2006- /04- /richdraw-simple-vmlsvg-editor- /

Summary
Variaveis
richdrawObjeto richdraw criado por criaContainerRichdraw
Propriedades
estilosEstilos que podem ser utilizados para desenhar os elementos
estiloPadraoEstilo utilizado como padrão
Functions
criaContainerRichdrawCria os elementos ‘dom’ necessários ao uso das funções de desenho sobre o mapa.
criaDivContainerCria o elemento DIV que será utilizado para renderizar os elementos gráficos.
aplicaDesenha ou reposiciona elementos na tela usando a biblioteca richdraw
insereCirculoInsere um circulo no container de elementos gráficos
definePadraoAplica um determinado padrao de estilos para os novos elementos que serão adicionados
caixaEstilosCria uma caixa de seleção para escolha do estilo a ser utilizado

Variaveis

richdraw

Objeto richdraw criado por criaContainerRichdraw

Tipo

{richdraw object}

Propriedades

estilos

Estilos que podem ser utilizados para desenhar os elementos

estiloPadrao

Estilo utilizado como padrão

Functions

criaContainerRichdraw

criaContainerRichdraw: function()

Cria os elementos ‘dom’ necessários ao uso das funções de desenho sobre o mapa.

As ferramentas de cálculo de distâncias e áreas utilizam esse container.

Richdraw é uma biblioteca utilizada pelo i3geo para abstrair as diferenças entre as linguagens svg e vml.

Essa abstração é necessária devido às diferenças entre os navegadores.

O container é criado dentro de um DIV chamado “divGeometriasTemp”

Essa função cria também o objeto pontosdistobj que é utilizado para armazenar os dados obtidos da movimentação do mouse sobre o mapa

criaDivContainer

criaDivContainer: function()

Cria o elemento DIV que será utilizado para renderizar os elementos gráficos.  Nesse DIV serão incluídos os elementos de desenho em SVG ou VML

O DIV recebe como ID “divGeometriasTemp”

Return

DOM object

aplica

aplica: function(tipo,
objeto,
n,
texto)

Desenha ou reposiciona elementos na tela usando a biblioteca richdraw

Parametros

tipo {string}resizelinha|resizePoligono|insereCirculo tipo de operação
objeto {object}objeto gráfico existente no container richdraw
n {numeric}índice do elemento no array pontosdistobj
texto {string}texto que será inserido no tipo “insereTexto”

insereCirculo

insereCirculo: function(x,
y,
w)

Insere um circulo no container de elementos gráficos

Parametros

x {numerico}posição do ponto em coordenadas de imagem
y {numerico}posição do ponto em coordenadas de imagem
w {numerico}raio do círculo em pixels

definePadrao

definePadrao: function(padrao)

Aplica um determinado padrao de estilos para os novos elementos que serão adicionados

Parametro

padrao {string}nome do estilo

caixaEstilos

caixaEstilos: function()

Cria uma caixa de seleção para escolha do estilo a ser utilizado

criaContainerRichdraw: function()
Cria os elementos ‘dom’ necessários ao uso das funções de desenho sobre o mapa.
criaDivContainer: function()
Cria o elemento DIV que será utilizado para renderizar os elementos gráficos.
aplica: function(tipo,
objeto,
n,
texto)
Desenha ou reposiciona elementos na tela usando a biblioteca richdraw
insereCirculo: function(x,
y,
w)
Insere um circulo no container de elementos gráficos
definePadrao: function(padrao)
Aplica um determinado padrao de estilos para os novos elementos que serão adicionados
caixaEstilos: function()
Cria uma caixa de seleção para escolha do estilo a ser utilizado