Kig

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Text document with red question mark.svg
Este artigo ou secção contém uma ou mais fontes no fim do texto, mas nenhuma é citada no corpo do artigo, o que compromete a confiabilidade das informações. (desde abril de 2013)
Por favor, melhore este artigo introduzindo notas de rodapé citando as fontes, inserindo-as no corpo do texto quando necessário.
Kig
Logótipo
Captura de tela
Captura de tela do Kig
Desenvolvedor KDE
Lançamento 2 de agosto de 2006 (7 anos)
Versão estável 1.0
Escrito em C++ (Qt)
Sistema operativo tipo Unix, OS X, Windows
Gênero(s) Software de Geometria Dinâmica
Licença GPL
Página oficial edu.kde.org/kig/ (em inglês) , acessado pela última vez há 52 semanas e 2 dias

Kig é um software livre de Geometria Dinâmica que é parte do Projeto Educacional do KDE. Ele possui algumas facilidades para a criação de scripts em Python, bem como a criação de macros a partir de construções existentes.

O software é bastante versátil, podendo ser utilizado não apenas na escola básica, no ensino superior [1] , na educação à distância [2] e, também, para a abordagem de assuntos não diretamente relacionados à Geometria, como os números complexos [3] .

Importação e exportação[editar | editar código-fonte]

O Kig pode importar arquivos criados pelo DrGeo e pelo Cabri Géomètre, bem como seu próprio formato de arquivo, que é codificado em XML. O programa pode exportar imagens nos formatos de arquivo LaTeX e SVG.

Objetos[editar | editar código-fonte]

O Kig pode operar com qualquer objeto clássico da Geometria, mas também com:

  1. O centro de curvatura de uma curva;
  2. A dilatação, a afinidade genérica, a inversão, a aplicação projetiva, a homografia e a homologia harmônica;
  3. A hipérbole com a assíntota dada;
  4. As Curvas de Bézier (2º e 3º graus);
  5. A reta polar de um ponto e o Pólo de uma reta com respeito a uma seção cônica;
  6. As assíntotas de uma hipérbole;
  7. A curva cúbica através de 9 pontos;
  8. A curva cúbica com um ponto duplo através de 6 pontos;
  9. A curva cúbica com uma cúspede através de 4 pontos.

Linguagem de script[editar | editar código-fonte]

Interior da figura[editar | editar código-fonte]

O outro objeto que está disponível dentro do Kig, é um script em Python. Ele pode aceitar objetos do Kig como variáveis e sempre retornar um objeto.

Por exemplo, se já existe um objeto numérico no interior da figura, como 3, o seguinte objeto em Python pode produzir seu quadrado (9):

def square( arg1 ):
 return DoubleObject( arg1.value()**2 )

As variáveis são sempre chamadas arg1, arg2, etc. na ordem em que elas são clicadas. Aqui existe apenas uma variável arg1 e seu valor numérico é obtido com arg1.value().

Se agora alguém quiser implementar o quadrado de um número complexo (representado por um ponto no Diagrama de Argand, o objeto que tem de ser selecionado na criação do script precisa necessariamente ser um ponto. O script é:

def csquare( arg1 ):
        x=arg1.coordinate().x
        y=arg1.coordinate().y
        z=x*x-y*y
        y=2*x*y
        x=z
        return Point( Coordinate(x,y) )

A abscissa do ponto representando o quadrado do número complexo é x^2-y^2 como pode ser visto ao expandir (x+iy)^2=x^2-y^2+i(2xy). Coordinate(x,y) cria uma lista Python feita das duas coordenadas do novo ponto. E Point cria o ponto cujas coordenadas são precisamente dadas pela lista.

Mas um objeto Python dentro de uma figura pode apenas criar um objeto e, para figuras mais complexas, alguém deve construí-la com um script:

Figura criada por um script[editar | editar código-fonte]

O Kig vem com um pequeno programa (escrito em Python) chamado pikyg.py que pode:

  1. carregar um script em Python, digamos MeuScript.py
  2. construir uma figura do Kig, descrita por esse script
  3. abrir o Kig e exibir a figura.

Abaixo podemos ver como um Triângulo de Sierpinski pode ser feito (através de um sistema de função iterada) com pykig:

from random import *
kigdocument.hideobjects()
A=Point(0,2)
A.show()
B=Point(-2,-1)
B.show()
C=Point(2,-1)
C.show()
M=Point(.1,.1)
for i in range(1,1000):
  d=randrange(3)
  if d==0:
    s=Segment(A,M)
    M=s.midpoint()
  if d==1:
    s=Segment(B,M)
    M=s.midpoint()
  if d==2:
    s=Segment(C,M)
    M=s.midpoint()
  M.show()

Ligações externas[editar | editar código-fonte]

Referências[editar | editar código-fonte]

  1. Miguel Ottina (2009). Geometría Euclídea y no Euclídea (PDF) (em es) pp. 2. UNIVERSIDAD NACIONAL DE CUYO. Página visitada em 9 de Dezembro de 2013.
  2. Iara Letícia Leite de Oliveira (Junho 2011). Educação a Distância: uma proposta de ensino para Geometria (pdf). XIII Conferência Sulamericana de Educação Matemática. Página visitada em 9 de Dezembro de 2013. ""Nesse sentido, estamos desenvolvendo atividades exploratórias, utilizando o software GeoGebra, mas nossa intenção é fazer uso também de outros ambientes computacionais – como o Kig e o LOGO""
  3. Tobias G. Pfeiffer (12 2009). Erstellen geometrischer Skizzen mit kig (html). http://www.freiesmagazin.de/.+Página visitada em 9 de Dezembro de 2013.

Ver também[editar | editar código-fonte]

Portal A Wikipédia possui os portais: