summaryrefslogtreecommitdiffstats
path: root/tde-i18n-pt/docs/tdeedu/kstars/dcop.docbook
diff options
context:
space:
mode:
Diffstat (limited to 'tde-i18n-pt/docs/tdeedu/kstars/dcop.docbook')
-rw-r--r--tde-i18n-pt/docs/tdeedu/kstars/dcop.docbook248
1 files changed, 248 insertions, 0 deletions
diff --git a/tde-i18n-pt/docs/tdeedu/kstars/dcop.docbook b/tde-i18n-pt/docs/tdeedu/kstars/dcop.docbook
new file mode 100644
index 00000000000..890ce1dedc2
--- /dev/null
+++ b/tde-i18n-pt/docs/tdeedu/kstars/dcop.docbook
@@ -0,0 +1,248 @@
+<chapter id="dcop">
+<title
+>Programar com o KStars: A Interface de DCOP</title>
+<para
+>Um dos objectivos do &kstars; é possibilitar a capacidade de reproduzir comportamentos complicados num programa. Isto permitir-lhe-á criar <quote
+>viagens virtuais</quote
+> aos céus, e permitirá aos professores construírem demonstrações para aulas de modo a ilustrar certos conceitos astronómicos. Já é possível criar esses programas ('scripts') para o &kstars;, ainda que nem todas as funções desejadas tenham sido incluídas. Também, embora tenhamos eventualmente um construtor de 'scripts' gráfico, os programas poderão precisar de ser feitos à mão. Este capítulo irá explicar como criar esses 'scripts' do &kstars;. </para>
+<para
+>A arquitectura do &kde; fornece a plataforma necessária para as aplicações programáveis com a interface do <abbrev
+>DCOP</abbrev
+>. O <abbrev
+>DCOP</abbrev
+> significa <quote
+>Desktop Communication Protocol</quote
+>; através do <abbrev
+>DCOP</abbrev
+>, as aplicações do &kde; poderão ser controladas por outras aplicações, a partir de uma linha de comandos de terminal ou através de um ficheiro de texto. </para>
+
+<sect1 id="dcop-interface">
+<title
+>Funções DCOP</title>
+<para
+>A interface de <abbrev
+>DCOP</abbrev
+> do &kstars; inclui as seguintes funções: <itemizedlist>
+<listitem
+><para
+><function
+> lookTowards( const QString direccao )</function
+>: Aponta o foco da visualização para uma direcção indicada pelo argumento. Este poderá ser o nome de qualquer objecto no céu ou uma das palavras de direcção: 'zenith' - zénite (ou 'z'), 'north' - norte ('n'), 'northeast' - nordeste (ne), 'east' - este ('e'), 'southeast' - sueste ('se'), 'south' - sul ('s'), 'southwest' - sudoeste ('sw'), 'west' - oeste ('w'), 'northwest' - noroeste ('nw'). </para
+></listitem>
+
+<listitem
+><para
+><function
+> setRaDec( double ar, double dec )</function
+>: Aponta o foco da visualização para as coordenadas equatoriais indicadas. </para
+></listitem>
+
+<listitem
+><para
+><function
+> setAltAz(double alt, double az)</function
+>: Aponta o foco da visualização para as coordenadas horizontais indicadas. </para
+></listitem>
+
+<listitem
+><para
+><function
+> zoomIn()</function
+>: Aumentar o nível de ampliação do ecrã. </para
+></listitem>
+
+<listitem
+><para
+><function
+> zoomOut()</function
+>: Diminuir o nível de ampliação do ecrã. </para
+></listitem>
+
+<listitem
+><para
+><function
+> defaultZoom()</function
+>: Repõe a visualização no nível de Zoom = 3 (o nível por omissão). </para
+></listitem>
+
+<listitem
+><para
+><function
+> setLocalTime(int ano, int mes, int dia, int hr, int min, int seg)</function
+>: Configura o relógio da simulação para a data e hora indicadas. </para
+></listitem>
+
+<listitem
+><para
+><function
+> waitFor( double t )</function
+>: Pára durante 't' segundos antes de continuar com os comandos subsequentes do programa. </para
+></listitem>
+
+<listitem
+><para
+><function
+> waitForKey( const QString t )</function
+>: Pára a execução do programa até que o utilizador carregue na tecla indicada. Nesta altura, você não poderá indicar combinações de teclas (como o <keycombo action="simul"
+>&Ctrl;<keycap
+>C</keycap
+></keycombo
+>); use apenas teclas simples. Você poderá escrever <quote
+>space</quote
+> para indicar a barra de espaços. </para
+></listitem>
+
+<listitem
+><para
+><function
+> setTracking( bool seguir )</function
+>: Indica se o modo de seguimento está activo ou não. </para
+></listitem>
+
+<listitem
+><para
+><function
+> changeViewOption( const QString opcao, const QString valor )</function
+>: Ajusta uma opção de visualização. Existem dezenas de opções disponíveis; basicamente tudo o que você poderá alterar na <guilabel
+>Configurar a Janela do &kstars;</guilabel
+> poderá também aqui ser alterado. O primeiro argumento é o nome da opção (os nomes são extraídos a partir do ficheiro de configuração <filename
+>kstarsrc</filename
+>) e o segundo argumento é o valor desejado. O processador dos argumentos está desenhado para ser robusto, por isso se você lhe passar dados inválidos, ele irá falhar de forma ordeira. </para
+></listitem>
+
+<listitem
+><para
+><function
+> setGeoLocation( const QString cidade, const QString provincia, const QString pais )</function
+>: Muda a localização de observação para a cidade indicada. Se não existir nenhuma cidade que corresponda ao texto dos argumentos, então não acontecerá nada. </para
+></listitem>
+
+<listitem
+><para
+><function
+> stop()</function
+> [relógio]: Pára o relógio da simulação. </para
+></listitem>
+
+<listitem
+><para
+><function
+> start()</function
+> [relógio]: Inicia o relógio da simulação. </para
+></listitem>
+
+<listitem
+><para
+><function
+> setScale(float esc)</function
+> [relógio]: Configura a taxa do relógio de simulação. O esc=1,0 significa tempo-real; o 2,0 é duas vezes mais rápido que o tempo-real, etc. </para
+></listitem>
+</itemizedlist>
+</para>
+</sect1>
+
+<sect1 id="dcop-test">
+<title
+>Testar as Funções do DCOP</title>
+<para
+>Você poderá tentar as funções de DCOP muito facilmente com o programa <application
+>kdcop</application
+>. Quando você correr o <application
+>kdcop</application
+>, irá ver uma árvore com todos os programas em execução; se o &kstars; estiver a correr, ele aparecerá na lista. A maioria das funções do <abbrev
+>DCOP</abbrev
+> estão enumeradas no cabeçalho <quote
+>KStarsInterface</quote
+>, mas as funções do relógio estão definidas em <quote
+>clock</quote
+>. Se fizer duplo-click numa função qualquer, irá executá-la. Se a função precisar de argumentos, irá aparecer uma janela na qual poderá introduzir os valores. </para>
+</sect1>
+
+<sect1 id="dcop-script">
+<title
+>Criar um Programa de DCOP</title>
+<para
+>As funções do <abbrev
+>DCOP</abbrev
+> também podem ser invocadas a partir da linha de comandos do UNIX e estas poderão ser encapsuladas num programa. Iremos criar um programa de exemplo que muda para coordenadas equatoriais, aponta a visualização para a Lua, amplia um pouco e acelera o relógio para uma hora por segundo. Depois de seguir a Lua durante 20 segundos, o relógio é posto em pausa e a visualização reduz a ampliação. Você poderá usar este programa como um modelo para criar novos programas. Tentaremos listar o programa inteiro primeiro e depois explicar as suas várias componentes. </para>
+<para>
+<programlisting
+>#!/bin/bash
+#Programa do KStars: Seguir a Lua!
+#
+KSTARS=`dcopfind -a 'kstars*'`
+PRINCIPAL=KStarsInterface
+RELOGIO=relógio#1
+dcop $KSTARS $PRINCIPAL changeViewOption UseAltAz false
+dcop $KSTARS $PRINCIPAL lookTowards Moon
+dcop $KSTARS $PRINCIPAL defaultZoom
+dcop $KSTARS $PRINCIPAL zoomIn
+dcop $KSTARS $PRINCIPAL zoomIn
+dcop $KSTARS $PRINCIPAL zoomIn
+dcop $KSTARS $PRINCIPAL zoomIn
+dcop $KSTARS $PRINCIPAL zoomIn
+dcop $KSTARS $RELOGIO setScale 3600.
+dcop $KSTARS $RELOGIO start
+dcop $KSTARS $PRINCIPAL waitFor 20.
+dcop $KSTARS $RELOGIO stop
+dcop $KSTARS $PRINCIPAL defaultZoom
+##
+</programlisting>
+</para>
+<para
+>Grave este programa num ficheiro. O ficheiro poderá ter o nome que você desejar; nós sugerimos algo descritivo do tipo <filename
+>seguir_lua.kstars</filename
+>. Escreva então o seguinte comando para colocar o programa como executável: <userinput
+><command
+>chmod</command
+> <option
+>a+x</option
+> <parameter
+>seguir_lua.kstars</parameter
+> </userinput
+>. O programa poderá então ser executado em qualquer altura se escrever <userinput
+><command
+>./seguir_lua.kstars</command
+></userinput
+> na pasta que contém o programa. Tenha em atenção que o programa só irá funcionar se você tiver uma instância do &kstars; já em execução. Você poderá usar o comando <command
+>dcopstart</command
+> num programa para lançar uma nova instância do &kstars;. </para>
+<para
+>Agora, a explicação do programa. A linha de topo identifica o ficheiro como um programa da linha de comandos <command
+>BASH</command
+>. As duas linhas seguintes são <firstterm
+>comentários</firstterm
+> (qualquer linha que comece por <quote
+>#</quote
+> é um comentário e é ignorado pela linha de comandos). As três linhas seguintes definem algumas variáveis de conveniência que serão usadas posteriormente. A variável <varname
+>KSTARS</varname
+> identifica o processo do &kstars; actualmente em execução, usando o comando <command
+>dcopfind</command
+>. O <varname
+>PRINCIPAL</varname
+> e o <varname
+>RELOGIO</varname
+> identificam as duas interfaces de <abbrev
+>DCOP</abbrev
+> associadas ao &kstars;. </para>
+<para
+>O resto do programa é a lista efectiva de chamadas de <abbrev
+>DCOP</abbrev
+>. O primeiro comando indica à visualização para usar as coordenadas equatoriais, usando a opção <quote
+>UseAltAz</quote
+> igual a <quote
+>false</quote
+> (mais uma vez, você poderá ver uma lista com todas as opções que o <quote
+>changeViewOption</quote
+> poderá usar se ver o seu ficheiro de configuração <filename
+>kstarsrc</filename
+>). O próximo comando centra a visualização na Lua, activando automaticamente o seu seguimento. É então definido o nível de zoom por omissão, seguido então de uma ampliação para 5x. De seguida, a a escala temporal do relógio é configurada para 1 hora por segundo (3 600 segundos é uma hora), dando início depois ao relógio (se não estiver já a correr). A próxima linha interrompe o programa durante 20 segundos, enquanto a Lua é seguida à medida que se mexe no céu. Finalmente, o relógio é parado e o nível de ampliação é reposto no seu valor original. </para>
+<para
+>Esperamos que você goste das capacidades de programação do KStars. Se você criar um programa interessante, por favor envie-nos por e-mail para <email
+>kstars@30doradus.org</email
+>; nós gostaríamos de ver o que você fez e poder publicar alguns programas na nossa página Web. Também, se você tiver algumas ideias sobre como melhorar a programação (ou qualquer parte do &kstars;), por favor comunique-nos isso em <email
+>kstars-devel@lists.sourceforge.net</email
+> ou submeta um item de desejo no 'bugzilla'. </para>
+</sect1>
+</chapter>
+