# Manual do &kgraphviewer;

## Introdução

O &kgraphviewer; é um visualizador de gráficos ˙ do &graphviz;. Os programas do &graphviz; são mecanismos de disposição de gráficos em software livre. O &kgraphviewer; mostra os gráficos em uma &GUI; moderna e amigável. Ele possui as seguintes funcionalidades: Aqui está uma imagem do &kgraphviewer; A janela principal do &kgraphviewer; a mostrar um dos exemplos do &graphviz;

- Ampliação;

- Carregamento de vários gráficos em páginas, ao mesmo tempo;

- Armazenamento de uma lista dos arquivos abertos recentemente;

- Apresentação de uma visão geral do gráfico;

- Deslocamento do gráfico por arrastamento com o mouse;

- Impressão com todas as funcionalidades;

- Desenho perfeito de todos os gráficos de exemplo do &graphviz;;

- São suportadas cores para os nós e lados e várias formas para os nós;

- Escolha automática do ˙ para gráficos direcionais e o &neato; para os não-direcionais;

- Carregamento automático ou manual, com confirmação do usuário, dos arquivos modificados externamente (configurável);

- Abrir instâncias novas como páginas novas em uma instância existente (configurável);

- Sistema de ajuda;

- Internacionalização.

As funcionalidades previstas são:

- Uso eventual da biblioteca &qanava; para suportar a representação de gráficos internos

- Salvar os dados sobre do gráfico na sessão (programa de disposição usado, fator de ampliação, &etc;)

- Integração no &kate; e no &konqueror; (para que uma alteração da vista do gráfico no &kate; atualize a disposição e recarregue o arquivo no &kgraphviewer;);

- Menu para abrir o arquivo no &kate; ou para abrir um 'katepart' dentro da janela do &kgraphviewer;;

- Carregamento de gráficos grandes e enormes (atualmente, existem problemas de performance com cerca de 1000 nós e um ajuste para ignorar os nós a partir de um determinado limite.);

- Suporte progressivo para ainda mais atributos e valores do ˙;

- Disposição em segundo plano (uma tarefa que não bloqueie a interface, com uma barra de progresso).

Repare que este programa inclui código da ferramenta GPL &kcachegrind; de Josef Weidendorfer, com autorização do mesmo.

Repare também que o sistema de impressão é o do aplicativo &kexi; do &calligra;.

Outro 'software' necessário: o &kgraphviewer; é um programa que usa a ferramenta ˙ do &graphviz; para a disposição dos gráficos. As suas dependências são:

- As bibliotecas do &Qt; e do &kde-frameworks; versão 5.x;

- As ferramentas do &graphviz; como programas externos (testado com a versão 2.8);

- A biblioteca &boost; versão 1.36.

## Usar o &kgraphviewer;

### A Janela Principal

A janela principal mostra os gráficos carregados, estando cada um deles na sua própria página. Inicialmente, se você iniciar o &kgraphviewer; sem argumentos, a sua janela principal estará vazia, como na imagem abaixo. Neste caso, a barra de ferramentas contém apenas os botões Abrir... e o Abrir recente (vazio). Clique no primeiro para abrir a janela normal para Abrir arquivo.

A janela principal inicial, ao abrir o &kgraphviewer; pela primeira vez A janela principal inicial, ao abrir o &kgraphviewer; pela primeira vez

A janela principal inicial, ao abrir o &kgraphviewer; pela primeira vez

Depois de selecionar um ou vários arquivos do ˙, a janela principal fica como a imagem seguinte abaixo:

A janela principal do &kgraphviewer; com vários arquivos abertos A janela principal do &kgraphviewer; com vários arquivos abertos

A janela principal do &kgraphviewer; com vários arquivos abertos

Como você pode ver, se o gráfico for maior que a área disponível, aparece uma visão geral em um canto. Você poderá escolher, com o menu de contexto, a posição ótima desta visão geral, ou optar por determiná-la automaticamente, assim como colocá-la onde desejar.

#### Mover o Gráfico Dentro da Janela

Para mover o gráfico, você poderá:

- Carregar e arrastar o mesmo;

- Usar as barras de rolagem;

- Pressionar as teclas de cursores;

- Clicar em algum ponto da visão geral;

- Usar a roda do mouse (para cima e para baixo, sem teclas acessórias; esquerda e direita com o &Alt; pressionado);

- ou clicar e arrastar na área de visão geral.

#### Ampliando

Para ampliar, tanto poderá usar os botões da barra de ferramentas (ampliar) e (reduzir) ou pressionar a tecla &Shift;, enquanto desloca a roda do seu mouse. Durante a ampliação, o retângulo vermelho na área de posicionamento, que mapeia a área visível, vai ficando cada vez menor. Mas, se ficar menor que 10 pixels no lado menor, então será substituído por um retângulo vermelho normal, para poder ficar visível. Você poderá ver isso na imagem abaixo.

Um gráfico no nível máximo de ampliação Um gráfico no nível máximo de ampliação

Um gráfico no nível máximo de ampliação

A ampliação está limitada em ambas as direções por um fator de 10. Você poderá ver abaixo o nível máximo de redução num gráfico.

Um gráfico no nível máximo de redução Um gráfico no nível máximo de redução

Um gráfico no nível máximo de redução

#### Tratamento dos Arquivos de Gráficos

##### Arquivos Modificados no Disco

Se um arquivo atualmente carregado no &kgraphviewer; for modificado por outro programa, então aparece a seguinte janela:

Janela para recarregar um arquivo modificado no disco Janela para recarregar um arquivo modificado no disco

Janela para recarregar um arquivo modificado no disco

Você poderá optar por recarregar o gráfico ou ignorar a alteração. Você poderá também fazer com que o &kgraphviewer; recorde a sua escolha e volte a fazer a mesmo coisa das próximas vezes. Se quiser modificar mais tarde a sua escolha, então selecione o item do menu Configurações Configurar o &kgraphviewer;.... Veja o capítulo kgraphviewer-configuration.

##### Arquivos e Janelas

Quando abrir um arquivo de um gráfico fora de uma instância do &kgraphviewer; em execução, ⪚ a partir de um navegador de arquivos ou da linha de comando, você terá a opção de abrir uma nova janela do &kgraphviewer; ou de abrir o gráfico numa página nova da janela existente. Isto é feito na janela abaixo.

Janela para abrir uma janela nova Janela para abrir uma janela nova

Janela para abrir uma janela nova

Como na opção anterior, você poderá salvar a sua escolha como o padrão e modificá-la abaixo na janela de configuração.

##### Tratamento de Sessões

Na inicialização, você pode optar por abrir de novo os gráficos abertos da vez anterior ou não. Memorize outra vez a sua escolha e altere-a mais tarde, se desejar.

Janela inicial para carregar de novo a sessão anterior na inicialização Janela inicial para carregar de novo a sessão anterior na inicialização

Janela inicial para carregar de novo a sessão anterior na inicialização

### Impressão do Gráfico

Experimente os botões Previsão da impressão ou de Configuração da página para explorar as opções de impressão.

Janela de configuração da página Janela de configuração da página

Janela de configuração da página

Você poderá configurar as opções de impressão para fazer caber o gráfico exatamente numa página, como acontece abaixo:

Configuração da previsão da página, para caber numa página Configuração da previsão da página, para caber numa página

Configuração da previsão da página, para caber numa página

Você poderá também escolher como dividir o gráfico em várias páginas. O número de páginas horizontais e verticais poderá ser escolhido de forma independente.

Previsão da página, configurada para caber em várias páginas, ocupando-as por completo Previsão da página, configurada para caber em várias páginas, ocupando-as por completo

Previsão da página, configurada para caber em várias páginas, ocupando-as por completo

Finalmente, ao usar várias páginas, você poderá optar por fazer com que a parte do gráfico em cada página se ajuste à sua página, como acontece acima, não mantendo as proporções ou mantendo-as. No último caso, as páginas não serão preenchidas.

Você poderá alterar o tamanho e as margens das páginas:

Janela do tamanho e margens da página Janela do tamanho e margens da página

Janela do tamanho e margens da página

Poderá também alterar o tipo de fonte, os cabeçalhos e os rodapés:

Previsão da página, configurada para caber em várias páginas sem cabeçalho e com um tipo de fonte diferente Previsão da página, configurada para caber em várias páginas sem cabeçalho e com um tipo de fonte diferente

Previsão da página, configurada para caber em várias páginas sem cabeçalho e com um tipo de fonte diferente

### Configurar o &kgraphviewer;

A página Aparência permite alterar a cor de fundo padrão usada no &kgraphviewer; caso um gráfico não tenha sua própria cor de fundo.

Página para alterar a aparência de um gráfico Página para alterar a aparência de um gráfico

Página para alterar a aparência de um gráfico

A página Análise permite selecionar um comando externo ou a biblioteca interna para análise de arquivos ˙ do &graphviz;.

Página para recarregar os arquivos modificados na janela de configuração Página para recarregar os arquivos modificados na janela de configuração

Página para recarregar os arquivos modificados na janela de configuração

A página para Recarregar permite-lhe alterar o comportamento do &kgraphviewer; quando um arquivo for modificado no disco. Você poderá escolher uma resposta padrão (recarregar automaticamente ou não) ou ser questionado o que fazer cada vez que isso acontecer.

Página para recarregar os arquivos modificados na janela de configuração Página para recarregar os arquivos modificados na janela de configuração

Página para recarregar os arquivos modificados na janela de configuração

A página de Abertura permite alterar o comportamento do &kgraphviewer;, quando um arquivo do gráfico é aberto externamente à sessão atual. Você poderá escolher uma opção padrão (abrir numa janela existente ou numa nova) ou ser avisado cada vez que isso ocorre.

Página para abrir os arquivos novos numa janela existente na janela de configuração Página para abrir os arquivos novos numa janela existente na janela de configuração

Página para abrir os arquivos novos numa janela existente na janela de configuração

A página de Gerenciamento de Sessões permite alterar o comportamento do &kgraphviewer; quando ele inicia. Você pode escolher uma resposta padrão (abrir de novo os arquivos da sessão anterior) ou ser questionado a cada início de sessão.

Página para reabrir os arquivos da sessão anterior na janela de configuração Página para reabrir os arquivos da sessão anterior na janela de configuração

Página para reabrir os arquivos da sessão anterior na janela de configuração

### Funções Diversas

O menu de contexto, obtido através do &RMB; na vista do gráfico, oferece mais algumas possibilidades:

Layout

- Este menu permite escolher entre vários algoritmos de disposição do &graphviz; ou escolher o seu próprio. Os itens, como estão descritos na página pessoal do &graphviz; são os seguintes:

  ˙

- O algoritmo do ˙. Padrão para os grafos direcionais. Cria desenhos hierárquicos ou em camadas dos gráficos direcionais. O algoritmo de disposição aponta os extremos na mesma direção (de cima para baixo, ou da esquerda para a direita) e tenta depois evitar cruzamentos de arestas e reduzir o tamanho das mesmas.

&neato;

- O algoritmo do &neato;. Padrão para os grafos não-direcionais. Cria um modelo em flor. Ele usa o algoritmo Kamada-Kawai, que é equivalente às escalas multi-dimensionais estatísticas.

&twopi;

- O algoritmo do &twopi;. Para os gráficos direcionais e não-direcionais. Uma disposição radial, seguindo o Graham Wills 1997.

&fdp;

- O algoritmo do &fdp;. Para os gráficos não-direcionais. Cria um modelo em flor. Implementa a heurística de Fruchterman-Reingold, incluindo um sistema de resolução multi-grade, que lida com gráficos maiores e com gráficos não-direcionais em enxames.

&circo;

- O algoritmo do &circo;. Uma disposição circular, seguindo a especificação de Six e Tollis 1999, Kauffman e Wiese 2002. Adequado para certos diagramas de várias estruturas cíclicas.

Especificar o comando de layout...

- Abre uma janela que lhe permite indicar um comando de disposição executado pela linha de comando. Este comando fica à espera de um parâmetro, o nome do arquivo do gráfico, e escreve o resultado no 'stdout', na linguagem 'xdot'. Desta forma, você poderá dar, por exemplo, opções específicas a um dos comandos anteriores ou aplicar um filtro que modifica o seu gráfico, antes de o executar com o ˙.

Restaurar o comando de layout para o padrão

- Determina o tipo do gráfico (direcional ou não) e aplica o algoritmo padrão no mesmo, sendo por padrão o ˙ e o &neato;, respectivamente.

Exportar Gráfico

- Como imagem…

- Permite exportar o gráfico completo para todos os formatos de imagem suportados.

Ativar a visão panorâmica

- Se a opção estiver assinalada, a vista de topo ou vista geral é apresentada em caso de necessidade. Caso contrário, fica oculta e o menu de posicionamento fica desativado.

Posição da visão panorâmica

