# El manual del &kig;

## Introducció

El &kig; és una aplicació de geometria interactiva. El seu objectiu és servir per a dues finalitats:

- Permetre als estudiants explorar de manera interactiva les figures i conceptes matemàtics utilitzant l'ordinador.

- Servir com una eina WYSIWYG per a dibuixar figures matemàtiques i incloure-les en altres documents.

Podeu informar dels problemes del &kig; utilitzant l'eina interna d'informes d'error (Ajuda Informa d'un error...).

Donat que el &kig; permet macros i la construcció de llocs geomètrics, és possible que alguns usuaris avançats creïn macros. Si heu creat una macro interessant, penseu que pot ser útil a altra gent, si us plau, obriu una sol·licitud de revisió per al canvi, de manera que el pugui avaluar i incloure'l a la distribució (si ho feu, tindrà els mateixos termes de llicència que el &kig;, la GPL, de manera que altra gent la podrà utilitzar i adaptar amb llibertat).

## Ús bàsic

### Construir objectes

#### Construir punts

Podeu construir punts de diferents maneres:

- Seleccioneu Objectes Punts Punt des de la barra de menús o premeu el botó corresponent de la barra d'eines. Aleshores podreu construir un punt fent clic a la posició desitjada.

  Premeu la tecla &Maj; per a activar un mode de trama, el qual us permetrà establir qualsevol punt en una construcció exactament als punts de la quadrícula.

  De fet, això funciona de la mateixa manera per a construir altres objectes: fent clic a l'entrada desitjada de la barra de menús o el botó de la barra d'eines i seleccionant els elements necessaris per a construir l'objecte.

- Com que necessitareu construir punts sovint, n'hi ha prou fent clic a la posició desitjada de la finestra amb el &BMR; sense necessitat d'anar a cercar cap entrada del menú o botó.

- Podeu construir punts mentre esteu construint altres objectes en segon pla, seleccionant-los de manera opcional per a l'objecte que esteu construint. Per a més informació sobre això, vegeu constructing-other-objects.

Un punt s'està construint Un punt s'està construint

#### Construir altres objectes

Per a construir altres objectes que no siguin punts, normalment es fa escollint l'entrada adequada en el menú Objectes, o fent clic en un botó de la barra d'eines.

Construint un cercle Construint un cercle

Així s'inicia la construcció del tipus d'objecte escollit. Tots aquests tipus requereixen arguments. Per exemple, si seleccioneu la construcció d'un cercle per centre i punt, necessitareu donar dos punts: un per al centre i l'altre com a punt per a on passa la circumferència.

Aquests arguments també són objectes, els quals es poden seleccionar fent-hi clic. Quan passeu el cursor per sobre d'un objecte que podeu utilitzar per a construir un objecte, es mostrarà una imatge preliminar -d'aquesta manera podreu veure com quedarà-. Per a objectes que requereixin punts com a arguments, podeu posar-los a la posició actual del cursor fent clic amb el &BER;.

Podeu cancel·lar la construcció del nou objecte prement el botó &Esc; o fent clic al botó Cancel·la la construcció de la barra d'eines.

Construint un cercle. Construint un cercle

### Seleccionar objectes

Els objectes es poden seleccionar de dues maneres:

- Senzillament fent clic en un objecte causa que se seleccioni, a la vegada que es neteja la selecció actual. Si voleu seleccionar més d'un objecte simultàniament, manteniu premuda la tecla &Ctrl; mentre feu clic sobre els objectes.

- Fent clic i arrossegant sobre un punt buit de la pantalla podreu seleccionar tots els objectes que es trobin dins el rectangle creat. Aquesta acció netejarà la selecció actual. Com en el cas anterior, prement la tecla &Ctrl; podreu mantenir la selecció actual.

Quan teniu més d'un objecte sota el ratolí (indicat per Quin objecte? a la barra d'estat i al cursor del ratolí), podreu escollir fàcilment quin objecte seleccionar o afegir a la selecció. Fent clic amb el &BER; mentre premeu la tecla &Maj; o fent clic amb el &BDR;, obtindreu un menú emergent amb tots els objectes que hi ha sota el ratolí. Aleshores podreu seleccionar el que necessiteu. Com s'ha dit abans, el comportament de la tecla &Ctrl; afectarà la selecció.

Seleccionant objectes Seleccionant objectes

### Moure objectes

Per a moure objectes primer cal que els seleccioneu.

Quan ja teniu els objectes seleccionats, podreu iniciar el moviment amb el &BER;, fent clic i arrossegant-ne un qualsevol. Quan acabeu, senzillament deixeu anar el botó.

En el cas d'alguns tipus d'objecte (especialment els que estan definits per llocs geomètrics), el seu moviment pot resultar lent en màquines antigues. Això és una llàstima, però també inevitable per la gran quantitat de càlculs involucrats.

Si feu clic amb el &BDR; en un dels objectes seleccionats, i escolliu Mou, aleshores en moure el ratolí moureu l'objecte. Quan l'objecte ja estigui a la posició desitjada, un altre clic amb el &BER; aturarà el moviment.

### Suprimir objectes

Per a suprimir objectes, primer cal seleccionar-los, i després fer alguna d'aquestes coses:

- Prémer la tecla ∇.

- Prémer el botó Suprimeix els objectes de la barra d'eines.

- Fer clic amb el &BDR; en un dels objectes, i seleccionar Suprimeix en el menú contextual que apareix.

### Mostrar i ocultar objectes

Al &kig; els objectes es poden ocultar. Això es fa seleccionant-los, fent clic amb el &BDR;, i escollint l'opció Oculta del menú contextual que apareix.

Per a mostrar els objectes, utilitzeu l'opció Edita Mostra-ho tot. Això mostrarà tots els objectes que estiguin ocults.

#### Visió nocturna

La visió nocturna és una manera particular de treballar amb els objectes ocults. Quan moveu o canvieu quelcom en algun dels objectes ocults sense mostrar tots els objectes ocults, el mode de visió nocturna us serà molt profitós.

Bàsicament, permet veure els objectes ocults com si fossin visibles, de manera que els podreu manipular com ho faríeu normalment. En el mode de visió nocturna, els objectes ocults es fan visibles amb color gris.

Per a passar al mode de visió nocturna, utilitzeu Arranjament Posa les ulleres d'infrarojos.

### Fer i desfer

Al &kig; podeu desfer pràcticament tots els canvis que feu en el document. Només cal utilitzar els botons Desfés/Refés a la barra d'eines, el menú Edita o les dreceres de teclat apropiades.

### Mode de pantalla completa

El &kig; també té el mode de pantalla completa. Per a utilitzar-lo, cal fer clic al botó adequat a la barra d'eines, o bé seleccionar Arranjament Mode de pantalla completa.

Per a sortir del mode de pantalla completa, feu clic amb el &BDR; en un lloc que no hi hagi cap objecte i seleccioneu Surt del mode de pantalla completa, o bé premeu la drecera &Ctrl;&Maj;F.

## Els tipus d'objecte del &kig;

El &kig; accepta un gran nombre de tipus d'objecte. Cal tenir en compte que no tots els tipus d'objecte disponibles es mostren a la barra d'eines: hi ha alguns objectes que només podreu construir des del menú Objectes de la barra de menús. Per descomptat que com a tots els programes del &kde;, els continguts de la barra d'eines són configurables. Escolliu Arranjament Configura les barres d'eines... si ho voleu fer.

## Ús avançat

### Menús contextuals

El &kig; té menús contextuals per als seus objectes. Feu clic amb el &BDR; en un objecte per tal de veure el menú contextual. Hi ha moltes opcions: construir altres objectes, establir colors, ocultar, moure o suprimir objectes. Alguns objectes tenen opcions pròpies (&pex;, podeu redefinir alguns punts per a restringir-los a una recta en cas que no ho estiguessin, &etc;). Aquestes opcions són fàcils d'entendre.

Algunes de les operacions al menú contextual d'un objecte necessiten un altre objecte addicional definit com a referència, per exemple:

Girar una forma un nombre donat de graus al voltant d'un punt

- 1. Feu clic a Objectes Angles Angle per tres punts i creeu el vostre angle de gir en algun lloc a la finestra del &kig;, generalment en un lloc no incòmode. Si ho desitgeu, feu clic dret a l'angle i a Afegeix una etiqueta de text Angle en graus.

  2. Feu clic amb el &BDR; sobre l'angle i seleccioneu Estableix la mida i introduïu en el diàleg la nova mida per a aquest angle.

  3. Feu clic sobre el menú Objectes i construïu l'objecte desitjat.

  4. Feu clic dret sobre la forma i seleccioneu Transforma Gira.

  5. Establiu el punt de gir desitjat.

  6. Feu clic sobre l'angle.

  7. La vostra forma girarà!

Traduir un objecte

- 1. Feu clic a Objectes Vectors i segments Vector i construïu l'objecte seleccionant els punts d'inici i final en algun lloc a la finestra del &kig;.

  2. Per a ajustar la longitud i la direcció del vector haureu de modificar el seu punt d'inici i final. Seleccioneu i escolliu Estableix les coordenades... al menú contextual.

  3. Feu clic sobre el menú Objectes i construïu l'objecte desitjat.

  4. Feu clic dret sobre l'objecte i seleccioneu Transforma Translació al menú contextual.

  5. Seleccioneu el vector per on voleu traslladar.

### Menús contextuals del document

Fent clic dret sobre el document (&ead;, no a sobre de cap objecte) se us presentarà un menú emergent que podreu utilitzar per a construir un objecte nou, canviar el sistema de coordenades, mostrar els objectes ocults, ampliar o reduir el document i alternar al mode de pantalla completa.

### Definir macros

Una de les característiques més avançades del &kig; és la seva capacitat de treballar amb macros. Això permet definir nous tipus d'objectes a partir d'altres que ja estan definits.

Per exemple: suposem que voleu crear una macro per a construir un cercle a partir de tres punts. Haureu d'introduir els tres punts i després construir algunes perpendiculars i punts mitjans fins a trobar el centre. Ara ja podeu utilitzar l'ordre existent de Cercle per centre i punt (utilitzant un dels tres punts com a punt per a aquesta ordre). La següent imatge ho deixarà una mica més clar:

Tot fent macros Tot fent macros

Ara toca definir la macro. Seleccioneu l'element de menú Tipus Macro nova..., o feu clic al botó Macro nova... de la barra d'eines. Apareixerà un assistent que us demanarà els objectes donats. En el nostre exemple, aquests són els tres punts. Seleccioneu els tres punts (feu clic per a seleccionar i un altre clic per a desseleccionar) i feu clic al botó Següent per a continuar. Per a acabar, seleccioneu els objectes finals (en el nostre exemple, només el cercle).

L'assistent de macros L'assistent de macros

En completar els passos previs, feu clic al botó Següent per a continuar. Introduïu un nom i, de manera opcional, una descripció del vostre nou tipus, i feu clic al botó Acaba. Ja heu completat la macro.

Per a utilitzar la nova macro, feu clic al seu botó a la barra d'eines o utilitzeu el menú Objectes. Construir un objecte de macro és exactament el mateix que construir qualsevol altre objecte.

Fent servir el nou tipus Fent servir el nou tipus

### Treballar amb tipus

Com heu vist en el capítol anterior, el &kig; permet que creeu els vostres propis tipus d'objectes. El &kig; també se'n preocupa de desar aquest nou tipus a la sortida i de llegir-lo en arrencar. No cal doncs, que deseu o carregueu manualment les definicions de macros. Així i tot, el &kig; us permet fer més coses amb les macros. Si escolliu l'opció Tipus Gestiona els tipus... del menú, veureu un diàleg on podreu editar els vostres tipus. Això us permetrà modificar els existents, suprimir els que no s'hauran de fer servir més, exportar-los a un fitxer o fins i tot carregar-los des d'un fitxer.

Diàleg d'edició de tipus El diàleg d'edició de tipus

### Etiquetes de text

El &kig; permet que afegiu etiquetes de text a una construcció. Això és molt útil per a afegir noms, explicacions o altre text a les construccions. El &kig;, a més, pot mostrar informació variable pertanyent als objectes (és a dir, «propietats»).

Per a començar a construir una etiqueta de text n'hi ha prou amb prémer el botó Etiqueta de text de la barra d'eines del &kig;, o bé, seleccionar l'element de menú Objectes Altres Etiqueta de text.

Després, podreu escollir un lloc per a l'etiqueta. Podeu escollir una posició aleatòria a la pantalla o bé «adjuntar» l'etiqueta a un objecte.

Adjuntant l'etiqueta a un cercle... Ajuntant l'etiqueta a un cercle...

Després de seleccionar on voleu posar l'etiqueta, apareix un diàleg. Aquí és on podreu escriure el text que voleu a la nova etiqueta, i fer clic al botó Acaba. Ara hauríeu de veure l'etiqueta en el document.

El diàleg de l'etiqueta de text El diàleg de l'etiqueta de text

L'exemple anterior ha estat senzill i només de text. Malgrat això, també és possible mostrar informació variable dels objectes (&pex;, podeu construir una etiqueta amb el text «Aquest segment mesura %1 unitats de longitud.» on %1 serà substituït dinàmicament amb la longitud del segment especificat).

Per a fer això, escriviu un text amb les variables de substitució (%1, %2, &etc;) corresponents. Aleshores, premeu el botó Següent per a continuar. Si voleu modificar el text o les variables, podeu tornar enrere amb el botó Enrere.

Ara l'assistent us mostrarà el text que heu escrit amb les variables de substitució reemplaçades per alguna cosa com argument 1. Per a connectar una propietat amb l'argument, primer heu de fer clic sobre l'argument. Després, a l'objecte del qual en vulgueu la propietat, i finalment, seleccionar la propietat en el menú emergent que apareix. Per exemple, en el cas anterior, hauríeu de fer clic a argument 1, fer clic al segment corresponent a la finestra principal del &kig;, i seleccionar la propietat longitud. Després ja podreu omplir la resta de parts variables, o bé seleccionar una altra propietat que vulgueu modificar. Quan ho teniu a punt, feu clic al botó Acaba per a completar la construcció de l'etiqueta de text.

Seleccionar una propietat per a una part variable Seleccionar una propietat per a una part variable

### Llocs geomètrics

El &kig; permet l'ús de llocs geomètrics. Un lloc geomètric es defineix matemàticament com el conjunt de tots els punts o rectes que compleixen o venen determinats per condicions específiques, com en el cas d'un cercle que és el «lloc geomètric dels punts que equidisten d'un punt donat». Veiem un exemple de com utilitzar els llocs geomètrics amb el &kig;:

Considereu la següent construcció geomètrica. Dibuixem un cercle i un punt que només podeu moure al llarg de la seva circumferència (construïu aquest punt posicionant el cursor sobre un cercle, i fent clic amb el &BMR;. Si aleshores proveu de moure aquest punt veureu que només el podreu moure seguint el cercle). Després dibuixem un segment que vagi des d'aquest punt cap al centre del cercle i el seu punt mitjà.

Una construcció senzilla fent servir llocs geomètrics Una construcció senzilla fent servir llocs geomètrics

Ara, si moveu el punt restringit al cercle, veureu que el segon punt es mou amb ell. Si tinguéssiu un llapis en aquest segon punt, i moveu el primer al llarg de tot el cercle, quedaria dibuixat un nou cercle de radi la meitat que el primer. El camí que segueix el segon punt és el lloc geomètric.

En realitat, construir el lloc geomètric d'un punt és molt senzill. Feu clic al botó Lloc geomètric de la barra d'eines, o seleccioneu l'element de menú Objectes Altres Lloc geomètric. Aleshores seleccioneu el punt restringit al cercle com el punt a moure (apareixerà el text Punt a moure quan passeu el cursor per sobre seu), i l'altre com a Punt depenent. Aleshores es mostrarà el lloc geomètric del punt depenent.

## Crear scripts

