summaryrefslogtreecommitdiffstats
path: root/tde-i18n-pt/docs/tdeedu/kstars/scriptbuilder.docbook
diff options
context:
space:
mode:
Diffstat (limited to 'tde-i18n-pt/docs/tdeedu/kstars/scriptbuilder.docbook')
-rw-r--r--tde-i18n-pt/docs/tdeedu/kstars/scriptbuilder.docbook436
1 files changed, 51 insertions, 385 deletions
diff --git a/tde-i18n-pt/docs/tdeedu/kstars/scriptbuilder.docbook b/tde-i18n-pt/docs/tdeedu/kstars/scriptbuilder.docbook
index 44c0801da7b..ab76872a6fa 100644
--- a/tde-i18n-pt/docs/tdeedu/kstars/scriptbuilder.docbook
+++ b/tde-i18n-pt/docs/tdeedu/kstars/scriptbuilder.docbook
@@ -1,444 +1,113 @@
<sect1 id="tool-scriptbuilder">
-<title
->A Ferramenta de Construção de 'Scripts'</title>
-<indexterm
-><primary
->Ferramentas</primary>
-<secondary
->Construtor de 'Scripts'</secondary>
+<title>A Ferramenta de Construção de 'Scripts'</title>
+<indexterm><primary>Ferramentas</primary>
+<secondary>Construtor de 'Scripts'</secondary>
</indexterm>
-<para
->As aplicações do KDE podem ser controladas externamente a partir de outro programa, de uma linha de comandos da consola ou a partir de um 'script', usando o Desktop COmmunication Protocol (<abbrev
->DCOP</abbrev
->). O KStars tira partido desta funcionalidade para permitir que comportamentos mais complexos possam ser usados em 'scripts' e reproduzidos em qualquer altura. Isto pode ser usado, por exemplo, para criar uma demonstração para uma aula que ilustre um conceito astronómico. </para>
-<para
->O problemas com os programas do DCOP é que escrevê-los é de certa forma uma espécie de programação, o que poderá ser uma tarefa complicada para aqueles que não têm experiência nenhuma em programação. A Ferramenta de Construção de 'Scripts' oferece uma interface <abbrev
->GUI</abbrev
-> para criar programas ou 'scripts' de DCOP, facilitando a criação de programas complexos. </para>
+<para>As aplicações do KDE podem ser controladas externamente a partir de outro programa, de uma linha de comandos da consola ou a partir de um 'script', usando o Desktop COmmunication Protocol (<abbrev>DCOP</abbrev>). O KStars tira partido desta funcionalidade para permitir que comportamentos mais complexos possam ser usados em 'scripts' e reproduzidos em qualquer altura. Isto pode ser usado, por exemplo, para criar uma demonstração para uma aula que ilustre um conceito astronómico. </para>
+<para>O problemas com os programas do DCOP é que escrevê-los é de certa forma uma espécie de programação, o que poderá ser uma tarefa complicada para aqueles que não têm experiência nenhuma em programação. A Ferramenta de Construção de 'Scripts' oferece uma interface <abbrev>GUI</abbrev> para criar programas ou 'scripts' de DCOP, facilitando a criação de programas complexos. </para>
<sect2 id="sb-intro">
-<title
->Introdução ao Construtor de 'Scripts'</title>
+<title>Introdução ao Construtor de 'Scripts'</title>
-<para
->Antes de explicar como usar o Construtor de 'Scripts', será dada uma introdução muito breve a todos os componentes <abbrev
->GUI</abbrev
->; para mais informações, use a função de "O Que É Isto?". </para>
+<para>Antes de explicar como usar o Construtor de 'Scripts', será dada uma introdução muito breve a todos os componentes <abbrev>GUI</abbrev>; para mais informações, use a função de "O Que É Isto?". </para>
<screenshot>
-<screeninfo
->A Ferramenta de Construção de 'Scripts' </screeninfo>
+<screeninfo>A Ferramenta de Construção de 'Scripts' </screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="scriptbuilder.png" format="PNG"/>
</imageobject>
<textobject>
- <phrase
->Ferramenta de Construção de 'Scripts'</phrase>
+ <phrase>Ferramenta de Construção de 'Scripts'</phrase>
</textobject>
</mediaobject>
</screenshot>
-<para
->O Construtor de 'Scripts' é apresentado na imagem acima. A área à esquerda é a do <firstterm
->'Script' Actual</firstterm
->; ela mostra a lista dos comandos que compõem o 'script' em elaboração. A zona da direita é o <firstterm
->Navegador de Funções</firstterm
->; ela mostra uma lista com todas as funções de 'scripts' disponíveis. Por baixo do Navegador de Funções, existe um pequeno painel que irá mostrar uma documentação curta sobre a função seleccionada no Navegador de Funções. O painel por baixo do 'Script' Actual é o <firstterm
->painel dos Argumentos da Função</firstterm
->; quando for seleccionada uma função no 'Script Actual', este painel irá conter os itens para indicar os valores dos argumentos que a função seleccionada necessita. </para
-><para
->Ao longo do topo da janela, existe uma fila de botões que lidam com o 'script' como um todo. Da esquerda para a direita, eles são: <guibutton
->Novo 'Script'</guibutton
->, <guibutton
->Abrir um 'Script'</guibutton
->, <guibutton
->Gravar 'Script'</guibutton
->, <guibutton
->Gravar o 'Script' Como...</guibutton
-> e <guibutton
->Testar 'Script'</guibutton
->. A função destes botões deverá ser óbvia, talvez exceptuando o último botão. Se carregar em <guibutton
->Testar 'Script'</guibutton
->, o 'script' actual tentará ser executado na janela principal do KStars. Você deverá mover a janela do Construtor do 'Script' da frente antes de carregar nisto, para que possa ver os resultados. </para
-><para
->No centro da janela, existe uma coluna de botões que operam em funções individuais do 'script'. De cima para baixo, estas são: <guibutton
->Adicionar Função</guibutton
->, <guibutton
->Remover Função</guibutton
->, <guibutton
->Copiar Função</guibutton
->, <guibutton
->Subir</guibutton
-> e <guibutton
->Descer</guibutton
->. O <guibutton
->Adicionar Função</guibutton
-> adiciona a função seleccionada de momento no Navegador de Funções na zona do 'Script' Actual (você poderá também adicionar uma função se fizer duplo-click nela). O resto dos botões lidam com a função seleccionada no 'Script Actual', removendo-a, duplicando-a ou mudando a sua posição no 'script' actual. </para>
+<para>O Construtor de 'Scripts' é apresentado na imagem acima. A área à esquerda é a do <firstterm>'Script' Actual</firstterm>; ela mostra a lista dos comandos que compõem o 'script' em elaboração. A zona da direita é o <firstterm>Navegador de Funções</firstterm>; ela mostra uma lista com todas as funções de 'scripts' disponíveis. Por baixo do Navegador de Funções, existe um pequeno painel que irá mostrar uma documentação curta sobre a função seleccionada no Navegador de Funções. O painel por baixo do 'Script' Actual é o <firstterm>painel dos Argumentos da Função</firstterm>; quando for seleccionada uma função no 'Script Actual', este painel irá conter os itens para indicar os valores dos argumentos que a função seleccionada necessita. </para><para>Ao longo do topo da janela, existe uma fila de botões que lidam com o 'script' como um todo. Da esquerda para a direita, eles são: <guibutton>Novo 'Script'</guibutton>, <guibutton>Abrir um 'Script'</guibutton>, <guibutton>Gravar 'Script'</guibutton>, <guibutton>Gravar o 'Script' Como...</guibutton> e <guibutton>Testar 'Script'</guibutton>. A função destes botões deverá ser óbvia, talvez exceptuando o último botão. Se carregar em <guibutton>Testar 'Script'</guibutton>, o 'script' actual tentará ser executado na janela principal do KStars. Você deverá mover a janela do Construtor do 'Script' da frente antes de carregar nisto, para que possa ver os resultados. </para><para>No centro da janela, existe uma coluna de botões que operam em funções individuais do 'script'. De cima para baixo, estas são: <guibutton>Adicionar Função</guibutton>, <guibutton>Remover Função</guibutton>, <guibutton>Copiar Função</guibutton>, <guibutton>Subir</guibutton> e <guibutton>Descer</guibutton>. O <guibutton>Adicionar Função</guibutton> adiciona a função seleccionada de momento no Navegador de Funções na zona do 'Script' Actual (você poderá também adicionar uma função se fizer duplo-click nela). O resto dos botões lidam com a função seleccionada no 'Script Actual', removendo-a, duplicando-a ou mudando a sua posição no 'script' actual. </para>
</sect2>
<sect2 id="sb-using">
-<title
->Utilizar o Construtor de 'Scripts'</title>
-<para
->Para ilustrar a utilização do Construtor de 'Scripts', iremos apresentar um pequeno exemplo de tutorial onde iremos criar um 'script' que segue a Lua enquanto o relógio anda a uma velocidade acelerada. </para
-><para
->Se vamos seguir a Lua, teremos de apontar a visualização para ela em primeiro lugar. A função <firstterm
->lookToward</firstterm
-> é usada para isso. Seleccione esta função no Navegador de Funções, tendo em atenção a documentação que é mostrada no painel por baixo do Navegador. Carregue no botão <guibutton
->Adicionar Função</guibutton
-> para adicionar esta função à área do 'Script Actual'. O painel dos Argumentos da Função irá conter agora uma lista chamada <quote
->dir</quote
->, que é uma abreviatura de 'direction' (direcção). Esta a direcção para a qual a visualização deverá ser apontada. A lista contém apenas os pontos cardeais, não a Lua ou outros objectos quaisquer. Você poderá então escrever <quote
->Lua</quote
-> na opção manualmente, ou carregar no botão <guibutton
->Objecto</guibutton
-> para usar a janela de <guilabel
->Procurar um Objecto</guilabel
-> para seleccionar a Lua da lista de objectos identificados. Repare que, como de costume, o foco num objecto activa automaticamente o modo de seguimento do objecto, por isso não há necessidade de adicionar a função <firstterm
->setTracking</firstterm
-> depois do 'lookToward'. </para
-><para
->Agora que já tratámos de apontar para a Lua, queremos fazer o tempo passar a uma velocidade acelerada. Use a função <firstterm
->setClockScale</firstterm
-> para isso. Adicione-a ao 'script' fazendo duplo-click nela no Navegador de Funções. O painel de Argumentos da Função contém um selector para indicar a iteração temporal desejada para o relógio da simulação. Mude essa iteração para 3 horas. </para
-><para
->OK, já apontámos para a Lua e acelerámos o relógio. Agora só queremos que o 'script' espere durante vários segundos enquanto a visualização persegue a Lua. Adicione a função <firstterm
->waitFor</firstterm
-> ao 'script' e use o painel de Argumentos da Função para indicar que deverá esperar 20 segundos antes de continuar. </para
-><para
->Para terminar, vamos repor a iteração temporal do relógio para o valor normal de 1 segundo. Adicione outra instância do 'setClockScale', e coloque o seu valor a 1 s. </para
-><para
->De facto, ainda não terminámos realmente. Temos provavelmente que nos certificar a visualização está a usar coordenadas Equatoriais antes de o 'script' seguir a Lua com uma iteração temporal acelerada. Caso contrário, se a visualização estiver a usar coordenadas Horizontais, ela irá rodar muito depressa, com ângulos grandes, à medida que a Lua nasce e se põe. Isto poderá ser muito confuso, e é evitado se usar a opção de visualização <firstterm
->UseAltAz</firstterm
-> igual a <quote
->false</quote
->. Para mudar uma opção de visualização qualquer, use a função <firstterm
->changeViewOption</firstterm
->. Adicione esta função ao 'script' e analise o painel dos Argumentos da Função. Existe uma lista que contém todas as opções de visualização que poderão ser ajustadas com o 'changeViewOption'. Dado que sabemos que queremos usar a opção UseAltAz, poderemos simplesmente seleccioná-la na lista. Contudo, a lista é muito grande, e não existe nenhuma explicação para que é que serve cada item. Por isso poderá ser mais fácil carregar no botão <guibutton
->Árvore de Navegação</guibutton
->, o qual irá abrir uma janela que contém uma árvore com todas as opções de visualização, organizadas por tópico. Para além disso, cada item tem uma breve explicação do que é que a opção faz e o tipo de dados do valor da opção. A opção UseAltAz encontra-se sob a categoria <guilabel
->Opções do mapa do céu</guilabel
->. Basta seleccionar este item e carregar em <guibutton
->OK</guibutton
->, para que fique seleccionado na lista do painel dos Argumentos da Função. Finalmente, coloque o seu valor a <quote
->false</quote
-> ou a <quote
->0</quote
->. </para
-><para
->Um passo mais: a alteração do 'UseAltAz' no fim do 'script' não nos faz nada bem; precisamos que isto seja alterado antes que algo de mau aconteça. Por isso, certifique-se que esta função é seleccionada na janela do 'Script Actual' e carregue no botão <guibutton
->Subir</guibutton
-> até que seja a primeira função. </para
-><para
->Agora que terminámos o 'script', deveremos gravá-lo em disco. Carregue no botão <guibutton
->Gravar 'Script'</guibutton
->. Isto irá abrir em primeiro lugar uma janela onde poderá indicar um nome para o 'script' e preencher o seu nome como autor. Indique como nome <quote
->Seguir a Lua</quote
-> e o seu nome como autor, carregando depois em <guibutton
->OK</guibutton
->. De seguida, você irá ver a janela normal de Gravar um Ficheiro do &kde;. Indique o nome do ficheiro do 'script' e carregue em <guibutton
->OK</guibutton
-> para gravar o código. Repare que, se o seu ficheiro não terminar em <quote
->.kstars</quote
->, este sufixo será adicionado automaticamente. Se você for curioso, poderá examinar o ficheiro do 'script' com um editor de texto qualquer. </para
-><para
->Agora que temos um 'script' completo, poderemos corrê-lo de várias formas. Numa linha de comandos da consola, você poderá simplesmente executar o 'script', desde que esteja aberta uma instância do KStars em execução. Em alternativa, você poderá executar o programa no KStars com o item <guimenuitem
->Executar 'Script'</guimenuitem
-> do menu <guimenu
->Ficheiro</guimenu
->. </para>
+<title>Utilizar o Construtor de 'Scripts'</title>
+<para>Para ilustrar a utilização do Construtor de 'Scripts', iremos apresentar um pequeno exemplo de tutorial onde iremos criar um 'script' que segue a Lua enquanto o relógio anda a uma velocidade acelerada. </para><para>Se vamos seguir a Lua, teremos de apontar a visualização para ela em primeiro lugar. A função <firstterm>lookToward</firstterm> é usada para isso. Seleccione esta função no Navegador de Funções, tendo em atenção a documentação que é mostrada no painel por baixo do Navegador. Carregue no botão <guibutton>Adicionar Função</guibutton> para adicionar esta função à área do 'Script Actual'. O painel dos Argumentos da Função irá conter agora uma lista chamada <quote>dir</quote>, que é uma abreviatura de 'direction' (direcção). Esta a direcção para a qual a visualização deverá ser apontada. A lista contém apenas os pontos cardeais, não a Lua ou outros objectos quaisquer. Você poderá então escrever <quote>Lua</quote> na opção manualmente, ou carregar no botão <guibutton>Objecto</guibutton> para usar a janela de <guilabel>Procurar um Objecto</guilabel> para seleccionar a Lua da lista de objectos identificados. Repare que, como de costume, o foco num objecto activa automaticamente o modo de seguimento do objecto, por isso não há necessidade de adicionar a função <firstterm>setTracking</firstterm> depois do 'lookToward'. </para><para>Agora que já tratámos de apontar para a Lua, queremos fazer o tempo passar a uma velocidade acelerada. Use a função <firstterm>setClockScale</firstterm> para isso. Adicione-a ao 'script' fazendo duplo-click nela no Navegador de Funções. O painel de Argumentos da Função contém um selector para indicar a iteração temporal desejada para o relógio da simulação. Mude essa iteração para 3 horas. </para><para>OK, já apontámos para a Lua e acelerámos o relógio. Agora só queremos que o 'script' espere durante vários segundos enquanto a visualização persegue a Lua. Adicione a função <firstterm>waitFor</firstterm> ao 'script' e use o painel de Argumentos da Função para indicar que deverá esperar 20 segundos antes de continuar. </para><para>Para terminar, vamos repor a iteração temporal do relógio para o valor normal de 1 segundo. Adicione outra instância do 'setClockScale', e coloque o seu valor a 1 s. </para><para>De facto, ainda não terminámos realmente. Temos provavelmente que nos certificar a visualização está a usar coordenadas Equatoriais antes de o 'script' seguir a Lua com uma iteração temporal acelerada. Caso contrário, se a visualização estiver a usar coordenadas Horizontais, ela irá rodar muito depressa, com ângulos grandes, à medida que a Lua nasce e se põe. Isto poderá ser muito confuso, e é evitado se usar a opção de visualização <firstterm>UseAltAz</firstterm> igual a <quote>false</quote>. Para mudar uma opção de visualização qualquer, use a função <firstterm>changeViewOption</firstterm>. Adicione esta função ao 'script' e analise o painel dos Argumentos da Função. Existe uma lista que contém todas as opções de visualização que poderão ser ajustadas com o 'changeViewOption'. Dado que sabemos que queremos usar a opção UseAltAz, poderemos simplesmente seleccioná-la na lista. Contudo, a lista é muito grande, e não existe nenhuma explicação para que é que serve cada item. Por isso poderá ser mais fácil carregar no botão <guibutton>Árvore de Navegação</guibutton>, o qual irá abrir uma janela que contém uma árvore com todas as opções de visualização, organizadas por tópico. Para além disso, cada item tem uma breve explicação do que é que a opção faz e o tipo de dados do valor da opção. A opção UseAltAz encontra-se sob a categoria <guilabel>Opções do mapa do céu</guilabel>. Basta seleccionar este item e carregar em <guibutton>OK</guibutton>, para que fique seleccionado na lista do painel dos Argumentos da Função. Finalmente, coloque o seu valor a <quote>false</quote> ou a <quote>0</quote>. </para><para>Um passo mais: a alteração do 'UseAltAz' no fim do 'script' não nos faz nada bem; precisamos que isto seja alterado antes que algo de mau aconteça. Por isso, certifique-se que esta função é seleccionada na janela do 'Script Actual' e carregue no botão <guibutton>Subir</guibutton> até que seja a primeira função. </para><para>Agora que terminámos o 'script', deveremos gravá-lo em disco. Carregue no botão <guibutton>Gravar 'Script'</guibutton>. Isto irá abrir em primeiro lugar uma janela onde poderá indicar um nome para o 'script' e preencher o seu nome como autor. Indique como nome <quote>Seguir a Lua</quote> e o seu nome como autor, carregando depois em <guibutton>OK</guibutton>. De seguida, você irá ver a janela normal de Gravar um Ficheiro do &kde;. Indique o nome do ficheiro do 'script' e carregue em <guibutton>OK</guibutton> para gravar o código. Repare que, se o seu ficheiro não terminar em <quote>.kstars</quote>, este sufixo será adicionado automaticamente. Se você for curioso, poderá examinar o ficheiro do 'script' com um editor de texto qualquer. </para><para>Agora que temos um 'script' completo, poderemos corrê-lo de várias formas. Numa linha de comandos da consola, você poderá simplesmente executar o 'script', desde que esteja aberta uma instância do KStars em execução. Em alternativa, você poderá executar o programa no KStars com o item <guimenuitem>Executar 'Script'</guimenuitem> do menu <guimenu>Ficheiro</guimenu>. </para>
</sect2>
<sect2 id="sb-indi">
- <title
->Automação do Dispositivo com o INDI</title>
- <para
->O escalonamento e automação do dispositivo é suportado por todos os dispositivos compatíveis com o <link linkend="what-is-indi"
->INDI</link
->. Poderá coordenar qualquer número de dispositivos para efectuar operações complexas com o <link linkend="sb-intro"
->Construtor de 'Scripts'</link
-> do &kstars;. Isto poderá ser feito se usar a interface DCOP do INDI do &kstars;, que oferece várias classes de funções diferentes para se adequar às suas tarefas. As funções de DCOP do INDI poderão ser decompostas em quatro diferentes classes. Segue-se uma revisão das funções e dos seus argumentos, tal como são suportadas no KStars. É altamente recomendado que leia a secção de <link linkend="indi-concepts"
->Conceitos do INDI</link
->, dado que serão aplicados conceitos-chave do INDI ao longo deste tutorial.</para>
+ <title>Automação do Dispositivo com o INDI</title>
+ <para>O escalonamento e automação do dispositivo é suportado por todos os dispositivos compatíveis com o <link linkend="what-is-indi">INDI</link>. Poderá coordenar qualquer número de dispositivos para efectuar operações complexas com o <link linkend="sb-intro">Construtor de 'Scripts'</link> do &kstars;. Isto poderá ser feito se usar a interface DCOP do INDI do &kstars;, que oferece várias classes de funções diferentes para se adequar às suas tarefas. As funções de DCOP do INDI poderão ser decompostas em quatro diferentes classes. Segue-se uma revisão das funções e dos seus argumentos, tal como são suportadas no KStars. É altamente recomendado que leia a secção de <link linkend="indi-concepts">Conceitos do INDI</link>, dado que serão aplicados conceitos-chave do INDI ao longo deste tutorial.</para>
<orderedlist>
- <listitem
-><para
->Funções Genéricas do Dispositivo: Funções para estabelecer/desligar os dispositivos, etc.</para>
+ <listitem><para>Funções Genéricas do Dispositivo: Funções para estabelecer/desligar os dispositivos, etc.</para>
<itemizedlist>
- <listitem
-><para
-><function
->startINDI (QString nomeDispositivo, bool usoLocal)</function
-> : Estabelece um serviço do INDI quer como local quer como servidor.</para
-></listitem>
- <listitem
-><para
-><function
->shutdownINDI (QString nomeDispositivo)</function
-> : Desliga o serviço do INDI.</para
-></listitem>
- <listitem
-><para
-><function
->switchINDI(QString nomeDispositivo, bool ligar)</function
-> : Liga ou desliga um dispositivo do INDI.</para
-></listitem>
- <listitem
-><para
-><function
->setINDIPort(QString nomeDispositivo, QString porto)</function
-> : Indica o porto de ligação do dispositivo.</para
-></listitem>
- <listitem
-><para
-><function
->setINDIAction(QString nomeDispositivo, QString accao)</function
-> : Activa uma acção do INDI. A acção poderá ser qualquer <emphasis
->elemento</emphasis
-> de uma <emphasis
->propriedade de opção</emphasis
-></para
-></listitem>
- <listitem
-><para
-><function
->waitForINDIAction(QString nomeDispositivo, QString accao)</function
-> : Coloca a execução do programa em pausa até que a acção <emphasis
->propriedade</emphasis
-> da acção indicada seja devolvida com um estado OK.</para
-></listitem>
+ <listitem><para><function>startINDI (QString nomeDispositivo, bool usoLocal)</function> : Estabelece um serviço do INDI quer como local quer como servidor.</para></listitem>
+ <listitem><para><function>shutdownINDI (QString nomeDispositivo)</function> : Desliga o serviço do INDI.</para></listitem>
+ <listitem><para><function>switchINDI(QString nomeDispositivo, bool ligar)</function> : Liga ou desliga um dispositivo do INDI.</para></listitem>
+ <listitem><para><function>setINDIPort(QString nomeDispositivo, QString porto)</function> : Indica o porto de ligação do dispositivo.</para></listitem>
+ <listitem><para><function>setINDIAction(QString nomeDispositivo, QString accao)</function> : Activa uma acção do INDI. A acção poderá ser qualquer <emphasis>elemento</emphasis> de uma <emphasis>propriedade de opção</emphasis></para></listitem>
+ <listitem><para><function>waitForINDIAction(QString nomeDispositivo, QString accao)</function> : Coloca a execução do programa em pausa até que a acção <emphasis>propriedade</emphasis> da acção indicada seja devolvida com um estado OK.</para></listitem>
</itemizedlist>
</listitem>
- <listitem
-><para
->Funções do Telescópio: Funções para controlar o movimento e o estado do telescópio.</para>
+ <listitem><para>Funções do Telescópio: Funções para controlar o movimento e o estado do telescópio.</para>
<itemizedlist>
- <listitem
-><para
-><function
->setINDIScopeAction(QString nomeDispositivo, QString accao)</function
-> : Muda o modo ou a acção do telescópio. As opções disponíveis são a SLEW, TRACK, SYNC, PARK e a ABORT.</para
-></listitem>
- <listitem
-><para
-><function
->setINDITargetCoord(QString nomeDispositivo, double AR, double DEC)</function
-> : Define as coordenadas-alvo JNow do telescópio para uma dada <emphasis
->AR</emphasis
-> e <emphasis
->DEC</emphasis
->.</para
-></listitem>
- <listitem
-><para
-><function
->setINDITargetName(QString nomeDispositivo, QString nomeObjecto)</function
-> : Configura as coordenadas-alvo JNow do telescópio para as coordenadas do <emphasis
->nomeObjecto</emphasis
->. O KStars irá procurar o nome do objecto na sua base de dados e irá obter a AR e a Dec deste, se for encontrado.</para
-></listitem>
- <listitem
-><para
-><function
->setINDIGeoLocation(QString nomeDispositivo, double longitude, double latitude)</function
-> : Configura a localização geográfica do telescópio para a latitude e longitude indicadas. A longitude é medida a partir de Greenwich, no Reino-Unido, para Este. Contudo, embora seja comum usar longitudes negativas para o hemisfério ocidental, o INDI está à espera de valores de longitude entre 0 e 360 graus. Como tal, se estiver uma longitude negativa, basta adicionar 360 graus para obter o valor esperado pelo INDI. Por exemplo, as coordenadas de Calgary, no Canadá, correspondem no &kstars; à longitude: -114 04 58 - latitude: 51 02 58. Como tal, o INDI iria necessitar da longitude = 360 - 114,083 = 245,917 graus.</para
-></listitem>
- <listitem
-><para
-><function
->setINDIUTC(QString nomeDispositivo, QString dataHomeUTC)</function
-> : Configura a data e hora UTC do telescópio no formato ISO 8601. O formato é igual a AAAA-MM-DDTHH:MM:SS (p.ex. 2004-07-12T22:05:32).</para
-></listitem>
+ <listitem><para><function>setINDIScopeAction(QString nomeDispositivo, QString accao)</function> : Muda o modo ou a acção do telescópio. As opções disponíveis são a SLEW, TRACK, SYNC, PARK e a ABORT.</para></listitem>
+ <listitem><para><function>setINDITargetCoord(QString nomeDispositivo, double AR, double DEC)</function> : Define as coordenadas-alvo JNow do telescópio para uma dada <emphasis>AR</emphasis> e <emphasis>DEC</emphasis>.</para></listitem>
+ <listitem><para><function>setINDITargetName(QString nomeDispositivo, QString nomeObjecto)</function> : Configura as coordenadas-alvo JNow do telescópio para as coordenadas do <emphasis>nomeObjecto</emphasis>. O KStars irá procurar o nome do objecto na sua base de dados e irá obter a AR e a Dec deste, se for encontrado.</para></listitem>
+ <listitem><para><function>setINDIGeoLocation(QString nomeDispositivo, double longitude, double latitude)</function> : Configura a localização geográfica do telescópio para a latitude e longitude indicadas. A longitude é medida a partir de Greenwich, no Reino-Unido, para Este. Contudo, embora seja comum usar longitudes negativas para o hemisfério ocidental, o INDI está à espera de valores de longitude entre 0 e 360 graus. Como tal, se estiver uma longitude negativa, basta adicionar 360 graus para obter o valor esperado pelo INDI. Por exemplo, as coordenadas de Calgary, no Canadá, correspondem no &kstars; à longitude: -114 04 58 - latitude: 51 02 58. Como tal, o INDI iria necessitar da longitude = 360 - 114,083 = 245,917 graus.</para></listitem>
+ <listitem><para><function>setINDIUTC(QString nomeDispositivo, QString dataHomeUTC)</function> : Configura a data e hora UTC do telescópio no formato ISO 8601. O formato é igual a AAAA-MM-DDTHH:MM:SS (p.ex. 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
- <listitem
-><para
->Funções da Câmara/CCD: Funções para controlar as propriedades e o estado da câmara/CCD.</para>
+ <listitem><para>Funções da Câmara/CCD: Funções para controlar as propriedades e o estado da câmara/CCD.</para>
<itemizedlist>
- <listitem
-><para
-><function
->setINDICCDTemp(QString nomeDispositivo, int temp)</function
-> : Configura a temperatura-alvo do 'chip' CCD em graus Celsius (centígrados).</para
-></listitem>
- <listitem
-><para
-><function
->setINDIFrameType(QString nomeDispositivo, QString tipo)</function
-> : Configura o tipo de imagem do CCD. As opções disponíveis são FRAME_LIGHT, FRAME_BIAS, FRAME_DARK e FRAME_FLAT.</para
-></listitem>
- <listitem
-><para
-><function
->startINDIExposure(QString nomeDispositivo, int tempoLimite)</function
-> : Inicia a exposição do CCD/Câmara durante o período em segundos indicado em <emphasis
->tempoLimite</emphasis
->.</para
-></listitem>
+ <listitem><para><function>setINDICCDTemp(QString nomeDispositivo, int temp)</function> : Configura a temperatura-alvo do 'chip' CCD em graus Celsius (centígrados).</para></listitem>
+ <listitem><para><function>setINDIFrameType(QString nomeDispositivo, QString tipo)</function> : Configura o tipo de imagem do CCD. As opções disponíveis são FRAME_LIGHT, FRAME_BIAS, FRAME_DARK e FRAME_FLAT.</para></listitem>
+ <listitem><para><function>startINDIExposure(QString nomeDispositivo, int tempoLimite)</function> : Inicia a exposição do CCD/Câmara durante o período em segundos indicado em <emphasis>tempoLimite</emphasis>.</para></listitem>
</itemizedlist>
- </listitem
->
- <listitem
-><para
->Funções do Sistema de Foco: Funções para controlar o movimento e o estado do sistema de foco.</para>
+ </listitem>
+ <listitem><para>Funções do Sistema de Foco: Funções para controlar o movimento e o estado do sistema de foco.</para>
<itemizedlist>
- <listitem
-><para
-><function
->setINDIFocusSpeed(QString nomeDispositivo, QString accao)</function
-> : Configura a velocidade do sistema de foco. As opções disponíveis são a FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM e a FOCUS_FAST.</para
-></listitem>
- <listitem
-><para
-><function
->setINDIFocusTimeout(QString nomeDispositivo, int tempoLimite)</function
-> : Configura a duração em segundos para quaisquer operações subsequentes do 'startINDIFocus'.</para
-></listitem>
- <listitem
-><para
-><function
->startINDIFocus(QString nomeDispositivo, int dirFoco)</function
-> : Move o sistema de foco quer para dentro (dirFoco = 0) quer para fora (dirFoco = 1). A velocidade e a duração desta operação é definida pelas funções <function
->setINDIFocusSpeed()</function
-> e <function
->setINDIFocusTimeout()</function
->.</para
-></listitem>
+ <listitem><para><function>setINDIFocusSpeed(QString nomeDispositivo, QString accao)</function> : Configura a velocidade do sistema de foco. As opções disponíveis são a FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM e a FOCUS_FAST.</para></listitem>
+ <listitem><para><function>setINDIFocusTimeout(QString nomeDispositivo, int tempoLimite)</function> : Configura a duração em segundos para quaisquer operações subsequentes do 'startINDIFocus'.</para></listitem>
+ <listitem><para><function>startINDIFocus(QString nomeDispositivo, int dirFoco)</function> : Move o sistema de foco quer para dentro (dirFoco = 0) quer para fora (dirFoco = 1). A velocidade e a duração desta operação é definida pelas funções <function>setINDIFocusSpeed()</function> e <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
- <listitem
-><para
->Funções do Filtro: Funções para controlar a posição do filtro.</para>
+ <listitem><para>Funções do Filtro: Funções para controlar a posição do filtro.</para>
<itemizedlist>
- <listitem
-><para
-><function
->setINDIFilterNum(QString nomeDispositivo, int num_filtro)</function
-> : Muda a posição do filtro para <varname
->num_filtro</varname
->. O utilizador poderá atribuir nomes alternativos aos números dos filtros na janela para <guimenuitem
->Configurar o INDI</guimenuitem
->, no menu <guimenu
->Dispositivos</guimenu
-> (p.ex. Filtro 1 = Vermelho, Filtro 2 = Verde..etc).</para
-></listitem>
+ <listitem><para><function>setINDIFilterNum(QString nomeDispositivo, int num_filtro)</function> : Muda a posição do filtro para <varname>num_filtro</varname>. O utilizador poderá atribuir nomes alternativos aos números dos filtros na janela para <guimenuitem>Configurar o INDI</guimenuitem>, no menu <guimenu>Dispositivos</guimenu> (p.ex. Filtro 1 = Vermelho, Filtro 2 = Verde..etc).</para></listitem>
</itemizedlist>
</listitem>
</orderedlist>
-<para
->Repare que o nome do dispositivo é o primeiro argumento de todas as funções do INDI. Isto permite vários comandos que são enviados para dispositivos INDI diferentes serem interligados em conjunto num programa. A ferramenta de Construção de 'Scripts' oferece duas opções para facilitar a criação e a edição dos programas INDI:</para>
+<para>Repare que o nome do dispositivo é o primeiro argumento de todas as funções do INDI. Isto permite vários comandos que são enviados para dispositivos INDI diferentes serem interligados em conjunto num programa. A ferramenta de Construção de 'Scripts' oferece duas opções para facilitar a criação e a edição dos programas INDI:</para>
<itemizedlist>
- <listitem
-><para
-><option
->Adicionar waitForINDIAction após qualquer acção do INDI</option
-> : Quando estiver assinalada esta opção, a ferramenta do Construtor de 'Scripts' irá adicionar automaticamente um <function
->waitForINDIAction()</function
-> depois de cada acção que reconhecer. Por exemplo, se adicionar a função <function
->switchINDI()</function
-> ao programa e esta opção estiver assinalada, o Construtor do 'Script' irá adicionar um "waitForINDIAction CONNECTION" no ficheiro do 'script' logo a seguir ao <function
->switchINDI()</function
->. Isto fará com que o 'script' entre em pausa depois de emitir o <function
->switchINDI()</function
->, até que o <function
->switchINDI()</function
-> devolva um estado OK (&ie; a ligação ao dispositivo foi bem-sucedida). É de importância crítica saber que o Construtor do 'Script' não poderá adicionar automaticamente o <function
->waitForINDIAction()</function
-> para as acções genéricas adicionadas com a função <function
->setINDIAction()</function
->. Isto deve-se ao facto de o KStars não conseguir determinar a propriedade 'parent' das acções genéricas. Como tal, terá de adicionar manualmente o <function
->waitForINDIAction()</function
-> a seguir às acções genéricas, sempre que tal for desejado.</para>
+ <listitem><para><option>Adicionar waitForINDIAction após qualquer acção do INDI</option> : Quando estiver assinalada esta opção, a ferramenta do Construtor de 'Scripts' irá adicionar automaticamente um <function>waitForINDIAction()</function> depois de cada acção que reconhecer. Por exemplo, se adicionar a função <function>switchINDI()</function> ao programa e esta opção estiver assinalada, o Construtor do 'Script' irá adicionar um "waitForINDIAction CONNECTION" no ficheiro do 'script' logo a seguir ao <function>switchINDI()</function>. Isto fará com que o 'script' entre em pausa depois de emitir o <function>switchINDI()</function>, até que o <function>switchINDI()</function> devolva um estado OK (&ie; a ligação ao dispositivo foi bem-sucedida). É de importância crítica saber que o Construtor do 'Script' não poderá adicionar automaticamente o <function>waitForINDIAction()</function> para as acções genéricas adicionadas com a função <function>setINDIAction()</function>. Isto deve-se ao facto de o KStars não conseguir determinar a propriedade 'parent' das acções genéricas. Como tal, terá de adicionar manualmente o <function>waitForINDIAction()</function> a seguir às acções genéricas, sempre que tal for desejado.</para>
</listitem>
- <listitem
-><para
-><option
->Reutilizar o nome do dispositivo INDI</option
-> : Quando estiver assinalada, o campo do nome do dispositivo de todas as funções subsequentes é preenchido automaticamente com o último nome de dispositivo. Este último nome é preenchido de cada vez que a função <function
->startINDI()</function
-> é adicionada ao programa actual. Ao trabalhar com vários dispositivos, recomenda-se ter esta opção desligada.</para>
+ <listitem><para><option>Reutilizar o nome do dispositivo INDI</option> : Quando estiver assinalada, o campo do nome do dispositivo de todas as funções subsequentes é preenchido automaticamente com o último nome de dispositivo. Este último nome é preenchido de cada vez que a função <function>startINDI()</function> é adicionada ao programa actual. Ao trabalhar com vários dispositivos, recomenda-se ter esta opção desligada.</para>
</listitem>
</itemizedlist>
-<para
->Agora, está tudo pronto para criar um programa de demonstração que controla o telescópio GPS LX200, para além da câmara CCD Finger Lakes. A tarefa será simples. Vai-se pedir ao telescópio para apontar e seguir Marte, pelo que se pede depois à câmara para tirar três fotografias de 10 segundos, separadas por 20 segundos.</para>
-<important
-><para
->Dado que não existe nenhuma reacção na interface de DCOP do INDI sobre o progresso, o valor ou o estado das operações e parâmetros do dispositivo (excepto no <function
->waitForINDIAction()</function
->), a automação do dispositivo no KStars é semelhante a um sistema de controlo com uma malha aberta. Nestes sistemas, não existe normalmente qualquer reacção directa para medir o progresso do sistema e para corrigir os seus erros. Por consequência, terá de desenhar os seus programas de automação do dispositivo com uma consideração cuidadosa. Todos os programas de automação deverão ser sujeitos a testes rigorosos antes da instalação.</para
-></important>
+<para>Agora, está tudo pronto para criar um programa de demonstração que controla o telescópio GPS LX200, para além da câmara CCD Finger Lakes. A tarefa será simples. Vai-se pedir ao telescópio para apontar e seguir Marte, pelo que se pede depois à câmara para tirar três fotografias de 10 segundos, separadas por 20 segundos.</para>
+<important><para>Dado que não existe nenhuma reacção na interface de DCOP do INDI sobre o progresso, o valor ou o estado das operações e parâmetros do dispositivo (excepto no <function>waitForINDIAction()</function>), a automação do dispositivo no KStars é semelhante a um sistema de controlo com uma malha aberta. Nestes sistemas, não existe normalmente qualquer reacção directa para medir o progresso do sistema e para corrigir os seus erros. Por consequência, terá de desenhar os seus programas de automação do dispositivo com uma consideração cuidadosa. Todos os programas de automação deverão ser sujeitos a testes rigorosos antes da instalação.</para></important>
<screenshot>
- <screeninfo
->A Ferramenta de Construção de 'Scripts' </screeninfo>
+ <screeninfo>A Ferramenta de Construção de 'Scripts' </screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="indiscript.png" format="PNG"/>
</imageobject>
<textobject>
- <phrase
->Ferramenta de Construção de 'Scripts'</phrase>
+ <phrase>Ferramenta de Construção de 'Scripts'</phrase>
</textobject>
</mediaobject>
</screenshot>
-<para
->O programa de demonstração é mostrado na imagem acima. Repare que a opção <option
->"Adicionar o waitForINDIAction após qualquer acção do INDI"</option
-> está ligada e a <option
->"Reutilizar o nome do dispositivo INDI"</option
-> está desligada. A primeira função a adicionar é a <function
->startINDI()</function
->, tal como é demonstrado acima. Os dispositivos vão ser corridos de forma local, como tal não serão alterado o modo de serviço fornecido na janela de argumento da função. Será indicado o nome do dispositivo, a começar pelo telescópio "LX200 GPS". A mesma operação será repetida para o "FLI CCD". Existe uma função <function
->waitFor()</function
-> a seguir a isso. Recomenda-se geralmente o uso da função <function
->waitFor()</function
-> logo a seguir ao <function
->startINDI()</function
-> para parar o programa durante 1-5 segundos. Isto irá garantir que todas as propriedades são criadas e que estão prontas para receber comandos. Também é útil para controlar dispositivos remotos, dado que a obtenção e criação de propriedades poderá levar algum tempo. Na próxima função, a <function
->switchINDI()</function
->, vai-se estabelecer a ligação a cada dispositivo.</para>
+<para>O programa de demonstração é mostrado na imagem acima. Repare que a opção <option>"Adicionar o waitForINDIAction após qualquer acção do INDI"</option> está ligada e a <option>"Reutilizar o nome do dispositivo INDI"</option> está desligada. A primeira função a adicionar é a <function>startINDI()</function>, tal como é demonstrado acima. Os dispositivos vão ser corridos de forma local, como tal não serão alterado o modo de serviço fornecido na janela de argumento da função. Será indicado o nome do dispositivo, a começar pelo telescópio "LX200 GPS". A mesma operação será repetida para o "FLI CCD". Existe uma função <function>waitFor()</function> a seguir a isso. Recomenda-se geralmente o uso da função <function>waitFor()</function> logo a seguir ao <function>startINDI()</function> para parar o programa durante 1-5 segundos. Isto irá garantir que todas as propriedades são criadas e que estão prontas para receber comandos. Também é útil para controlar dispositivos remotos, dado que a obtenção e criação de propriedades poderá levar algum tempo. Na próxima função, a <function>switchINDI()</function>, vai-se estabelecer a ligação a cada dispositivo.</para>
-<para
->Dado que a opção <option
->"Adicionar o waitForINDIAction após qualquer acção do INDI"</option
-> está assinalada, não é necessário adicionar um <function
->waitForINDIAction()</function
-> depois do <function
->switchINDI()</function
-> para garantir que só se continua a execução do programa após uma ligação com sucesso. Isto acontece porque a ferramenta do Construtor de 'Scripts' fará isso automaticamente pelo utilizador, quando gravar o programa. Agora, vai-se colocar o modo do telescópio em seguimento, carregando para tal na função <function
->setINDIScopeAction()</function
-> e seleccionando o TRACK. Lembre-se que necessita de colocar o telescópio no modo de seguimento <emphasis
->antes</emphasis
-> de emitir as coordenadas que ele irá seguir. A função <function
->setINDIScopeAction()</function
-> é oferecida por conveniência, dado que, neste exemplo, ela emite apenas uma função genérica <function
->setINDIAction()</function
->, seguida da palavra-chave TRACK. Contudo, o benefício de usar o <function
->setINDIScopeAction()</function
-> é que o KStars poderá adicionar automaticamente um <function
->waitForINDIAction()</function
-> a seguir, quando for necessário. Esta funcionalidade não fica disponível automaticamente para as acções genéricas, tal como foi discutido anteriormente.</para>
+<para>Dado que a opção <option>"Adicionar o waitForINDIAction após qualquer acção do INDI"</option> está assinalada, não é necessário adicionar um <function>waitForINDIAction()</function> depois do <function>switchINDI()</function> para garantir que só se continua a execução do programa após uma ligação com sucesso. Isto acontece porque a ferramenta do Construtor de 'Scripts' fará isso automaticamente pelo utilizador, quando gravar o programa. Agora, vai-se colocar o modo do telescópio em seguimento, carregando para tal na função <function>setINDIScopeAction()</function> e seleccionando o TRACK. Lembre-se que necessita de colocar o telescópio no modo de seguimento <emphasis>antes</emphasis> de emitir as coordenadas que ele irá seguir. A função <function>setINDIScopeAction()</function> é oferecida por conveniência, dado que, neste exemplo, ela emite apenas uma função genérica <function>setINDIAction()</function>, seguida da palavra-chave TRACK. Contudo, o benefício de usar o <function>setINDIScopeAction()</function> é que o KStars poderá adicionar automaticamente um <function>waitForINDIAction()</function> a seguir, quando for necessário. Esta funcionalidade não fica disponível automaticamente para as acções genéricas, tal como foi discutido anteriormente.</para>
-<para
->A seguir, será usada a função <function
->setINDITargetName()</function
-> para apontá-lo para Marte. Finalmente, os últimos passos envolvem a captura de uma imagem durante 10 segundos, o qual poderá ser feito com a função <function
->startINDIExposure()</function
->, esperando 20 segundos entre cada uma, o que poderá também ser feito com a função <function
->waitFor()</function
-> com um valor igual a 20.</para>
+<para>A seguir, será usada a função <function>setINDITargetName()</function> para apontá-lo para Marte. Finalmente, os últimos passos envolvem a captura de uma imagem durante 10 segundos, o qual poderá ser feito com a função <function>startINDIExposure()</function>, esperando 20 segundos entre cada uma, o que poderá também ser feito com a função <function>waitFor()</function> com um valor igual a 20.</para>
-<para
->Poder-se-á agora gravar o programa e executá-lo em qualquer altura. O programa gravado será semelhante ao seguinte:</para>
-<blockquote
-><programlisting
->#!/bin/bash
+<para>Poder-se-á agora gravar o programa e executá-lo em qualquer altura. O programa gravado será semelhante ao seguinte:</para>
+<blockquote><programlisting>#!/bin/bash
#Programa de DCOP do KStars: Programa de Demonstração
#de Jasem Mutlaq
#última modificação: Qui 6 Jan 2005 09:58:26
@@ -469,10 +138,7 @@
</blockquote>
<note>
-<para
->A biblioteca do INDI oferece ferramentas de programação robustas quer permitem aos programadores orquestrarem programas muito complexos. Para mais detalhes, veja o <ulink url="http://indi.sourceforge.net/manual/book1.html"
->Manual de Programador do INDI</ulink
->.</para>
+<para>A biblioteca do INDI oferece ferramentas de programação robustas quer permitem aos programadores orquestrarem programas muito complexos. Para mais detalhes, veja o <ulink url="http://indi.sourceforge.net/manual/book1.html">Manual de Programador do INDI</ulink>.</para>
</note>
</sect2>
</sect1>