Manual do Kig

# Manual do Kig

Dominique Devriese `<devriese@kde.org>`

Tradução: Marcus Gama
revisão Kig 1.0 (Applications 15.12) (27/09/2015)

Copyright © 2002, 2003, 2004 Dominique Devriese

Nota Legal

O Kig é um aplicativo do KDE para Geometria Interativa.

Capítulo 1. Introdução
Introdução

# Capítulo 1. Introdução

O Kig é um aplicativo para geometria interativa. Ele pretende cumprir dois objetivos:

- Permitir aos estudantes explorarem figuras e conceitos matemáticos, usando o computador.

- Servir como uma ferramenta WYSIWYG para desenhar figuras matemáticas e incluí-las em outros documentos.

Você poderá comunicar problemas no Kig, usando a ferramenta interna de relatórios de erros (Ajuda → Relatar erro...).

Uma vez que o Kig suporta macros e 'loci', ele permite a definição de algumas macros mais avançadas. Se você criou uma macro interessante e achar que pode ser útil para outras pessoas, crie uma solicitação de revisão para que possa ser avaliada sua inclusão na distribuição (se o fizer, ela será licenciada sob os termos da licença do Kig, a GPL, de modo que as outras pessoas possam usá-la livremente e adaptá-la).

Capítulo 2. Uso básico
Uso básico

# Capítulo 2. Uso básico

## Construindo objetos

### Construindo pontos

Você poderá construir pontos de várias formas:

- Selecione Objetos → Pontos → Ponto na barra de menu ou clique no botão apropriado da barra de ferramentas. Você poderá então construir um ponto clicando na posição desejada da janela.

  ### Nota

  Pressione a tecla Shift para ativar o modo de desenho instantâneo que permite você fazer com que qualquer ponto em uma construção aponte exatamente para a grade.

  ### Nota

  Atualmente, isto funciona da mesma forma para construir também outros objetos: clique no item desejado do menu ou da barra de ferramentas e selecione os objetos necessários para construir o objeto.

- Uma vez que você precisa normalmente construir os pontos, basta clicar em algum ponto da tela com o botão do meio do mouse de modo a construir um ponto para você, sem ter que ir a um menu ou a um botão.

- Você poderá criar pontos enquanto está criando outros objetos em segundo plano, selecionando-os opcionalmente no objeto que está criando. Para mais informações, veja em “Construindo outros objetos”.

### Construindo outros objetos

Criar outros objetos que não sejam pontos é feito normalmente selecionando o item apropriado do menu Objetos, ou clicando num dos botões da barra de ferramentas.

Isto irá iniciar a construção do tipo de objeto escolhido. Todos estes tipos necessitam de argumentos. Por exemplo, se você selecionou uma circunferência através do centro e de um ponto, você terá que indicar dois pontos: um para o centro e outro para um ponto da circunferência.

Estes argumentos são também objetos e poderão ser selecionados, clicando nos mesmos. Quando você mover um objeto que possa ser usado para construir o objeto, será mostrada uma imagem preliminar de como o objeto se parecerá. Para os objetos que necessitem de pontos como argumentos, você poderá criar um novo ponto na posição atual do cursor e selecioná-lo com o botão esquerdo do mouse.

Você poderá sempre cancelar a criação do novo objeto com a tecla Esc ou clicando no botão Cancelar Construção (o octógono vermelho com um “X”) na barra de ferramentas.

Selecionando objetos
Selecionando objetos

## Selecionando objetos

A seleção dos objetos poderá ser feita de duas formas:

- Clicando simplesmente num objeto, fará com que esse objeto fique selecionado, retirando a seleção de outros objetos que estivessem previamente selecionados. Se você não quiser esse comportamento, mantenha pressionada a tecla Ctrl enquanto clica num objeto.

- Ao clicar e arrastar para um local vazio da tela, você poderá selecionar todos os objetos dentro do retângulo que é criado. Esta ação irá limpar a seleção atual. Como no caso anterior, se mantiver pressionada a tecla Ctrl, irá evitar esse comportamento.