- Configura onde colocar a vista de topo ou geral, na área do gráfico. As opções possíveis são:

  Superior-Esquerda

- Coloca a vista de topo no canto superior esquerdo;

Superior-Direita

- Coloca a vista de topo no canto superior direito;

Inferior esquerdo

- Coloca a vista de topo no canto inferior esquerdo;

Inferior direito

- Coloca a vista de topo no canto inferior direito;

Automático

- Escolhe automaticamente a melhor posição, para ocultar o gráfico o mínimo possível.

## Referência de comandos

### Menus do &kgraphviewer;

#### Menu Arquivo

&Ctrl;N Arquivo Novo

- Abre uma nova janela do &kgraphviewer;.

&Ctrl;O Arquivo Abrir

- Mostra a janela para Abrir um Arquivo.

Arquivo Abrir um Recente

- Mostra a lista com os dez arquivos de gráficos abertos mais recentemente.

Arquivo Exportar gráfico Como imagem…

- Permite exportar o gráfico completo para todos os formatos de imagem suportados.

&Ctrl;P Arquivo Imprimir...

- Imprime o gráfico atual com os parâmetros de impressão atuais.

&Ctrl;&Shift;P Arquivo Prévia da impressão...

- Abre a janela de Previsão da Impressão para o gráfico atual.

Arquivo Configuração da página...

- Abre a janela de Configuração da Página para a impressão do gráfico atual.

&Ctrl;Q Arquivo Sair

- Sai do &kgraphviewer;.

#### Menu Exibir

&Ctrl;+Ver Ampliar

- Amplia o gráfico atual em 10%.

&Ctrl;-Ver Reduzir

- Reduz o gráfico atual em 10%.

Exibir Atualizar

- Recarrega o gráfico atual.

Exibir Algoritmo do layout

- Abre um submenu com vários algoritmos de layout do &graphviz; para o gráfico atual.

&Ctrl;B Exibir Ativar vista panorâmica

- Se a opção estiver assinalada, a vista de topo ou vista geral é apresentada em caso de necessidade. Caso contrário, fica oculta e o menu de posicionamento fica desativado.

Exibir Posição da vista panorâmica

- Configura onde colocar a vista panorâmica, na área do gráfico. As opções são:

  Superior-Esquerda

- Coloca a vista de topo no canto superior esquerdo;

Superior-Direita

- Coloca a vista de topo no canto superior direito;

Inferior esquerdo

- Coloca a vista de topo no canto inferior esquerdo;

Inferior direito

- Coloca a vista de topo no canto inferior direito;

Automático

- Escolhe automaticamente a melhor posição, para ocultar o gráfico o mínimo possível.

#### Menus Configurações e Ajuda

O &kgraphviewer; possui os itens de menu comuns do &kde;, como Configurações e Ajuda. Para mais informações, leia as seções sobre o Menu Configurações e Menu Ajuda dos Fundamentos do &kde;.

### As barras de ferramentas do &kgraphviewer;

#### A barra de ferramentas principal

- Mostra a janela para Abrir um Arquivo.

- Mostra a lista dos arquivos abertos recentemente.

- Mostra a janela para Prévia de impressão.

#### A Barra de Visualização

- Edita o comando de disposição ou mostra a lista de algoritmos predefinidos.

- Amplia o gráfico atual em 10%.

- Reduz o gráfico atual em 10%.

#### A barra de ajuda

- Mostra o cursor do mouse O Que é Isto. Clique com ele num elemento da &GUI; para obter ajuda sobre ele (se existir alguma disponível).

## Créditos e licença

### Programa

#### Autores Principais

Direitos autorais do programa 2005-2006 Gaël de Chalendar kleag@free.fr

#### Contribuições (a completar)

- Reimar Döffinger Reimar.Doeffinger@stud.uni-karlsruhe.de

### Guia do Usuário

Direitos autorais da documentação 2006 Gaël de Chalendar kleag@free.fr

#### Contribuidores

- Federico Zenith federico.zenith@member.fsf.org

### Outros Créditos

Neste programa, foi utilizado código de outros projetos de 'Software' Livre:

&kcachegrind;

- Modelo inicial do gráfico e classes de visualização;

&kexi;

- Classes de configuração e previsão da impressão.

### Licenças

Tradução de Marcus Gama marcus.gama@gmail.com

&underFDL; &underGPL;
&documentation.index;