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 fontes no fim do texto, mas que não são citadas no corpo do artigo, o que compromete a confiabilidade das informações. (desde abril de 2013)
Por favor, melhore este artigo inserindo fontes 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 (11 anos)
Versão estável 1.0
Linguagem 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á 243 semanas e 1 dia

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 é como pode ser visto ao expandir . 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

  1. Miguel Ottina (2009). «Geometría Euclídea y no Euclídea» (PDF) (em espanhol). UNIVERSIDAD NACIONAL DE CUYO. p. 2. Consultado 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». XIII Conferência Sulamericana de Educação Matemática. Consultado 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». www.freiesmagazin.de/. Consultado em 9 de Dezembro de 2013  Verifique data em: |data= (ajuda)

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

Portal A Wikipédia possui os portais: