<chapter id="dcop"> <title >Programar com o &kmplot;</title> <para >Uma nova funcionalidade do &kde; 3.4 é você poder criar programas para o &kmplot; com o &DCOP;. Por exemplo, se quiser definir uma nova função <userinput >f(x)=2sin x+3cos x</userinput >, definir a espessura do traço como sendo igual a 20 e depois desenhá-la, poderá escrever numa consola:</para> <para ><command >dcop kmplot-PID Parser addFunction "f(x)=2sin x+3cos x"</command > Como resultado, o número do ID da função nova será devolvido, ou então -1 se a função não puder ser definida.</para> <para ><command > >dcop kmplot-PID Parser setFunctionFLineWidth 20 ID</command > Este comando configura a espessura do traço da função com o ID indicado como sendo igual a 20.</para> <para ><command > >dcop kmplot-PID View drawPlot</command > Este comando actualiza a janela, de modo a que função se torne visível.</para> <para >Segue-se uma lista com as funções disponíveis: <variablelist> <varlistentry> <term >KmPlotShell fileOpen &url </term> <listitem> <para >Carrega o ficheiro <parameter >url</parameter >.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg isModified </term> <listitem> <para >Devolve 'true' se foram feitas alterações.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg editColors </term> <listitem> <para >Abre a janela de edição de cores.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg editAxes </term> <listitem> <para >Abre a janela de edição do sistema de coordenadas.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg editScaling </term> <listitem> <para >Abre a janela de edição da escala.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg editFonts </term> <listitem> <para >Abre a janela de edição de tipos de letra.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg editConstants </term> <listitem> <para >Abre a janela de edição de constantes.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg newFunction </term> <listitem> <para >Abre a janela para novos gráficos de funções.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg newParametric </term> <listitem> <para >Abre a janela para novos gráficos paramétricos.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg newPolar </term> <listitem> <para >Abre a janela para novos gráficos polares.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg toggleShowSlider0 </term> <listitem> <para >Mostra/esconde a janela da barra deslizante do parâmetro número 1.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg toggleShowSlider1 </term> <listitem> <para >Mostra/esconde a janela da barra deslizante do parâmetro número 2.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg toggleShowSlider2 </term> <listitem> <para >Mostra/esconde a janela da barra deslizante do parâmetro número 3.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg toggleShowSlider3 </term> <listitem> <para >Mostra/esconde a janela da barra deslizante do parâmetro número 4.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotSave </term> <listitem> <para >Grava as funções (abre a janela de gravação se for um ficheiro novo).</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotSaveas </term> <listitem> <para >O mesmo que a opção <menuchoice ><guimenu >Ficheiro</guimenu ><guimenuitem >Gravar Como</guimenuitem > </menuchoice > do menu.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotEditPlots </term> <listitem> <para >Abre a janela de edição de gráficos.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotPrint </term> <listitem> <para >Abre a janela de impressão.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotExport </term> <listitem> <para >Abre a janela de exportação.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotSettings </term> <listitem> <para >Abre a janela de configuração.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotNames </term> <listitem> <para >Mostra uma lista com as funções matemáticas predefinidas.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotCoord1 </term> <listitem> <para >Sistema de Coordenadas I.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotCoord2 </term> <listitem> <para >Sistema de Coordenadas II.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg slotCoord3 </term> <listitem> <para >Sistema de Coordenadas III.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg getYValue </term> <listitem> <para >O mesmo que escolher a opção <menuchoice ><guimenu >Ferramentas</guimenu ><guimenuitem >Obter o Valor de Y...</guimenuitem > </menuchoice > do menu.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg findMinimumValue </term> <listitem> <para >O mesmo que escolher a opção <menuchoice ><guimenu >Ferramentas</guimenu ><guimenuitem >Procurar o Valor Mínimo...</guimenuitem > </menuchoice > do menu.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg findMaximumValue </term> <listitem> <para >O mesmo que escolher a opção <menuchoice ><guimenu >Ferramentas</guimenu ><guimenuitem >Procurar o Valor Máximo...</guimenuitem > </menuchoice > do menu.</para> </listitem> </varlistentry> <varlistentry> <term >MainDlg graphArea </term> <listitem> <para >O mesmo que escolher a opção <menuchoice ><guimenu >Ferramentas</guimenu ><guimenuitem >Calcular o Integral</guimenuitem > </menuchoice > do menu.</para> </listitem> </varlistentry> <varlistentry> <term >Parser addFunction texto </term> <listitem> <para >Adiciona uma nova função com a expressão <parameter >texto</parameter >. Se a expressão não contiver nenhum nome de função, este será gerado automaticamente. É devolvido o número de ID da função nova ou então -1 se a função não pôde ser definida.</para> </listitem> </varlistentry> <varlistentry> <term >Parser delfkt id </term> <listitem> <para >Remove a função com o número de ID <parameter >id</parameter >. Se a função não puder ser removida, é devolvido 'false', caso contrário 'true'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionExpression texto id </term> <listitem> <para >Atribui a expressão da função <parameter >texto</parameter > à função cujo identificador é <parameter >id</parameter >. Devolve 'true' se for bem sucedido, caso contrário devolve 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser countFunctions </term> <listitem> <para >Devolve o número de funções (as funções paramétricas contam como duas).</para> </listitem> </varlistentry> <varlistentry> <term >Parser listFunctionNames </term> <listitem> <para >Devolve uma lista com todas as funções.</para> </listitem> </varlistentry> <varlistentry> <term >Parser fnameToId texto </term> <listitem> <para >Devolve o número identificador da função <parameter >texto</parameter > ou -1 se o nome da função <parameter >texto</parameter > não foi encontrado.</para> </listitem> </varlistentry> <varlistentry> <term >Parser id x </term> <listitem> <para >Calcula o valor <parameter >x</parameter > da função com o ID <parameter >id</parameter > ou devolve 0.0 se o <parameter >id</parameter > não existe.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionFVisible id </term> <listitem> <para >Devolve 'true' se a função com o ID <parameter >id</parameter > for visível, caso contrário devolve 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionF1Visible id </term> <listitem> <para >Devolve 'true' se a primeira derivada da função com o ID <parameter >id</parameter > estiver visível, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionF2Visible id </term> <listitem> <para >Devolve 'true' se a segunda derivada da função com o ID <parameter >id</parameter > estiver visível, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionIntVisible id </term> <listitem> <para >Devolve 'true' se o integral da função com o ID <parameter >id</parameter > estiver visível, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionFVisible visivel id </term> <listitem> <para >Mostra a função com o ID <parameter >id</parameter > se o <parameter >visivel</parameter > for igual a 'true'. Se este valor for 'false', a função ficará escondida. Será devolvido 'true' se a função existir, caso contrário 'false'</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionF1Visible visivel id </term> <listitem> <para >Mostra a primeira derivada da função com o ID <parameter >id</parameter > se o <parameter >visivel</parameter > for igual a 'true'. Se este valor for 'false', a função ficará escondida. Será devolvido 'true' se a função existir, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionF2Visible visivel id </term> <listitem> <para >Mostra a segunda derivada da função com o ID <parameter >id</parameter > se o <parameter >visivel</parameter > for igual a 'true'. Se este valor for 'false', a função ficará escondida. Será devolvido 'true' se a função existir, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionIntVisible visivel id </term> <listitem> <para >Mostra o integral da função com o ID <parameter >id</parameter > se o <parameter >visivel</parameter > for igual a 'true'. Se este valor for 'false', a função ficará escondida. Será devolvido 'true' se a função existir, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionStr id </term> <listitem> <para >Devolve a expressão da função com o ID <parameter >id</parameter >. Se a função não existir, é devolvida uma cadeia de caracteres vazia.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionFColor id </term> <listitem> <para >Devolve a cor da função com o ID <parameter >id</parameter >.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionF1Color id </term> <listitem> <para >Devolve a cor da primeira derivada da função com o ID <parameter >id</parameter >.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionF2Color id </term> <listitem> <para >Devolve a cor da segunda derivada da função com o ID <parameter >id</parameter >.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionIntColor id </term> <listitem> <para >Devolve a cor do integral da função com o ID <parameter >id</parameter >.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionFColor cor id </term> <listitem> <para >Muda a cor da função com o ID <parameter >id</parameter > para <parameter >cor</parameter >. Será devolvido 'true' se a função existir, caso contrário será devolvido 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionF1Color cor id </term> <listitem> <para >Muda a cor da primeira derivada da função com o ID <parameter >id</parameter > para <parameter >cor</parameter >. Será devolvido 'true' se a função existir, caso contrário será devolvido 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionF2Color cor id </term> <listitem> <para >Muda a cor da segunda derivada da função com o ID <parameter >id</parameter > para <parameter >cor</parameter >. Será devolvido 'true' se a função existir, caso contrário será devolvido 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionIntColor cor id </term> <listitem> <para >Muda a cor do integral da função com o ID <parameter >id</parameter > para <parameter >cor</parameter >. Será devolvido 'true' se a função existir, caso contrário será devolvido 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionFLineWidth id </term> <listitem> <para >Devolve a espessura do traço da função com o ID <parameter >id</parameter >. Se a função não existir, será devolvido 0.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionF1LineWidth id </term> <listitem> <para >Devolve a espessura do traço da primeira derivada da função com o ID <parameter >id</parameter >. Se a função não existir, será devolvido 0.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionF2LineWidth id </term> <listitem> <para >Devolve a espessura do traço da primeira derivada da função com o ID <parameter >id</parameter >. Se a função não existir, será devolvido 0.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionIntLineWidth id </term> <listitem> <para >Devolve a espessura do traço do integral da função com o ID <parameter >id</parameter >. Se a função não existir, será devolvido 0.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionFLineWidth espessuraTraco id </term> <listitem> <para >Configura a espessura do traço da função com o ID <parameter >id</parameter > como sendo igual a <parameter >espessuraTraco</parameter >. Será devolvido 'true' se a função existir, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionF1LineWidth espessuraTraco id </term> <listitem> <para >Configura a espessura do traço da primeira derivada da função com o ID <parameter >id</parameter > como sendo igual a <parameter >espessuraTraco</parameter >. Será devolvido 'true' se a função existir, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionF2LineWidth espessuraTraco id </term> <listitem> <para >Configura a espessura do traço da segunda derivada da função com o ID <parameter >id</parameter > como sendo igual a <parameter >espessuraTraco</parameter >. Será devolvido 'true' se a função existir, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionIntLineWidth espessuraTraco id </term> <listitem> <para >Configura a espessura do traço do integral da função com o ID <parameter >id</parameter > como sendo igual a <parameter >espessuraTraco</parameter >. Será devolvido 'true' se a função existir, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionParameterList id </term> <listitem> <para >Devolve uma lista com todos os valores de parâmetros da função com o ID <parameter >id</parameter >.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionAddParameter novo_parametro id </term> <listitem> <para >Adiciona o valor do parâmetro <parameter >novo_parametro</parameter > à função com o ID <parameter >id</parameter >. Será devolvido 'true' se a operação foi bem sucedida, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionRemoveParameter remover_parametro id </term> <listitem> <para >Remove o valor do parâmetro <parameter >remover_parametro</parameter > da função com o ID <parameter >id</parameter >. Será devolvido 'true' se a operação foi bem sucedida, caso contrário 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionMinValue id </term> <listitem> <para >Devolve o valor mínimo do intervalo do gráfico da função com o ID <parameter >id</parameter >. Se a função não existir ou se o valor mínimo não estiver definido, será devolvida uma cadeia de caracteres vazia.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionMaxValue id </term> <listitem> <para >Devolve o valor máximo do intervalo do gráfico da função com o ID <parameter >id</parameter >. Se a função não existir ou se o valor máximo não estiver definido, será devolvida uma cadeia de caracteres vazia.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionMinValue min id </term> <listitem> <para >Configura o valor mínimo do intervalo do gráfico da função com o ID <parameter >id</parameter > como sendo igual a <parameter >min</parameter >. Será devolvido 'true' se a função existir e se a expressão for válida, caso contrário será devolvido 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionMaxValue max id </term> <listitem> <para >Configura o valor máximo do intervalo do gráfico da função com o ID <parameter >id</parameter > como sendo igual a <parameter >max</parameter >. Será devolvido 'true' se a função existir e se a expressão for válida, caso contrário será devolvido 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionStartXValue id </term> <listitem> <para >Devolve o ponto em X inicial do integral da função com o ID <parameter >id</parameter >. Se a função não existir ou se a expressão do ponto X não estiver definida, será devolvida uma cadeia de caracteres vazia.</para> </listitem> </varlistentry> <varlistentry> <term >Parser functionStartYValue id </term> <listitem> <para >Devolve o ponto em Y inicial do integral da função com o ID <parameter >id</parameter >. Se a função não existir ou se a expressão do ponto Y não estiver definida, será devolvida uma cadeia de caracteres vazia.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionStartXValue min id </term> <listitem> <para >Configura o ponto inicial em X do integral da função com o ID <parameter >id</parameter > como sendo igual a <parameter >x</parameter >. Será devolvido 'true' se a função existir e a expressão for válida, caso contrário será devolvido 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >Parser setFunctionStartYValue max id </term> <listitem> <para >Configura o ponto inicial em Y do integral da função com o ID <parameter >id</parameter > como sendo igual a <parameter >y</parameter >. Será devolvido 'true' se a função existir e a expressão for válida, caso contrário será devolvido 'false'.</para> </listitem> </varlistentry> <varlistentry> <term >View stopDrawing </term> <listitem> <para >Se o &kmplot; estiver a desenhar de momento a função, esse procedimento irá parar.</para> </listitem> </varlistentry> <varlistentry> <term >View drawPlot </term> <listitem> <para >Volta a desenhar todas as funções.</para> </listitem> </varlistentry> </variablelist> </para> </chapter> <!-- Local Variables: mode: sgml sgml-minimize-attributes:nil sgml-general-insert-case:lower sgml-indent-step:0 sgml-indent-data:nil sgml-parent-document:("index.docbook" "BOOK" "CHAPTER") End: -->