El &kig; permet crear tipus d'objectes personalitzats utilitzant el llenguatge Python per a crear scripts. Aquesta és una característica molt avançada, i només coneixem un altre programa de geometria interactiva que tingui una funció similar (el programa &drgeo; del GNOME).

La creació de scripts en Python en el &kig; bàsicament us permetrà crear els vostres propis objectes a partir d'altres objectes pare. Per exemple, si sou un professor de matemàtiques, i disposeu d'un mètode atractiu de calcular algun punt interessant d'una cònica, en lloc d'embolicar-vos amb construccions complexes i macros, podríeu escriure en el codi Python com s'ha de calcular el punt i llavors el &kig; el mostrarà.

Suposem que no esteu al cas de la integració en el &kig; del tipus «Punt mitjà», i que voleu utilitzar el punt mitjà de dos punts donats. Aleshores cal que feu clic al botó Script en Python de la barra d'eines, o bé que seleccioneu l'element de menú Objectes Altres Script en Python de la barra de menús. Se us presentarà un assistent que us permetrà procedir.

L'assistent objecte de script L'assistent objecte de script

El primer que heu de fer és seleccionar els arguments per a l'objecte de script. En el nostre exemple, això són els dos punts dels quals volem mostrar el punt mitjà. Seleccioneu-los a la finestra principal del &kig; i feu clic al botó Següent per a continuar.

Ara teniu un quadre d'edició per a editar text on podeu introduir el codi del vostre objecte de script. Hi trobareu una mica de codi i alguns comentaris. És important que us assegureu que el vostre codi és codi en Python vàlid. Els qui estiguin familiaritzats amb el Python notaran que en aquest moment estem definint una funció de Python anomenada `calc`. Per tant, és necessari que recordem les normes de Python a l'hora de definir funcions. Per exemple, cada línia de la funció haurà de començar amb una tabulació. La primera línia que no comenci amb una tabulació determinarà el final de la definició de la funció.

La funció de Python que volem definir s'anomena `calc`, i en el nostre cas accepta dos arguments. Aquests són els dos objectes que heu seleccionat a la pantalla anterior. Necessiteu tants arguments com objectes hàgiu seleccionat. S'anomenen `arg1` i `arg2`, però, si ho desitgeu, en podeu canviar els noms per altres més significatius.

A la funció, podeu fer tota mena de càlculs que considereu necessaris, utilitzant els dos arguments sempre que calgui. Al final haureu de retornar l'objecte que voleu definir. En el nostre cas, això és un objecte `Point`. Els dos arguments també són objectes `Point` i podem utilitzar la funció `Point.coordinate()` per a definir les coordenades dels dos punts donats.

Els càlculs necessaris en el nostre exemple són molt senzills. Només cal sumar els dos conjunts de coordenades i dividir-ho per dos. Després construïm un nou punt utilitzant el resultat. El codi en Python que es necessita és:

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

Escriure el codi Escriure el codi per al punt mitjà a l'assistent objecte de script.

Si ara feu clic al botó Acaba, el nou objecte apareixerà al document del &kig;. Si moveu un dels punts, el nou punt també es mourà. D'aquesta manera es poden integrar objectes més potents, se us anima a intentar-ho.

Un objecte de script construït El nou objecte de script construït.

Tots els objectes del &kig; es poden utilitzar en el codi en Python. Com hem vist anteriorment, els punts són de la classe `Point`, i podeu utilitzar, &pex;, el mètode `Point.coordinate()`. També podeu retornar tota mena d'objectes, no només objectes `Point`. Moltes altres classes i mètodes estan disponibles en el codi en Python del &kig;, i en teniu una referència més completa a la pàgina web del &kig;.

## Característiques del &kig;

- El &kig; és una aplicació de codi lliure. Això vol dir que teniu llibertat per a utilitzar-lo i modificar-lo tant com vulgueu. La distribució del &kig; està subjecte a algunes restriccions, bàsicament que tothom ha de tenir els mateixos drets per a utilitzar-lo, incloent-hi les vostres modificacions, que vós i jo.

  Els programes de codi lliure es desenvolupen amb un esperit molt obert, i els seus desenvolupadors acostumen a ser molt receptius als comentaris que se'ls fa arribar. Per tant, si teniu preguntes, queixes o qualsevol altra cosa sobre el &kig;, si us plau, contacteu amb la llista de correu a kde-edu@kde.org.