Quando tiver mais de um objeto sob o mouse (indicado pelo Qual objeto? na barra de status e no cursor do mouse), você poderá escolher facilmente o objeto a selecionar ou adicionar á seleção atual. Clique com o botão esquerdo do mouse, enquanto mantém pressionada a tecla Shift ou clique com o botão direito do mouse para ter um menu de contexto com todos os objetos sob o mouse. Então, você poderá selecionar o objecto que necessita. Como foi dito anteriormente, o comportamento da tecla Ctrl irá afetar a seleção.

Movendo objetos
Movendo objetos

## Movendo objetos

Para mover os objetos, você precisa primeiro de os selecionar.

Quando os objetos que você deseja mover estiverem selecionados, você poderá começar a movê-los clicando no botão esquerdo do mouse e arrastando qualquer um deles. Quando terminar, basta soltar o botão esquerdo do mouse.

### Nota

Para alguns tipos de objetos ('loci' mais complexos), a movimentação dos objetos poderá ser lenta nos sistemas mais antigos). Isto é ruim mas é inevitável, devido os cálculos envolvidos.

### Nota

Se você clicar com o botão direito do mouse num dos objetos selecionados e optar por Mover, o movimento do mouse irá mudar a posição do objeto. Quando o objeto estiver na posição desejada, outro clique do botão esquerdo do mouse irá parar o movimento.

Removendo objetos
Removendo objetos

## Removendo objetos

A remoção de objetos é feita, selecionando-os em primeiro lugar, e depois fazendo uma das seguintes coisas:

- Pressionando a tecla Del.

- Pressionando o botão Apagar os Objetos da barra de ferramentas.

- Clicando com o botão direito do mouse num dos objetos e selecionando a opção Remover do menu de contexto que aparece.

Mostrando e ocultando objetos
Mostrando e ocultando objetos

## Mostrando e ocultando objetos

No Kig, os objetos podem ser ocultos. Isto é feito selecionando os objetos, clicando com o botão direito do mouse num deles e selecionando a opção Ocultar no menu de contexto que aparece.

Para mostrar de novo os objetos, use a opção Editar → Mostrar Tudo. Isto irá colocar como visíveis todos os objetos atualmente ocultos.

### Visão noturna

A Visão noturna é uma forma particular de trabalhar com objetos ocultos. Quando tiver que mover ou modificar algo um ou mais objetos, mas sem expor todos os objetos ocultos que possui, então a visão noturna poderá ser boa opção.

Basicamente, ela permite ver os objetos ocultos, como se estivessem visíveis, de modo que possa manipulá-los como faria normalmente. No modo de Visão Noturna, os objetos ocultos ficarão visíveis com uma cor cinzenta.

Para ativar ou desativar o modo de visão noturna, use a opção Configurações → Usar Óculos de Infravermelhos.

Desfazer/refazer
Desfazer/refazer

## Desfazer/refazer

No Kig, você poderá anular praticamente qualquer ação que tenha feito ao documento. Basta usar os botões de Desfazer/Refazer da barra de ferramentas, no menu Editar ou o atalho apropriado.

Modo de tela inteira
Modo de tela inteira

## Modo de tela inteira

O Kig também tem um modo de tela inteira. Para usá-lo, clique no botão apropriado da barra de ferramentas ou selecione Configurações → Modo de tela inteira.

Para sair do modo de tela inteira, clique com o botão direito do mouse na tela, num local em que não hajam objetos presentes e selecione Sair do modo em tela inteira ou pressione a combinação de teclas Ctrl+Shift+F.

Capítulo 3. Tipos de objetos do Kig
Tipos de objetos do Kig

# Capítulo 3. Tipos de objetos do Kig

O Kig suporta um número relativamente grande de tipos de objetos. Repare que nem todos os tipos disponíveis são mostrados nas barras de ferramentas, mas que existem também alguns objetos que você só poderá construir através do menu Objetos da barra de menu. Claro, como acontece com todos os aplicativos do KDE, o que aparece nas barras de ferramentas é configurável. Experimente a opção Configurações → Configurar barras de ferramentas... se quiser fazer isso.

Capítulo 4. Uso avançado
Uso avançado

# Capítulo 4. Uso avançado

## Menus de contexto

O Kig possui menus de contexto para os seus objetos. Experimente clicar com o botão direito do mouse num objeto para que apareça um menu de contexto. Existem várias opções: para construir outros objetos, mudar as cores, a espessura da caneta, o estilo e mesmo para ocultar, mover ou remover os objetos. Alguns dos objetos possuem opções próprias (por exemplo você poderá redefinir a criação de certos pontos, de modo a estarem restritos a uma determinada linha, se isso não era possível, etc.). Estas opções deverão ser bastante simples de compreender.

Algumas das ações no menu de contexto de um objeto precisam de outro objeto definido como referência, por exemplo:

Rodar uma forma um determinado número de graus em torno de um ponto

  1. Clique na opção Objetos → Ângulos → Ângulo por Três Pontos e crie o seu ângulo de rotação desejado em algum ponto da janela do Kig, normalmente num local não incômodo. Se desejar, clique com o botão direito no ângulo e na opção Adicionar uma Legenda de Texto → Ângulo em Graus.

  2. Clique com o botão direito do mouse no ângulo e selecione Definir o Tamanho e insira o tamanho novo deste ângulo na janela.

  3. Clique nos Objetos e construa o seu objeto desejado.

  4. Clique com o botão direito na sua forma e selecione a opção Transformar → Rodar.

  5. Defina o seu ponto desejado de rotação.

  6. Clique no seu ângulo.

  7. A sua forma foi rodada!

Transladar um objeto

  1. Clique em Objetos → Vetores & Segmentos → Vetor e construa o objeto, selecionando o ponto inicial e final em algum ponto na janela do Kig.

  2. Para ajustar o comprimento e direção do vetor, você terá que editar o seu ponto inicial e final. Selecione-os e escolha no menu de contexto Definir a coordenada...

  3. Clique nos Objetos e construa o seu objeto desejado.

  4. Clique com o botão direito no seu objeto e selecione a opção Transformar → Transladar.

  5. Selecione o vetor pelo qual transladar.

Menus de contexto do documento
Menus de contexto do documento

## Menus de contexto do documento

Clicando com o botão direito do mouse no documento (isto é, sem ser num objeto), irá aparecer um menu que você poderá usar para iniciar a criação de um novo objeto, mudar o sistema de coordenadas usado, mostrar os objetos ocultos, ampliar ou reduzir o documento e alternar para o modo de tela inteira.

Definindo macros
Definindo macros

## Definindo macros

Um dos recursos mais avançados no Kig é o seu suporte para macros. Isto permite-lhe definir um novo tipo de objeto, combinando outros objetos.

Por exemplo: suponha que você queira criar uma macro para criar uma circunferência a partir de três pontos dela. Você teria de criar esses três pontos, algumas perpendiculares e pontos médios até que encontrasse o centro. Agora poderá usar a opção Círculo por Centro & Ponto (usando um dos três pontos como o ponto deste comando). A imagem a seguir deverá esclarecer isto um pouco:

A seguir vem a definição da macro. Selecione a opção Nova Macro... do menu Tipos ou clique no botão da barra de ferramentas. Irá aparecer um assistente que irá pedir para selecionar os objetos indicados. Selecione os três pontos (clique neles para selecioná-los, e clique de novo para os desmarcar), clicando depois no botão Próximo para continuar. Finalmente, selecione os últimos objetos (apenas a circunferência, no nosso exemplo).

Depois de ter terminado os passos anteriores, clique no botão Próximo para continuar. Insira um nome e, opcionalmente, uma descrição do seu novo tipo, clicando depois no botão Terminar. O seu tipo de macro está agora terminado.

Para usar o tipo da nova macro, clique no seu botão da barra de ferramentas ou use o menu Objetos. Criar um objeto de uma macro é então tão simples como criar um outro objeto qualquer.

Trabalhando com tipos
Trabalhando com tipos

## Trabalhando com tipos

Como você viu no capítulo anterior, o Kig permite-lhe criar os seus próprios objetos. O Kig também se certifica que, logo que tenha criado um objeto, ele é gravado na saída e carregado na inicialização. Você não terá que gravar ou carregar manualmente as definições das macros. Contudo, o Kig permite-lhe fazer mais com as macros. Se você selecionar a opção Tipos → Gerenciar os Tipos..., você verá uma janela onde poderá editar os seus tipos. Isto permite-lhe remover os tipos que não são mais usados, exportá-los para um arquivo ou mesmo carregá-los a partir de outro arquivo.

