2 <!DOCTYPE book PUBLIC
"-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
3 <!ENTITY kseg
"<application
6 <!ENTITY cabri
"<application
9 <!ENTITY drgeo
"<application
12 <!ENTITY package
"kdeedu">
13 <!ENTITY kappname
"&kig;">
14 <!ENTITY % addindex
"IGNORE">
15 <!ENTITY % Russian
"INCLUDE">
16 <!-- change language only here -->
20 <book lang=
"&language;">
24 >Руководство
&kig;</title>
35 >devriese@kde.org
</email
39 <othercredit role=
"translator"
47 >shafff@ukr.net
</email
51 >Перевод на русский язык
</contrib
65 >Dominique Devriese
</holder>
69 >&FDLNotice;</legalnotice>
78 >&kig; — это программа интерактивной геометрии.
</para>
89 >интерактивная геометрия
</keyword>
101 <chapter id=
"introduction">
106 >&kig; — это программа интерактивной геометрии. Она создана для двух целей:
</para>
111 >Дать учащимся возможность исследовать математические концепции с помощью компьютера.
</para
116 >Быть инструментом
<acronym
118 > (What You See Is What You Get
— что видишь, то и получаешь) для построения математических функций и встраивания их в другие документы.
</para
123 >Вы можете сообщить об ошибках в
&kig;, используя стандартный диалог сообщения об ошибках (
<menuchoice
127 >Сообщить об ошибке...
</guimenuitem
129 >), или просто написать по адресу
<email
130 >devriese@kde.org
</email
131 > (на английском языке).
</para>
133 >&kig; поддерживает макротипы и геометрическое место точек. Если вы создали интересный (и сложный) макротип, который может быть полезен другим, отправьте его
<ulink url=
"mailto:devriese@kde.org"
135 >, и он будет добавлен в официальный выпуск программы (под лицензией
<ulink url=
"http://www.gnu.org/licenses/licenses.html#GPL"
137 >, что значит, что другие смогут изменять его и адаптировать).
</para>
140 <chapter id=
"using-kig-basic">
143 <section id=
"constructing-objects">
145 >Построение объектов
</title>
146 <section id=
"constructing-points">
148 >Построение точек
</title>
150 >Вы можете сделать это несколькими способами:
</para>
154 >Через меню
<menuchoice
162 > или через соответствующую кнопку на панели инструментов. После этого щёлкните на необходимой позиции в окне.
</para
165 >Таким способом можно построить и другие объекты: выбрать необходимый инструмент можно через пункт меню или нажать кнопку на панели инструментов.
</para
170 >Так как точки требуется строить чаще, есть также способ сделать это быстрей. Нажмите в области окна
<mousebutton
171 >средней
</mousebutton
172 > кнопкой мыши.
</para>
176 >Вы можете создавать точки при построении других объектов, Подробности указаны в разделе
<xref linkend=
"constructing-other-objects"/>.
</para>
182 >Точка построена
</screeninfo>
185 <imagedata fileref=
"constructed_a_point.png"
190 >Точка построена
</phrase>
196 <section id=
"constructing-other-objects">
198 >Построение других объектов
</title>
200 >Вы можете построить определённый объект, выбрав его из меню
<guimenu
202 > или нажав на одну из кнопок панели инструментов.
</para>
205 >Построение окружности
</screeninfo>
208 <imagedata fileref=
"constructing_a_circle.png"
213 >Построение окружности
</phrase>
218 >Начнётся построение объекта выбранного типа. Все объекты требуют указания параметров. Например, если вы выбрали построение окружности по центру и точке, вы должны передать две точки
— для центра и радиуса.
</para>
220 >Выбор этих параметров очень прост. Нужно поместить курсор мыши над объектом, который вы хотите использовать. Если этот объект может быть использован для построения, появится изображение с видом объекта. Для объектов, которым требуются точки как аргументы, вы можете построить новую точку в текущей позиции курсора и выбрать её нажатием
<mousebutton
222 > кнопки мыши.
</para>
224 >Вы всегда можете отменить построение нового объекта нажатием клавиши
&Esc; или нажатием кнопки
<guiicon
225 >Отменить построение объекта
</guiicon
226 > (красный круг с 'X' посередине) на панели инструментов.
</para>
229 >Построение окружности.
</screeninfo>
232 <imagedata fileref=
"constructing_a_circle_2.png"
237 >Построение окружности
</phrase>
244 <section id=
"selecting-objects">
246 >Выбор объектов
</title>
248 >Есть два способа выбора объекта:
</para>
252 >Вы можете просто щёлкнуть на объекте, при этом, чтобы предыдущее выделение не снималось, нажмите
&Ctrl; при щелчке.
</para>
256 >Щёлкните по пустой области окна и, не отпуская кнопки мыши, переместите курсор, при этом появится
"прямоугольник", а объекты, попадающие в него, будут выбраны. Клавиша
&Ctrl; также предотвращает снятие предыдущего выделения.
</para>
262 >Выбор объектов
</screeninfo>
265 <imagedata fileref=
"selecting_objects.png" format=
"PNG"/>
269 >Выбор объектов
</phrase>
275 <section id=
"moving-objects">
277 >Перемещение объектов
</title>
279 >Для перемещения объектов
<link linkend=
"selecting-objects"
283 >Затем щёлкните на одном из выделенных объектов и, нe отпуская
<mousebutton
285 > кнопку мыши, перетащите их.
</para>
288 >Перемещение некоторых объектов (особенно сложных геометрических мест точек), может быть медленным, т.к. при этом делаются необходимые расчёты.
</para
292 >Вы можете сделать это, щёлкнув
<mousebutton
294 > кнопкой мыши на выбранном объекте, выбрать в контекстном меню
<guimenuitem
295 >Переместить
</guimenuitem
296 >. После этого любое перемещение мыши приведёт и к перемещению объекта. Чтобы прекратить перетаскивание, щёлкните
<mousebutton
298 > кнопкой мыши.
</para
301 <section id=
"deleting-objects">
303 >Удаление объектов
</title>
305 ><link linkend=
"selecting-objects"
307 > объекты и:
<itemizedlist>
310 >нажмите клавишу
<keycap
316 >либо нажмите кнопку удаления на панели инструментов.
</para>
320 >либо выберите
<guimenuitem
321 >Удалить
</guimenuitem
322 > в
<link linkend=
"objects-context-menus"
323 >контекстном меню
</link
329 <section id=
"showing-hiding-objects">
331 >Отображение и скрытие объектов
</title>
333 >В
&kig; объекты можно скрывать. При выборе объектов выберите пункт меню
<guimenuitem
335 > в
<link linkend=
"objects-context-menus"
336 >контекстном меню
</link
339 >Чтобы показать все скрытые объекты, выберите пункт меню
<menuchoice
343 >Показать все
</guimenuitem
347 <section id=
"undo-redo">
349 >Отмена/Повтор
</title>
351 >Вы можете отменить почти любое сделанное вами изменение. Используйте кнопки на панели инструментов или комбинации клавиш.
</para>
353 <section id=
"full-screen-mode">
355 >Полноэкранный режим
</title>
357 >&kig; содержит возможность полноэкранного режима. Чтобы воспользоваться ею, нажмите соответствующую кнопку на панели инструментов или выберите пункт меню
<menuchoice
361 >Полный экран
</guimenuitem
365 >Чтобы выйти из полноэкранного режима, щёлкните
<mousebutton
367 > кнопкой мыши на пустом месте документа и выберите в выпадающем контекстном меню
<menuchoice
369 >Полноэкранный режим
</guimenuitem
371 > или просто нажмите клавишу
&Esc;.
</para>
375 <chapter id=
"kig-object-types">
377 >Типы объектов
&kig;</title>
379 >&kig; поддерживает много различных типов объектов. Вы можете опробовать их самостоятельно. Помните, что не все типы объектов есть на панели инструментов, отсутствующие можно найти в меню
<guimenu
381 >. Однако, как и любое приложение
&kde;,
&kig; поддерживает изменение набора кнопок на панелях инструментов. Это можно сделать через пункт меню
<menuchoice
385 >Настроить панели инструментов...
</guimenuitem
390 <chapter id=
"using-advanced">
392 >Дополнительные возможности
</title>
393 <section id=
"objects-context-menus">
395 >Контекстные меню
</title>
397 >В
&kig; предусмотрены контекстные меню для объектов. Для их вызова щёлкните
<mousebutton
399 > кнопкой мыши на объекте. Меню содержит команды построения, установки цветов, скрытия, перемещения и удаления объектов. Кроме того, некоторые объекты имеют дополнительные специфические пункты (например вы сможете изменять точки их построения).
</para>
401 <section id=
"document-context-menus">
403 >Контекстные меню документа
</title>
405 >Нажатием
<mousebutton
407 > кнопки в документе (не на объекте) вы откроете контекстное меню, которое вы можете использовать для построения новых объектов, изменения координатной системы, отображения скрытых объектов и изменения масштаба документа.
</para>
409 <section id=
"defining-macros">
411 >Запись макротипов
</title>
413 >С помощью макротипов вы можете ускорить процесс создания объектов, которые вы часто используете.
</para>
415 >Например, вам нужно сделать макротип, который бы создавал окружность по трём точкам на ней. Вам нужно построить три точки, и используя перпендикуляры и середины отрезков, найти центр окружности, а затем построить окружность по её центру и точке.
</para>
418 >Работа с макротипом
</screeninfo>
421 <imagedata fileref=
"test_run_macro.png" format=
"PNG"/>
425 >Работа с макротипом
</phrase>
431 >После этих действий вам нужно определить макротип. Выберите
<guimenuitem
432 >Запись макротипа
</guimenuitem
435 > или нажмите на соответствующей кнопке на панели инструментов. В появившемся мастере вам будет предложено выбрать входные объекты. В нашем случае, это три точки. (для выбора щёлкните на них). Нажмите
<guibutton
437 > и выберите выходной объект (окружность).
</para>
441 >Мастер записи макротипа
</screeninfo>
444 <imagedata fileref=
"macro_wizard.png" format=
"PNG"/>
448 >Мастер записи макротипа
</phrase>
456 >. Введите имя и описание вновь созданного типа, затем нажмите
<guibutton
461 >Для использования макротипа, нажмите кнопку на панели инструментов, или выберите его из меню
<guimenu
463 >. Его значок будет выглядеть как выходной объект. Вы можете выполнять над макротипами такие же действия, как и с обычными объектами.
</para>
466 >Использование макротипа
</screeninfo>
469 <imagedata fileref=
"macros_at_work.png" format=
"PNG"/>
473 >Использование макротипа
</phrase>
478 <section id=
"working-with-types">
480 >Работа с макротипами
</title>
482 >Макротипы, записанные однажды, сохраняются автоматически, и при следующем запуске программы вы также сможете их использовать. При выборе команды
<guimenuitem
483 >Управление типами
</guimenuitem
486 >, появится диалог, где вы сможете изменить ваши макротипы: удалить, экспортировать и импортировать из файла.
</para>
489 >Управление типами
</screeninfo>
492 <imagedata fileref=
"edit_types_dialog.png" format=
"PNG"/>
496 >Управление типами
</phrase>
501 <section id=
"text-labels">
505 >Вы можете подписывать построения. В
&kig; также есть возможность просматривать разную информацию об объектах (
<quote
509 >Для создания надписи нажмите соответствующую кнопку на панели инструментов, или в меню
<menuchoice
515 >Надпись
</guimenuitem
519 >Затем вам нужно выбрать расположение новой надписи. Для этого щёлкните на области экрана, где должна находится надпись или выберите в контекстном меню какого-либо объекта действие добавления к нему надписи.
</para>
522 >Добавление надписи к окружности
</screeninfo>
525 <imagedata fileref=
"text_label_attaching.png" format=
"PNG"/>
529 >Добавление надписи к окружности
</phrase>
534 >Теперь мы перешли к диалогу надписи. Здесь введите текст, и нажмите
"Готово". В документе появится новая надпись.
</para>
537 >Диалог 'Создать надпись'
</screeninfo>
540 <imagedata fileref=
"text_label_wizard.png" format=
"PNG"/>
544 >Диалог 'Создать надпись'
</phrase>
549 >В надписях поддерживаются шаблоны. Например, вы можете ввести текст
<quote
550 >Сегмент имеет длину %
1 см.
</quote
553 > будет динамически заменяться (в данном случае) на длину.
</para>
555 >Введите текст с символами подстановки (
<token
559 > и т.д.). Убедитесь, что они указаны в правильном порядке, и что вы не пропустили ни одного номера. Нажмите
<guibutton
563 >Мастер отображает введённый вами текст с подстановками. Чтобы выбрать, что отображать, как определённый аргумент, щёлкните на аргументе, затем на объекте, информацию о котором вам нужно отобразить, и выберите пункт в контекстном меню. Например, чтобы выводить информацию о текущей длине отрезка, щёлкните на
<guilabel
564 >аргумент
1</guilabel
565 >, затем на отрезке в главном окне
&kig; и выберите свойство
<guilabel
567 >. Для построения надписи нажмите
<guibutton
572 >Выбор свойства для подстановки в шаблон
</screeninfo>
576 fileref=
"text_label_wizard__select_property.png"
581 >Выбор свойства для подстановки в шаблон
</phrase>
586 <section id=
"locuses">
588 >Геометрическое место точек
</title>
590 >&kig; поддерживает геометрическое место точек (ГМТ). Геометрическим местом точек называется фигура, которая состоит из всех точек плоскости, обладающих определённым свойством. Если для вас это звучит слишком сложно, возможно вы поймёте это на примере:
</para>
592 >Рассмотрим следующее геометрическое построение: Мы строим окружность и точку на ней (которая может перемещаться по его поверхности) расположением курсора мыши на окружности и нажатием
<mousebutton
593 >средней
</mousebutton
594 > кнопки мыши. При этом, если вы попытаетесь переместить эту точку, вы не сможете убрать её с окружности. Затем мы создаём отрезок из той точки к центру окружности и его серединную точку.
</para>
597 >Построение ГМТ
</screeninfo>
601 fileref=
"simple_locus_construction.png"
606 >Построение ГМТ
</phrase>
611 >Теперь, если вы будете перемещать точку, присоединённую к окружности, вторая точка будет перемещаться вместе с ней. Если вы переместите первую точку по окружности, будет нарисована новая окружность размером в два раза меньше существующей. Путь, по которому идёт вторая точка при перемещении первой по окружности, есть её ГМТ.
</para>
613 >Построение ГМТ очень просто. Нажмите на соответствующей кнопке на панели инструментов или через меню
— <menuchoice
621 >. Затем выберите бегущую точку (если вы поместите курсор мыши над ней, появится текст
<guilabel
622 >Бегущая точка
</guilabel
623 >), и зависимую. После этого появится ГМТ.
625 Вот некоторые ссылки по этой теме:
<ulink url=
"http://www.mccme.ru/free-books/prasolov/planim/gl7.htm"
626 >Основные сведения
</ulink>
627 <ulink url=
"http://homepages.irk.ru/mialo/models/geommest.htm"
628 >Геометрическое место точек на плоскости
</ulink
633 <chapter id=
"scripting">
637 >Вы также можете создавать свои типы (макротипы, или просто макросы) на языке Python. Такую возможность, кроме
&kig;, имеет только
&drgeo;.
</para>
639 >Сценарии Python в
&kig; позволяют создать ваш собственный метод построения объектов (используя всё же базовые). Например, если у вас есть свой метод вычисления определённой точки на конусе, то вместо сложных конструкций и макротипов, вы сможете написать его реализацию на Python, а
&kig; отобразит её.
</para>
641 >Пример. Предположим, вам не нравится как строится серединная точка в
&kig;, вы хотите построить её между двумя данными точками. Нажмите на кнопку
<guibutton
642 >Сценарий Python
</guibutton
643 > на панели инструментов или через меню
<menuchoice
649 >Сценарий Python
</guimenuitem
651 >. Появится мастер, который поможет вам продолжить ваши действия.
</para>
654 >Мастер создания объекта из сценария
</screeninfo>
657 <imagedata fileref=
"script_wizard.png" format=
"PNG"/>
661 >Мастер создания объекта из сценария
</phrase>
666 >Первое, что вам нужно будет сделать,
— выбрать аргументы, требуемые для построения объекта. В нашем примере, это две точки. Выберите их в окне
&kig; и нажмите
<guibutton
670 >Отобразится текстовое окно для ввода кода. Там уже будет шаблон с комментариями. Важно убедиться, что введённый вами код соответствует синтаксису Python. Например, каждая строка функции должна начинаться с табуляции. Первая же строка без неё сообщает об окончании определения функции.
</para>
672 >Главная функция, которая должна быть определена, называется
<quote
674 >, в нашем случае она принимает два аргумента. Это объекты, которые вы выбрали в предыдущем окне мастера. Они называются
<parameter
678 >, но вы можете изменить их имена на более понятные для вас.
</para>
680 >В функциях вы можете выполнять все нужные вам типы расчётов, используя, при надобности, аргументы. Функция должна возвращать объект. В нашем случае
— это точка (типа
<classname
682 >, два наших аргумента также имеют этот тип). Мы можем использовать функцию
<function
683 >Point.coordinate()
</function
684 > для определения координат данных точек.
</para>
686 >В нашем примере расчёт очень прост. Нужно сложить две координаты и разделить сумму на два. Затем строится точка. Код на Python будет следующий:
</para>
690 m = ( a.coordinate() + b.coordinate() ) /
2;
696 >Ввод кода
</screeninfo>
699 <imagedata fileref=
"script_wizard_entering_code.png" format=
"PNG"/>
703 >Ввод кода для серединной точки в мастере создания объекта из сценария...
</phrase>
708 >После нажатия кнопки
<guibutton
710 >, новый объект появится в документе
&kig;. Если вы переместите одну из точек, вновь построенная серединная точка также переместится. Таким способом, можно построить объекты много сложнее, чем в примере. Попробуйте сделать это самостоятельно.
</para>
713 >Объект из сценария построен
</screeninfo>
716 <imagedata fileref=
"constructed_script_object.png" format=
"PNG"/>
720 >Объект из сценария построен
</phrase>
725 >В коде Python могут использоваться все объекты
&kig;. Точки принадлежат к классу
<classname
727 >, и можно использовать, например, метод
<function
728 >Point.coordinate()
</function
729 >. Полный список классов и их методов, доступных в Python, находится
<ulink url=
"http://edu.kde.org/kig/manual/scripting-api/index.html"
734 <chapter id=
"kig-features">
736 >Возможности
&kig;</title>
741 >&kig; — программа с открытым исходным кодом. Это означает, что вы можете бесплатно использовать и изменять её. Распространение
&kig; несёт свои ограничения, основное из них
— все должны иметь одинаковое право на использование
&kig; и его модификаций.
</para>
743 >Свободное программное обеспечение делается с открытой душой, и его разработчики открыты для обратной связи. Если у вас есть вопросы, предложения, отправляйте их автору на
<email
744 >devriese@kde.org
</email
745 > (на английском).
</para>
749 >&kig; — приложение KPart. Это означает, что она может быть легко встроена в любое приложение
&kde;. Например, если вы запустите файл
<literal role=
"extension"
751 > в
&konqueror;, он откроется в том же окне
&konqueror;.
</para>
755 >Работа с
&kig; должна быть простой, создание объектов лёгким и интерактивным, также вам должна помочь возможность отмены выполненного действия
</para>
759 >&kig; поддерживает запись макротипов. Они могут использоваться как обычные типы объектов, не сбрасываются при выходе. В разделе
<xref linkend=
"working-with-types"/> вы можете управлять ими
— изменять, удалять, экспортировать, импортировать.
</para>
763 >&kig; использует формат
&XML; для хранения данных.
</para>
767 >&kig; поддерживает ГМТ (геометрическое место точек).
</para>
771 >Построенные объекты можно экспортировать в изображение, в формат
<application
777 >. Это может быть полезно, так как не все программы поддерживают формат файлов
&kig;.
</para>
781 >В
&kig; имеется хорошая система преобразования.
</para>
785 >&kig; совместим со своими конкурентами. В частности, он поддерживает формат файлов
&kgeo;,
&kseg;, частично форматы
&drgeo; и
&cabri;, автор работает над поддержкой других.
</para>
793 >Вопросы и ответы
</title>
794 &reporting.bugs; &updating.documentation;
<para
798 <chapter id=
"credits">
800 >Лицензии и авторы
</title>
805 >&kig; (С)
2002-
2004 Dominique Devriese
<email
806 >devriese@kde.org
</email
810 >Документация (С)
2002-
2004 Dominique Devriese.
<email
811 >devriese@kde.org
</email
815 >Редакция - &Philip.Rodrigues; &Philip.Rodrigues.mail;.
</para>
817 >Перевод на русский язык: Н. Шафоростов
<email
818 >shafff@ukr.net
</email
820 > &underFDL; &underGPL; </chapter>
822 <appendix id=
"installation">
826 <sect1 id=
"getting-kig">
828 >Как получить
&kig;</title>
829 &install.intro.documentation;
</sect1>
831 <sect1 id=
"compilation">
833 >Сборка и установка
</title>
834 &install.compile.documentation;
</sect1>
838 <appendix id=
"contributing">
840 >Содействие в разработке
&kig;</title>
841 <section id=
"kig-is-free">
843 >Открытое программное обеспечение
</title>
845 >&kig; является
<ulink url=
"http://www.gnu.org/philosophy/philosophy.html#AboutFreeSoftware"
846 >программой с открытым исходным кодом
</ulink
847 >. Это означает, что исходный код программы доступен через Интернет, каждый может бесплатно использовать их, изменять и выпускать собственные дистрибутивы на их основе. Разработка программы
— хобби автора, которая позволяет совершенствоваться в программировании на C++ и
&kde;/
&Qt;.
</para>
849 <section id=
"contribute-to-kig">
851 >Содействие в разработке
&kig;</title>
853 >Цель этой главы
— рассказать пользователям о правах, предоставляемых лицензией
&kig;. Вы можете помочь в разработке программы устранением проблем, которые нашли, добавлением новых возможностей. Всё, что касается этого, вы можете прислать на
<email
854 >devriese@kde.org
</email
855 >, и он добавит ваш код в следующую версию программы.
</para>
857 >Лицензию вы можете найти в файле
<filename
859 > в CVS-репозитории
&kig; или в диалоге
<guilabel
860 >О программе
</guilabel
863 <section id=
"howto-contribute">
867 >Отправляйте автору новые пиктограммы, код, макротипы и пр. Всё это будет распространятся по лицензии
&GNU; GPL, которую можно найти в файле
<filename
869 > в CVS-репозитории
&kig; или в главе
<link linkend=
"credits"
870 >Лицензии и авторы
</link
875 &documentation.index;