Kig
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,[2] na educação à distância[3] e, também, para a abordagem de assuntos não diretamente relacionados à Geometria, como os números complexos.[4] Importação e exportaçãoO 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. ObjetosO Kig pode operar com qualquer objeto clássico da Geometria, mas também com:
Linguagem de scriptInterior da figuraO 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 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 . 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 scriptO Kig vem com um pequeno programa (escrito em Python) chamado pikyg.py que pode:
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()
Ver tambémNotas
Referências
Ligações externas |