- El &kig; és una aplicació KPart, això vol dir que la podeu incloure en altres programes del &kde;. Si obriu un fitxer `.kig` amb el &konqueror;, es pot obrir directament a la pantalla del &konqueror; sense la necessitat d'iniciar cap altre programa.

- Treballar amb el &kig; hauria de ser molt intuïtiu. Construir objectes és senzill i interactiu, mostrant resultats preliminars, &etc; Moure, seleccionar i construir es fa de la manera que un s'esperaria. La possibilitat de desfer, també és molt intuïtiva.

- El &kig; accepta la definició de macros d'una manera molt intuïtiva. Aquests objectes es presenten com a objectes normals. Es desen en sortir i es carreguen en entrar, i per tant no es perden en tancar el programa. Podeu gestionar aquests objectes amb el diàleg Gestiona els tipus (vegeu working-with-types). També els podeu exportar, importar, editar o suprimir.

- El &kig; desa tota les dades en un format &XML; ben clar.

- El &kig; permet la construcció de llocs geomètrics.

- El &kig; permet exportar el fitxer &kig; a alguns formats interessants, com ara imatges, fitxers XFig, LaTeX, i imatges vectorials &SVG;. Això és més útil en la mesura que no tots els altres programes accepten encara el format de fitxer del &kig;.

- El &kig; té un sistema de transformació molt flexible.

- El &kig; procura ser compatible amb els seus competidors. És per això que accepta els formats de fitxer &kgeo;, &kseg; i parcialment &drgeo; i &cabri;. A més de tenir en projecte altres formats.

## Crèdits i llicència

Autors principals:

&kig; copyright 2011-2015 David E. Narvaez david.narvaez@computer.org

&kig; copyright 2002-2013 Maurizio Paolini paolini@dmf.unicatt.it

&kig; copyright 2004-2010 Pino Toscano pino@kde.org

&kig; copyright 2002-2005 Dominique Devriese devriese@kde.org

Copyright de la documentació 2002-2004 Dominique Devriese devriese@kde.org.

Copyright de la documentació 2004-2005 Pino Toscano toscano.pino@tiscali.it.

Revisada per en &Philip.Rodrigues; &Philip.Rodrigues.mail;.

Traductor de la documentació: Xavier Batlle i Pèlach i &credits.Antoni.Bella;

&underFDL; &underGPL;

## Col·laboracions

### Programari lliure

El &kig; és Programari lliure. Això vol dir que el seu codi font és de lliure accés i disponible des d'internet, tothom el pot fer servir, llegir, modificar i distribuir.

### Col·laboracions

En aquest capítol vull remarcar-vos (a l'usuari) els drets que us dona la llicència del &kig;. Com en tot el programari lliure, teniu permís (i us animem) per a arreglar els problemes que hi trobeu, afegir-hi característiques que hi trobeu a faltar, distribuir el programa modificat i envieu aquestes modificacions per a la seva inclusió a través de les eines de revisió disponibles per a la comunitat del &kde;.

Si teniu algun dubte sobre els drets per a utilitzar aquest programari, o que d'altra gent empri les modificacions que hi feu, si us plau, llegiu la llicència. La trobareu al fitxer `COPYING` en el codi font del &kig; o a l'enllaç de la llicència en el diàleg Quant al &kig;.

### Com col·laborar?

Totes les col·laboracions són benvingudes. Si no us agraden les icones, o penseu que al manual li cal una actualització, o bé teniu aquella supermacro que voleu compartir amb el món, no dubteu a enviar-me-la. Si us plau, cal tenir en compte que les vostres col·laboracions seran distribuïdes sota els termes de llicència GPL de &GNU;, trobareu els termes d'aquesta llicència en el fitxer `COPYING` en el codi del &kig;, i en el capítol Crèdits i llicència d'aquest manual.

&documentation.index;