Capítulo 7. Programando com o KmPlot

Um nova recurso do KDE 4.0 é que você poder criar programas para o KmPlot com o D-Bus para o KDE 4. Por exemplo, se você quiser definir uma nova função f(x)=2sin x+3cos x, definir a espessura do traço como sendo igual a 20 e depois desenhá-la, você poderá digitar num terminal:

qdbus org.kde.kmplot-PID /parser org.kde.kmplot.Parser.addFunction "f(x)=2sin x+3cos x" "" 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.

qdbus org.kde.kmplot-PID /parser org.kde.kmplot.Parser.setFunctionFLineWidth 20 ID Este comando configura a espessura do traço da função com o ID indicado como sendo igual a 20.

qdbus org.kde.kmplot-PID /view org.kde.kmplot.View.drawPlot Este comando atualiza a janela, de modo que a função se torne visível.

Uma lista com as funções disponíveis:

/kmplot org.kde.kmplot.KmPlot.fileOpen url

Carrega o arquivo url.

/maindlg org.kde.kmplot.MainDlg.isModified

Devolve 'true' se foram feitas alterações.

/maindlg org.kde.kmplot.MainDlg.checkModified

Se existirem alterações por salvar, aparece uma janela para salvar, ignorar ou cancelar os gráficos.

/maindlg org.kde.kmplot.MainDlg.editAxes

Abre o diálogo de edição do sistema de coordenadas.

/maindlg org.kde.kmplot.MainDlg.toggleShowSlider

Mostra/oculta a janela da barra deslizante do parâmetro.

/maindlg org.kde.kmplot.MainDlg.slotSave

Salva as funções (abre o diálogo de gravação se for um arquivo novo).

/maindlg org.kde.kmplot.MainDlg.slotSaveas

O mesmo que a opção ArquivoSalvar Como do menu.

/maindlg org.kde.kmplot.MainDlg.slotPrint

Abre o diálogo de impressão.

/maindlg org.kde.kmplot.MainDlg.slotResetView

O mesmo que a opção VerLimpar a Área do menu.

/maindlg org.kde.kmplot.MainDlg.slotExport

Abre o diálogo de exportação.

/maindlg org.kde.kmplot.MainDlg.slotSettings

Abre o diálogo de configuração.

/maindlg org.kde.kmplot.MainDlg.slotNames

Mostra uma lista com as funções matemáticas predefinidas do manual.

/maindlg org.kde.kmplot.MainDlg.findMinimumValue

O mesmo que escolher a opção FerramentasDescobrir o Mínimo... do menu.

/maindlg org.kde.kmplot.MainDlg.findMaximumValue

O mesmo que escolher a opção FerramentasDescobrir o Máximo... do menu.

/maindlg org.kde.kmplot.MainDlg.graphArea

O mesmo que escolher a opção FerramentasDesenhar a Área do menu.

/maindlg org.kde.kmplot.MainDlg.calculator

O mesmo que escolher a opção FerramentasCalculadora do menu.

/parser org.kde.kmplot.Parser.addFunction f_str0 f_fstr1

Adiciona uma nova função com a expressão f_texto0 e f_texto1. 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 puder ser definida.

/parser org.kde.kmplot.Parser.removeFunction id

Remove a função com o número de ID id. Se a função não puder ser removida, é devolvido 'false', caso contrário 'true'.

/parser org.kde.kmplot.Parser.setFunctionExpression id eq f_str

Atribui a expressão da função texto à função cujo identificador é id. Devolve 'true' se for bem sucedido, caso contrário devolve 'false'.

/parser org.kde.kmplot.Parser.countFunctions

Devolve o número de funções (as funções paramétricas contam como duas).

/parser org.kde.kmplot.Parser.listFunctionNames

Devolve uma lista com todas as funções.

/parser org.kde.kmplot.Parser.fnameToID f_str

Devolve o número identificador da função texto ou -1 se o nome da função texto não foi encontrado.

/parser org.kde.kmplot.Parser.functionFVisible id

Devolve 'true' se a função com o ID id for visível, caso contrário devolve 'false'.

/parser org.kde.kmplot.Parser.functionF1Visible id

Devolve 'true' se a primeira derivada da função com o ID id estiver visível, caso contrário 'false'.

/parser org.kde.kmplot.Parser.functionF2Visible id

Devolve 'true' se a segunda derivada da função com o ID id estiver visível, caso contrário 'false'.

/parser org.kde.kmplot.Parser.functionIntVisible id

Devolve 'true' se o integral da função com o ID id estiver visível, caso contrário 'false'.

/parser org.kde.kmplot.Parser.setFunctionFVisible id visible

Mostra a função com o ID id se o visivel 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'

/parser org.kde.kmplot.Parser.setFunctionF1Visible id visible

Mostra a primeira derivada da função com o ID id se o visivel 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'.

/parser org.kde.kmplot.Parser.setFunctionF2Visible id visible

Mostra a segunda derivada da função com o ID id se o visivel 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'.

/parser org.kde.kmplot.Parser.setFunctionIntVisible id visible

Mostra o integral da função com o ID id se o visivel 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'.

/parser org.kde.kmplot.Parser.functionStr id eq

Devolve a expressão da função com o ID id. Se a função não existir, é devolvida uma cadeia de caracteres vazia.

/parser org.kde.kmplot.Parser.functionFLineWidth id

Devolve a espessura do traço da função com o ID id. Se a função não existir, será devolvido 0.

/parser org.kde.kmplot.Parser.functionF1LineWidth id

Devolve a espessura do traço da primeira derivada da função com o ID id. Se a função não existir, será devolvido 0.

/parser org.kde.kmplot.Parser.functionF2LineWidth id

Devolve a espessura do traço da segunda derivada da função com o ID id. Se a função não existir, será devolvido 0.

/parser org.kde.kmplot.Parser.functionIntLineWidth id

Devolve a espessura do traço do integral da função com o ID id. Se a função não existir, será devolvido 0.

/parser org.kde.kmplot.Parser.setFunctionFLineWidth id linewidth

Configura a espessura do traço da função com o ID id como sendo igual a espessuraTraco. Será devolvido 'true' se a função existir, caso contrário 'false'.

/parser org.kde.kmplot.Parser.setFunctionF1LineWidth id linewidth

Configura a espessura do traço da primeira derivada da função com o ID id como sendo igual a espessuraTraco. Será devolvido 'true' se a função existir, caso contrário 'false'.

/parser org.kde.kmplot.Parser.setFunctionF2LineWidth id linewidth

Configura a espessura do traço da segunda derivada da função com o ID id como sendo igual a espessuraTraco. Será devolvido 'true' se a função existir, caso contrário 'false'.

/parser org.kde.kmplot.Parser.setFunctionIntLineWidth id linewidth

Configura a espessura do traço do integral da função com o ID id como sendo igual a espessuraTraco. Será devolvido 'true' se a função existir, caso contrário 'false'.

/parser org.kde.kmplot.Parser.functionParameterList id

Devolve uma lista com todos os valores de parâmetros da função com o ID id.

/parser org.kde.kmplot.Parser.functionAddParameter id new_parameter

Adiciona o valor do parâmetro novo_parametro à função com o ID id. Será devolvido 'true' se a operação foi bem sucedida, caso contrário 'false'.

/parser org.kde.kmplot.Parser.functionRemoveParameter id remove_parameter

Remove o valor do parâmetro remover_parametro da função com o ID id. Será devolvido 'true' se a operação foi bem sucedida, caso contrário 'false'.

/parser org.kde.kmplot.Parser.functionMinValue id

Devolve o valor mínimo do intervalo do gráfico da função com o ID id. Se a função não existir ou se o valor mínimo não estiver definido, será devolvida uma cadeia de caracteres vazia.

/parser org.kde.kmplot.Parser.functionMaxValue id

Devolve o valor máximo do intervalo do gráfico da função com o ID id. Se a função não existir ou se o valor máximo não estiver definido, será devolvida uma cadeia de caracteres vazia.

/parser org.kde.kmplot.Parser.setFunctionMinValue id min

Configura o valor mínimo do intervalo do gráfico da função com o ID id como sendo igual a min. Será devolvido 'true' se a função existir e se a expressão for válida, caso contrário será devolvido 'false'.

/parser org.kde.kmplot.Parser.setFunctionMaxValue id max

Configura o valor máximo do intervalo do gráfico da função com o ID id como sendo igual a max. Será devolvido 'true' se a função existir e se a expressão for válida, caso contrário será devolvido 'false'.

/parser org.kde.kmplot.Parser.functionStartXValue id

Devolve o ponto em X inicial do integral da função com o ID id. 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.

/parser org.kde.kmplot.Parser.functionStartYValue id

Devolve o ponto em Y inicial do integral da função com o ID id. 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.

/parser org.kde.kmplot.Parser.setFunctionStartValue id x y

Configura o ponto inicial em X e Y do integral da função com o ID id como sendo igual a x e y. Será devolvido 'true' se a função existir e a expressão for válida, caso contrário será devolvido 'false'.

/view org.kde.kmplot.View.stopDrawing

Se o KmPlot estiver atualmente desenhando a função, esse procedimento irá parar.

/view org.kde.kmplot.View.drawPlot

Volta a desenhar todas as funções.