Etiquetas de texto
Etiquetas de texto

## Etiquetas de texto

O Kig permite-lhe adicionar etiquetas de texto a uma construção. Isto é muito útil para mostrar os nomes, explicações ou textos auxiliares na sua construção. O Kig poderá também mostrar informações variáveis sobre os objetos (também conhecidas como “propriedades”).

Para iniciar a criação de uma legenda de texto, basta escolher o botão Rótulo de texto na barra de ferramentas do Kig ou selecionando Objetos → Outros → Rótulo de texto da barra de menu.

A seguir, você terá que escolher uma localização para o rótulo de texto. Você poderá então escolher uma localização aleatória na tela ou optar por “anexar” o rótulo a outro objeto.

Você poderá agora acessar à janela da legenda de texto. Aqui, você poderá escrever o texto que deseja mostrar na nova legenda e clicar em Concluir. A legenda deverá agora estar presente no seu documento.

O exemplo anterior foi simples e limitava-se apenas a texto. Contudo, existe também o suporte para mostrar informações variáveis sobre os objetos de uma legenda (por exemplo você poderá criar uma legenda que mostra o texto “Este segmento tem %1 unidades de comprimento.” em que o %1 seria dinamicamente substituído pelo tamanho de um determinado segmento).

Para fazer isso, insira um texto com o número de substituições ( %1, %2 etc.) nele. Quando terminar, clique no botão Próximo para continuar. Se você quiser alterar o texto ou as variáveis depois, poderá voltar atrás com a opção Anterior.

O assistente mostra agora o texto que introduziu com todas as substituições alteradas para algo do tipo argumento 1. A seleção do que deverá mostrar num determinado argumento é feita quando você, em primeiro lugar, clicar no argumento em questão. Clique então no objeto sobre o qual deseja mostrar informações, selecionando no fim um pedaço de informação no menu de contexto que aparece. No exemplo acima, você iria clicar no argumento 1, clicar no segmento correto da janela principal do Kig, e finalmente selecionar a propriedade Comprimento. Depois disso, você poderá preencher as variáveis restantes ou selecionar outra propriedade para uma das variáveis, se desejar alterá-la. Quando terminar, clique no botão Terminar para finalizar a criação da legenda de texto.

Loci
Loci

## Loci

O Kig suporta a utilização de 'loci'. Um 'loci' é definido matematicamente como o conjunto de todos os pontos ou linhas que satisfazem ou são determinados através de condições específicas; um exemplo é “o 'locus' dos pontos equidistantes de um determinado ponto é uma circunferência”. Vamos ver um exemplo de utilização de 'loci' no Kig:

Considere a seguinte construção geométrica: É desenhada uma circunferência e um ponto que se pode mover ao longo da sua superfície (construa este ponto, posicionando o cursor numa circunferência e clicando com o botão do meio do mouse. Se você então tentar mover o ponto resultante, verá que não consegue movê-lo para fora da circunferência). Depois, é desenhado um segmento desde esse ponto até ao centro da circunferência e o ponto médio desse segmento.

Agora, se mover o ponto que está restringido à circunferência, você poderá ver que o segundo ponto se move com ele. Se você mantivesse uma caneta acima do segundo ponto e movesse o primeiro ponto à volta da circunferência, iria criar uma nova circunferência com metade do tamanho da outra. Veremos abaixo que isto é exatamente o que um 'locus' faz. O caminho que o segundo ponto percorre enquanto o primeiro se move à volta da circunferência é como ficaria o 'locus'.

De fato, a criação do 'locus' é muito simples. Clique no seu botão na barra de ferramentas ou selecione a opção Objetos → Outros → 'Locus' do menu. Selecione então o ponto restrito como o ponto móvel (o texto Ponto Móvel irá aparecer à medida que você passa o mouse por cima) e o outro como ponto dependente. Irá então aparecer o 'locus'.

Capítulo 5. Programação
Programação

# Capítulo 5. Programação

O Kig permite ao usuário criar tipos personalizados na linguagem de programação Python. Este é um recurso muito avançado, e só é conhecido pelo autor um outro programa de Geometria Interativa que faça o mesmo (o programa do GNOME Dr.Geo).

A programação em Python no Kig basicamente permite-lhe criar a sua própria forma de definir um objeto a partir de certos objetos-pai. Por exemplo, se você for um professor de matemática e se tiver alguma forma bonita de calcular um ponto interessante de uma cônica, então em vez de lidar com construções complexas e macros, você poderá então definir em Python como o ponto será calculado, deixando que o Kig o mostre para você.

Suponha que você não conhecia o tipo “Ponto Médio” do Kig e quisesse mostrar o ponto médio de dois pontos indicados. Você iria então clicar no botão 'Script' de Python da barra de ferramentas ou selecionar a opção Objetos → Outros → 'Script' de Python na barra de menu. Aparecerá então um assistente que lhe permitirá prosseguir.

A primeira coisa que terá que fazer é selecionar os argumentos do objeto. No nosso exemplo, isto corresponde aos dois pontos dos quais pretendemos mostrar o ponto médio. Selecione-os na janela principal do Kig e clique em Próximo para prosseguir.

Agora, será apresentado um campo de texto onde poderá inserir o código do seu objeto. O código de modelo e alguns comentários já estão colocados. É importante certificar-se que o seu código é Python válido. As pessoas familiarizadas com o Python irão reparar que já está definida uma função em Python chamada `calc`. É, por isso, necessário aderir às regras do Python para definir funções. Por exemplo, cada linha da função deverá começar por um Tab. A primeira linha que não comece por uma Tab termina a definição da função.

A função de Python que deverá ser definida é chamada de `calc` e, no nosso caso, aceita dois argumentos. Estes são os objetos que você selecionou como argumentos na tela anterior. Existirão tantos argumentos quanto os que você tenha selecionado. Eles chamar-se-ão de `arg1` e `arg2`, mas você poderá mudar os nomes deles para algo mais compreensível, se desejar.

Na função, você poderá fazer todos os tipos de cálculos que julgue necessários, usando os dois argumentos, se necessário. Você deverá devolver o objeto que deseja que apareça. No nosso caso, este é um objeto `Point`. Os dois argumentos são também objetos `Point`, e pode-se usar a função `Point.coordinate()` para registrar as coordenadas dos dois pontos indicados.

Os cálculos necessários no nosso exemplo são muito simples; simplesmente adicionam-se as duas coordenadas e divide-se o resultado por dois. A partir daí, cria-se um novo ponto com essa coordenada. O código de Python necessário é:

    def calc( a, b ):
        m = ( a.coordinate() + b.coordinate() ) / 2;
        return Point( m )

Se você clicar agora no botão Terminar, então o novo objeto irá aparecer no documento do Kig. Se você mover um dos pontos, então o novo ponto irá mover-se junto com eles. Objetos bem mais poderosos poderão ser criados desta forma e você é encorajado a fazer isso.

Todos os objetos do Kig podem ser usados no código de Python. Como foi indicado acima, os pontos fazem parte da classe `Point` e você poderá usar, por exemplo, o método `Point.coordinate()`. Você poderá devolver também todos os tipos de objetos e não apenas `Point`'s. Estão disponíveis muitos mais métodos e classes na página de código em Python do Kig, assim como uma referência completa sobre eles aqui.

Capítulo 6. Recursos do Kig
Recursos do Kig

# Capítulo 6. Recursos do Kig

- O Kig é um aplicativo de código aberto. Isto significa que você é livre para o usar e modificar da forma que o desejar. A distribuição do Kig está sujeita a algumas restrições, basicamente na medida em que todos deverão ter os mesmos direitos de usar o Kig, incluindo as suas modificações, tal como você e eu.

  Os programas considerados software livre são desenvolvidos com um espírito muito aberto e seus programadores são normalmente muito cooperativos com as sugestões dos usuários. Assim, se tiver alguma dúvida, queixa ou algo do gênero sobre o Kig, entre em contato na lista de discussão do kde-edu em `(kde-edu AT kde.org)`.

- O Kig é um aplicativo KPart, o que significa que você poderá incorporá-lo em qualquer outro programa do KDE. Se você abrir um arquivo `.kig` diretamente no Konqueror, ele poderá ser aberto diretamente na tela do Konqueror sem a necessidade de iniciar um aplicativo externo.

- O trabalho com o Kig deverá ser relativamente simples. A criação de objetos é simples e interativa, com a apresentação de alguns resultados preliminares, etc. A mudança de posição, seleção e a criação deverão funcionar da forma que todos esperariam. O suporte para a anulação de ações deverá também ser bastante intuitivo.

- O Kig suporta a definição de macros de uma forma relativamente simples. Estes objetos são apresentados ao usuário como objetos normais. Eles são gravados na saída e carregados na inicialização, por isso não são perdidos ao sair. No Gerenciador de Tipos, você poderá gerenciar estes objetos. Você poderá exportá-los como arquivos, importá-los a partir de arquivos ou removê-los.

- O Kig grava os seus dados num formato XML simples.

- O Kig suporta a criação de 'loci'.

- O Kig permite-lhe exportar um arquivo do Kig para outros formatos interessantes, como imagens ou arquivos do XFig, LaTeX e arquivos vetoriais em SVG. Isto é bastante útil, uma vez que nem todos os programas suportam ainda o formato de arquivos do Kig.

- O Kig tem um sistema de transformações bastante flexível.

- O Kig pretende ser compatível com os seus concorrentes. É por isso que suporta o formato de arquivos do KGeo, do KSeg e, parcialmente, do Dr.Geo e do Cabri, assim como está planejado o suporte para outros formatos.

Capítulo 7. Créditos e licença
Créditos e licença

# Capítulo 7. Créditos e licença

Autores principais:

Direitos autorais do Kig 2011-2015 David E. Narvaez `(david.narvaez AT computer.org)`

Direitos autorais do Kig 2002-2013 Maurizio Paolini `(paolini AT dmf.unicatt.it)`

Direitos autorais do Kig 2004-2010 Pino Toscano `(pino AT kde.org)`

Direitos autorais do Kig 2002-2005 Dominique Devriese `(devriese AT kde.org)`

Direitos autorais da documentação 2002-2004 Dominique Devriese `(devriese AT kde.org)`.

Direitos autorais da documentação 2004-2005 Pino Toscano `(toscano.pino AT tiscali.it)`.

Revisado por Philip Rodrigues `(phil AT kde.org)`.

Tradução de Marcus Gama `(marcus.gama AT gmail.com)`

Esta documentação é licenciada sob os termos da Licença de Documentação Livre GNU.

Este programa é licenciado sob os termos da Licença Pública Geral GNU.

Apêndice A. Contribuir
Contribuir

# Apêndice A. Contribuir

## Software livre

O Kig é Software Livre. Isto significa que o seu código-fonte está disponível livremente na Internet e poderá ser utilizado, lido, modificado e distribuído por qualquer pessoa.

Contribuir
Contribuir

## Contribuir

O objetivo deste capítulo é explicar-lhe os direitos que a licença do Kig lhe concede. Como em todo Software Livre, você tem a permissão (e é encorajado a isso) para corrigir os problemas que encontrar durante a sua utilização, adicionar funcionalidades que sentir falta ou distribuir o seu programa modificado, e enviar essas modificações para inclusão na distribuição do programa, através das ferramentas de revisão disponíveis para a comunidade KDE.

Se você não tiver certeza dos seus direitos para usar este 'software' ou dos das outras pessoas para usar as modificações que você fizer ao programa, etc., por favor leia a licença. Você poderá encontrá-la no arquivo `COPYING` do pacote de código do Kig ou no link para a licença da janela Sobre o Kig.

Como contribuir?
Como contribuir?

## Como contribuir?

Todas as contribuições são bem-vindas. Se você achar que os ícones são feios ou que o manual precisa ser atualizado ou, ainda, se achar que tem uma macro mesmo muito boa para compartilhar com o resto do mundo, não hesite em mandá-la para o autor. Lembre-se por favor que as suas contribuições serão distribuídas segundo os termos da GPL da GNU; você poderá encontrar os termos da licença no arquivo `COPYING` do pacote de código do Kig e no capítulo de Créditos e licença deste manual.