1<chapter id="dcop">
2	<title
3>Использование сценариев в &kmplot;</title>
4
5	<para
6>A new feature in KDE 3.4 is that you can write scrips for &kmplot; with DCOP. For example, if you want to define a new function <userinput
7>f(x)=2sin x+3cos x</userinput
8>, set its line width to 20 and then draw it, you type in a console:</para>
9	<para
10><command
11>dcop kmplot-PID Parser addFunction "f(x)=2sin x+3cos x"</command
12> As a result, the new function's id number will be returned, or -1 if the function could not be defined.</para>
13	<para
14><command
15>
16>dcop kmplot-PID Parser setFunctionFLineWidth 20 ID</command
17> Эта команда изменяет ширину графика функции с номером ID на 20.</para>
18	<para
19><command
20>
21>dcop kmplot-PID View drawPlot</command
22> Эта команда строит график функции.</para>
23<para
24>Список доступных функций: <variablelist>
25		<varlistentry>
26			<term
27>KmPlotShell fileOpen &amp;url </term>
28			<listitem>
29				<para
30>Загрузить файл <parameter
31>url</parameter
32>.</para>
33			</listitem>
34		</varlistentry>
35		<varlistentry>
36			<term
37>MainDlg isModified </term>
38			<listitem>
39				<para
40>Возвращает true если изменения сделаны после последнего сохранения.</para>
41			</listitem>
42		</varlistentry>
43		<varlistentry>
44			<term
45>MainDlg editColors </term>
46			<listitem>
47				<para
48>Открывает диалог цветов.</para>
49			</listitem>
50		</varlistentry>
51		<varlistentry>
52			<term
53>MainDlg editAxes </term>
54			<listitem>
55				<para
56>Открывает диалог коордниатной системы.</para>
57			</listitem>
58		</varlistentry>
59		<varlistentry>
60			<term
61>MainDlg editScaling </term>
62			<listitem>
63				<para
64>Открывает диалог масштабирования.</para>
65			</listitem>
66		</varlistentry>
67		<varlistentry>
68			<term
69>MainDlg editFonts </term>
70			<listitem>
71				<para
72>Открывает диалог шрифтов.</para>
73			</listitem>
74		</varlistentry>
75		<varlistentry>
76			<term
77>MainDlg editConstants </term>
78			<listitem>
79				<para
80>Открывает диалог констант.</para>
81			</listitem>
82		</varlistentry>
83		<varlistentry>
84			<term
85>MainDlg newFunction </term>
86			<listitem>
87				<para
88>Открывает диалог построения новой функции.</para>
89			</listitem>
90		</varlistentry>
91		<varlistentry>
92			<term
93>MainDlg newParametric </term>
94			<listitem>
95				<para
96>Открывает диалог построения новой паарметрической функции.</para>
97			</listitem>
98		</varlistentry>
99		<varlistentry>
100			<term
101>MainDlg newPolar </term>
102			<listitem>
103				<para
104>Открывает диалог построения новой функции в полярной системе координат.</para>
105			</listitem>
106		</varlistentry>
107		<varlistentry>
108			<term
109>MainDlg toggleShowSlider0 </term>
110			<listitem>
111				<para
112>Показать/скрыть ползунок параметра 1.</para>
113			</listitem>
114		</varlistentry>
115		<varlistentry>
116			<term
117>MainDlg toggleShowSlider1 </term>
118			<listitem>
119				<para
120>Показать/скрыть ползунок параметра 2.</para>
121			</listitem>
122		</varlistentry>
123		<varlistentry>
124			<term
125>MainDlg toggleShowSlider2 </term>
126			<listitem>
127				<para
128>Показать/скрыть ползунок параметра 3.</para>
129			</listitem>
130		</varlistentry>
131		<varlistentry>
132		  <term
133>MainDlg toggleShowSlider3 </term>
134		  <listitem>
135		    <para
136>Показать/скрыть ползунок параметра 4.</para>
137		  </listitem>
138		</varlistentry>
139		<varlistentry>
140			<term
141>MainDlg slotSave </term>
142			<listitem>
143				<para
144>Сохранить функции (открыть  диалог сохранения если файлы новые).</para>
145			</listitem>
146		</varlistentry>
147		<varlistentry>
148			<term
149>MainDlg slotSaveas </term>
150			<listitem>
151				<para
152>То же, что и <menuchoice
153><guimenu
154>Файл</guimenu
155><guimenuitem
156>Сохранить как</guimenuitem
157></menuchoice
158>.</para>
159			</listitem>
160		</varlistentry>
161		<varlistentry>
162			<term
163>MainDlg slotEditPlots </term>
164			<listitem>
165				<para
166>Открывает диалог построений.</para>
167			</listitem>
168		</varlistentry>
169		<varlistentry>
170			<term
171>MainDlg slotPrint </term>
172			<listitem>
173				<para
174>Открывает диалог печати.</para>
175			</listitem>
176		</varlistentry>
177		<varlistentry>
178			<term
179>MainDlg slotExport </term>
180			<listitem>
181				<para
182>Открывает диалог экспорта.</para>
183			</listitem>
184		</varlistentry>
185		<varlistentry>
186			<term
187>MainDlg slotSettings </term>
188			<listitem>
189				<para
190>Открывает диалог настроек.</para>
191			</listitem>
192		</varlistentry>
193		<varlistentry>
194			<term
195>MainDlg slotNames </term>
196			<listitem>
197				<para
198>Выводит список предопределённых функций.</para>
199			</listitem>
200		</varlistentry>
201		<varlistentry>
202			<term
203>MainDlg slotCoord1 </term>
204			<listitem>
205				<para
206>Система координат I.</para>
207			</listitem>
208		</varlistentry>
209		<varlistentry>
210			<term
211>MainDlg slotCoord2 </term>
212			<listitem>
213				<para
214>Система координат II.</para>
215			</listitem>
216		</varlistentry>
217		<varlistentry>
218			<term
219>MainDlg slotCoord3 </term>
220			<listitem>
221				<para
222>Система координат III.</para>
223			</listitem>
224		</varlistentry>
225		<varlistentry>
226			<term
227>MainDlg getYValue </term>
228			<listitem>
229				<para
230>То же самое, что и <menuchoice
231><guimenu
232>Сервис</guimenu
233><guimenuitem
234>Получить ординату...</guimenuitem
235></menuchoice
236>.</para>
237			</listitem>
238		</varlistentry>
239		<varlistentry>
240			<term
241>MainDlg findMinimumValue </term>
242			<listitem>
243				<para
244>То же самое, что и <menuchoice
245><guimenu
246>Сервис</guimenu
247><guimenuitem
248>Поиск точки минимума...</guimenuitem
249></menuchoice
250>.</para>
251			</listitem>
252		</varlistentry>
253		<varlistentry>
254			<term
255>MainDlg findMaximumValue </term>
256			<listitem>
257				<para
258>То же самое, что и <menuchoice
259><guimenu
260>Сервис</guimenu
261><guimenuitem
262>Поиск точки максимума...</guimenuitem
263></menuchoice
264>.</para>
265			</listitem>
266		</varlistentry>
267		<varlistentry>
268			<term
269>MainDlg graphArea </term>
270			<listitem>
271				<para
272>То же самое, что и <menuchoice
273><guimenu
274>Сервис</guimenu
275><guimenuitem
276>Площадь под графиком...</guimenuitem
277></menuchoice
278>.</para>
279			</listitem>
280		</varlistentry>
281		<varlistentry>
282			<term
283>Parser addFunction f_str </term>
284			<listitem>
285				<para
286>Добавить функцию, определяемую выражением <parameter
287>f_str</parameter
288>. Если оно не содержит имени функции, оно будет сгенерировано автоматически. В случае ошибки будет возвращено -1, иначе - номер функции.</para>
289			</listitem>
290		</varlistentry>
291		<varlistentry>
292			<term
293>Parser delfkt id </term>
294			<listitem>
295				<para
296>Удалить функцию по её номеру <parameter
297>id</parameter
298>. В случае ошибки возвращается false, иначе - true.</para>
299			</listitem>
300		</varlistentry>
301		<varlistentry>
302			<term
303>Parser setFunctionExpression f_str id </term>
304			<listitem>
305				<para
306>Изменить выражение функции с номером <parameter
307>id</parameter
308> на <parameter
309>f_str</parameter
310>. В случае ошибки возвращается false, иначе - true.</para>
311			</listitem>
312		</varlistentry>
313		<varlistentry>
314			<term
315>Parser countFunctions </term>
316			<listitem>
317				<para
318>Возвращает число функций (параметрические считаются за две).</para>
319			</listitem>
320		</varlistentry>
321		<varlistentry>
322		  <term
323>Parser listFunctionNames </term>
324		  <listitem>
325		    <para
326>Возвращает список всех функций.</para>
327		  </listitem>
328		</varlistentry>
329		<varlistentry>
330		  <term
331>Parser fnameToId f_str </term>
332		  <listitem>
333		    <para
334>Возвращает номер <parameter
335>f_str</parameter
336> или -1, если функции с именем <parameter
337>f_str</parameter
338> нет.</para>
339		  </listitem>
340		</varlistentry>
341		<varlistentry>
342		  <term
343>Parser id x </term>
344		  <listitem>
345		    <para
346>Вычисляет значение функции с номером <parameter
347>id</parameter
348> для аргумента <parameter
349>x</parameter
350>, если такой функции нет, возвращает 0.0.</para>
351		  </listitem>
352		</varlistentry>
353		<varlistentry>
354		  <term
355>Parser functionFVisible id </term>
356		  <listitem>
357		    <para
358>Возвращает true если функция с номером <parameter
359>id</parameter
360> видима.</para>
361		  </listitem>
362		</varlistentry>
363		<varlistentry>
364		  <term
365>Parser functionF1Visible id </term>
366		  <listitem>
367		    <para
368>Возвращает true если видна производная первого порядка функции с номером <parameter
369>id</parameter
370>.</para>
371		  </listitem>
372		</varlistentry>
373		<varlistentry>
374		  <term
375>Parser functionF2Visible id </term>
376		  <listitem>
377		    <para
378>Возвращает true если видна производная второго порядка функции с номером <parameter
379>id</parameter
380>.</para>
381		  </listitem>
382		</varlistentry>
383		<varlistentry>
384		  <term
385>Parser functionIntVisible id </term>
386		  <listitem>
387		    <para
388>Возвращает true если видна первообразная функции с номером <parameter
389>id</parameter
390>.</para>
391		  </listitem>
392		</varlistentry>
393		<varlistentry>
394		  <term
395>Parser setFunctionFVisible visible id </term>
396		  <listitem>
397		    <para
398>Отображает или скрывает функцию с номером <parameter
399>id</parameter
400>. Возвращает false если функция не существует</para>
401		  </listitem>
402		</varlistentry>
403		<varlistentry>
404		  <term
405>Parser setFunctionF1Visible visible id </term>
406		  <listitem>
407		    <para
408>Отображает или скрывает первую производную функции с номером <parameter
409>id</parameter
410>. Возвращает false если функция не существует.</para>
411		  </listitem>
412		</varlistentry>
413		<varlistentry>
414		  <term
415>Parser setFunctionF2Visible visible id </term>
416		  <listitem>
417		    <para
418>Отображает или скрывает вторую производную функции с номером <parameter
419>id</parameter
420>. Возвращает false если функция не существует.</para>
421		  </listitem>
422		</varlistentry>
423		<varlistentry>
424		  <term
425>Parser setFunctionIntVisible visible id </term>
426		  <listitem>
427		    <para
428>Отображает или скрывает первообразную функции с номером <parameter
429>id</parameter
430>. Возвращает false если функция не существует.</para>
431		  </listitem>
432		</varlistentry>
433		<varlistentry>
434		  <term
435>Parser functionStr id </term>
436		  <listitem>
437		    <para
438>Возвращает выражение функции с номером <parameter
439>id</parameter
440>. Возвращает false если функция не существует.</para>
441		  </listitem>
442		</varlistentry>
443		<varlistentry>
444		  <term
445>Parser functionFColor id </term>
446		  <listitem>
447		    <para
448>Возвращает цвет графика функции с номером <parameter
449>id</parameter
450>.</para>
451		  </listitem>
452		</varlistentry>
453		<varlistentry>
454		  <term
455>Parser functionF1Color id </term>
456		  <listitem>
457		    <para
458>Возвращает цвет графика первой производной функции с номером <parameter
459>id</parameter
460>.</para>
461		  </listitem>
462		</varlistentry>
463		<varlistentry>
464		  <term
465>Parser functionF2Color id </term>
466		  <listitem>
467		    <para
468>Возвращает цвет графика второй производной функции с номером <parameter
469>id</parameter
470>.</para>
471		  </listitem>
472		</varlistentry>
473		<varlistentry>
474		  <term
475>Parser functionIntColor id </term>
476		  <listitem>
477		    <para
478>Возвращает цвет графика первообразной функции с номером <parameter
479>id</parameter
480>.</para>
481		  </listitem>
482		</varlistentry>
483		<varlistentry>
484		  <term
485>Parser setFunctionFColor color id </term>
486		  <listitem>
487		    <para
488>Установить цвет графика функции с номером <parameter
489>id</parameter
490> в <parameter
491>color</parameter
492>. Возвращает false если функция не существует.</para>
493		  </listitem>
494		</varlistentry>
495		<varlistentry>
496		  <term
497>Parser setFunctionF1Color color id </term>
498		  <listitem>
499		    <para
500>Установить цвет графика первой производной функции с номером <parameter
501>id</parameter
502> в <parameter
503>color</parameter
504>. Возвращает false если функция не существует.</para>
505		  </listitem>
506		</varlistentry>
507		<varlistentry>
508		  <term
509>Parser setFunctionF2Color color id </term>
510		  <listitem>
511		    <para
512>Установить цвет графика второй производной функции с номером <parameter
513>id</parameter
514> в <parameter
515>color</parameter
516>. Возвращает false если функция не существует.</para>
517		  </listitem>
518		</varlistentry>
519		<varlistentry>
520		  <term
521>Parser setFunctionIntColor color id </term>
522		  <listitem>
523		    <para
524>Установить цвет графика первообразной функции с номером <parameter
525>id</parameter
526> в <parameter
527>color</parameter
528>. Возвращает false если функция не существует.</para>
529		  </listitem>
530		</varlistentry>
531		<varlistentry>
532		  <term
533>Parser functionFLineWidth id </term>
534		  <listitem>
535		    <para
536>Возвращает ширину графика функции с номером <parameter
537>id</parameter
538>. Возвращает 0 если функция не существует.</para>
539		  </listitem>
540		</varlistentry>
541		<varlistentry>
542		  <term
543>Parser functionF1LineWidth id </term>
544		  <listitem>
545		    <para
546>Возвращает ширину графика первой производной функции с номером <parameter
547>id</parameter
548>. Возвращает 0 если функция не существует.</para>
549		  </listitem>
550		</varlistentry>
551		<varlistentry>
552		  <term
553>Parser functionF2LineWidth id </term>
554		  <listitem>
555		    <para
556>Возвращает ширину графика первой производной функции с номером <parameter
557>id</parameter
558>. Возвращает 0 если функция не существует.</para>
559		  </listitem>
560		</varlistentry>
561		<varlistentry>
562		  <term
563>Parser functionIntLineWidth id </term>
564		  <listitem>
565		    <para
566>Возвращает ширину графика первообразной функции с номером <parameter
567>id</parameter
568>. Возвращает 0 если функция не существует.</para>
569		  </listitem>
570		</varlistentry>
571		<varlistentry>
572		  <term
573>Parser setFunctionFLineWidth linewidth id </term>
574		  <listitem>
575		    <para
576>Установить ширину графика функции с номером <parameter
577>id</parameter
578> в <parameter
579>linewidth</parameter
580>. Возвращает false если функция не существует.</para>
581		  </listitem>
582		</varlistentry>
583		<varlistentry>
584		  <term
585>Parser setFunctionF1LineWidth linewidth id </term>
586		  <listitem>
587		    <para
588>Установить ширину графика первой производной функции с номером <parameter
589>id</parameter
590> в <parameter
591>linewidth</parameter
592>. Возвращает false если функция не существует.</para>
593		  </listitem>
594		</varlistentry>
595		<varlistentry>
596		  <term
597>Parser setFunctionF2LineWidth linewidth id </term>
598		  <listitem>
599		    <para
600>Установить ширину графика второй производной функции с номером <parameter
601>id</parameter
602> в <parameter
603>linewidth</parameter
604>. Возвращает false если функция не существует.</para>
605		  </listitem>
606		</varlistentry>
607		<varlistentry>
608		  <term
609>Parser setFunctionIntLineWidth linewidth id </term>
610		  <listitem>
611		    <para
612>Установить ширину графика первообразной функции с номером <parameter
613>id</parameter
614> в <parameter
615>linewidth</parameter
616>. Возвращает false если функция не существует.</para>
617		  </listitem>
618		</varlistentry>
619		<varlistentry>
620		  <term
621>Parser functionParameterList id </term>
622		  <listitem>
623		    <para
624>Возвращает список всех значений параметра функции с номером <parameter
625>id</parameter
626>.</para>
627		  </listitem>
628		</varlistentry>
629		<varlistentry>
630		  <term
631>Parser functionAddParameter new_parameter id </term>
632		  <listitem>
633		    <para
634>Добавить значение параметра <parameter
635>new_parameter</parameter
636> функции с номером <parameter
637>id</parameter
638>. Возвращает false в случае ошибки.</para>
639		  </listitem>
640		</varlistentry>
641		<varlistentry>
642		  <term
643>Parser functionRemoveParameter remove_parameter id </term>
644		  <listitem>
645		    <para
646>Удалить значение параметра <parameter
647>remove_parameter</parameter
648> функции с номером <parameter
649>id</parameter
650>. Возвращает false в случае ошибки.</para>
651		  </listitem>
652		</varlistentry>
653		<varlistentry>
654		  <term
655>Parser functionMinValue id </term>
656		  <listitem>
657		    <para
658>Возвращает минимум области построения функции с номером <parameter
659>id</parameter
660>. Если функция не существует или минимум не определён, возвращается пустая строка.</para>
661		  </listitem>
662		</varlistentry>
663		<varlistentry>
664		  <term
665>Parser functionMaxValue id </term>
666		  <listitem>
667		    <para
668>Возвращает максимум области построения функции с номером <parameter
669>id</parameter
670>. Если функция не существует или максимум не определён, возвращается пустая строка.</para>
671		  </listitem>
672		</varlistentry>
673		<varlistentry>
674		  <term
675>Parser setFunctionMinValue min id </term>
676		  <listitem>
677		    <para
678>Устанавливает минимум области построения функции с номером <parameter
679>id</parameter
680>в <parameter
681>min</parameter
682>. Если функция не существует или выражение недопустимое, возвращается false.</para>
683		  </listitem>
684		</varlistentry>
685		<varlistentry>
686		  <term
687>Parser setFunctionMaxValue max id </term>
688		  <listitem>
689		    <para
690>Устанавливает максимум области построения функции с номером <parameter
691>id</parameter
692>в <parameter
693>min</parameter
694>. Если функция не существует или выражение недопустимое, возвращается false.</para>
695		  </listitem>
696		</varlistentry>
697
698		<varlistentry>
699		  <term
700>Parser functionStartXValue id </term>
701		  <listitem>
702		    <para
703>Устанавливает начальную абсциссу для первообразной функции с номером <parameter
704>id</parameter
705>. Если функция не существует или выражение абсциссы не определено, возвращается пустая строка.</para>
706		  </listitem>
707		</varlistentry>
708		<varlistentry>
709		  <term
710>Parser functionStartYValue id </term>
711		  <listitem>
712		    <para
713>Возвращает начальную ординату для первообразной функции с номером <parameter
714>id</parameter
715>. Если функция не существует или выражение ординаты не определено, возвращается пустая строка.</para>
716		  </listitem>
717		</varlistentry>
718		<varlistentry>
719		  <term
720>Parser setFunctionStartXValue min id </term>
721		  <listitem>
722		    <para
723>Устанавливает начальную абсциссу для первообразной функции с номером <parameter
724>id</parameter
725> в <parameter
726>x</parameter
727>. Если функция не существует или выражение недопустимое, возвращается false.</para>
728		  </listitem>
729		</varlistentry>
730		<varlistentry>
731		  <term
732>Parser setFunctionStartYValue max id </term>
733		  <listitem>
734		    <para
735>Устанавливает начальную ординату для первообразной функции с номером <parameter
736>id</parameter
737> в <parameter
738>y</parameter
739>. Если функция не существует или выражение недопустимое, возвращается false.</para>
740		  </listitem>
741		</varlistentry>
742		<varlistentry>
743			<term
744>View stopDrawing </term>
745			<listitem>
746				<para
747>Если &kmplot; в данный момент рисует график функции, это будет остановлено.</para>
748			</listitem>
749		</varlistentry>
750		<varlistentry>
751			<term
752>View drawPlot </term>
753			<listitem>
754				<para
755>Перерисовать все графики функций.</para>
756			</listitem>
757		</varlistentry>
758	</variablelist>
759</para>
760</chapter>
761
762<!--
763    Local Variables:
764    mode: sgml
765    sgml-minimize-attributes:nil
766    sgml-general-insert-case:lower
767    sgml-indent-step:0
768    sgml-indent-data:nil
769    sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
770    End:
771    -->