# Руководство &kig;

Dominique Devriese

    devriese@kde.org

Николай Шафоростов

    shafff@ukr.net

Перевод на русский язык
2002 2003 2004 Dominique Devriese
&FDLNotice;
2005-08-20
1.0 (&kde; 4.1.1)

&kig; — это программа интерактивной геометрии.

KDE KDE-Edu Kig интерактивная геометрия KGeo Cabri Dr.Geo KSeg

## Введение

&kig; — это программа интерактивной геометрии. Она создана для двух целей:

- Дать учащимся возможность исследовать математические концепции с помощью компьютера.

- Быть инструментом WYSIWYG (What You See Is What You Get — что видишь, то и получаешь) для построения математических функций и встраивания их в другие документы.

Сообщить об обнаруженных ошибках в &kig; можно с помощью стандартной утилиты (Справка Сообщить об ошибке...), или просто написать по адресу toscano.pino@tiscali.it (на английском или итальянском).

&kig; поддерживает макротипы и геометрическое место точек, позволяющие создавать более-менее сложные объекты. Если вы создали интересный (и сложный) макротип, который может быть полезен и другим, отправьте его автору по адресу toscano.pino@tiscali.it, и он будет добавлен в официальный выпуск программы (под лицензией GPL, что значит, что другие смогут изменять его и адаптировать).

## Основы

### Построение объектов

#### Построение точек

Вы можете сделать это несколькими способами:

- Через меню Объекты Точки Точка или через соответствующую кнопку на панели инструментов. После этого щёлкните на необходимой позиции в окне.

  Таким способом можно построить и другие объекты: выбрать необходимый инструмент можно через пункт меню или нажать кнопку на панели инструментов.

- Так как точки требуется строить чаще, есть также способ сделать это быстрей. Нажмите в области окна средней кнопкой мыши.

- Вы можете создавать точки при построении других объектов, Подробности указаны в разделе .

Точка построена
Точка построена

#### Построение других объектов

Вы можете построить определённый объект, выбрав его из меню Объекты или нажав на одну из кнопок панели инструментов.

Построение окружности
Построение окружности

Начнётся построение объекта выбранного типа. Все объекты требуют указания параметров. Например, если вы выбрали построение окружности по центру и точке, вы должны передать две точки — для центра и радиуса.

Эти параметры также являются объектами. Для их выбора щёлкните на них. Если этот объект может быть использован для построения, то при наведении на него указателя мыши появится изображение с видом объекта. Для объектов, которым требуются точки как аргументы, вы можете построить новую точку в текущей позиции курсора и выбрать её нажатием левой кнопки мыши.

Вы всегда можете отменить построение нового объекта нажатием клавиши &Esc; или нажатием кнопки Отменить построение объекта (красный круг с 'X' посередине) на панели инструментов.

Построение окружности.
Построение окружности

### Выбор объектов

Есть два способа выбора объекта:

- Вы можете просто щёлкнуть на объекте, при этом, чтобы предыдущее выделение не снималось, нажмите &Ctrl; при щелчке.

- Щёлкните по пустой области окна и, не отпуская кнопки мыши, переместите курсор, при этом появится "прямоугольник", а объекты, попадающие в него, будут выбраны. Клавиша &Ctrl; также предотвращает снятие предыдущего выделения.

Если под указателем мыши находится несколько объектов, вы легко сможете выбрать тот объект, который следует добавить к уже имеющемуся выделению. Щёлкните левой кнопкой мыши, удерживая нажатой клавишу &Shift; - появится окошко со списком всех объектов под указателем мыши. В этом списке вы сможете выбрать нужный вам объект. Как было указано выше, на процесс выбора влияет состояние клавиши &Ctrl;

Выбор объектов
Выбор объектов

### Перемещение объектов

Для перемещения объектов выберите их.

Затем щёлкните на одном из выделенных объектов и, нe отпуская левую кнопку мыши, перетащите их.

Перемещение некоторых объектов (особенно сложных геометрических мест точек), может быть медленным, т.к. при этом делаются необходимые расчёты.

Вы можете сделать это, щёлкнув правой кнопкой мыши на выбранном объекте, выбрать в контекстном меню Переместить. После этого любое перемещение мыши приведёт и к перемещению объекта. Чтобы прекратить перетаскивание, щёлкните левой кнопкой мыши.

### Удаление объектов

Выберите объекты и:

- нажмите клавишу Delete

- либо нажмите кнопку удаления объектов на панели инструментов.

- либо выберите Удалить в контекстном меню.

### Отображение и скрытие объектов

В &kig; объекты можно скрывать. При выборе объектов выберите пункт меню Скрыть в контекстном меню объекта.

Чтобы показать все скрытые объекты, выберите пункт меню Правка Показать все

#### Ночное видение

Ночное видение - это один из способов работы со скрытыми объектами. Если вам нужно передвинуть или изменить что-то в одном или нескольких скрытых объектах, но вы не хотите делать все объекты временно видимыми, режим ночного видения предоставит вам эту возможность.

Вообще говоря, этот режим предоставляет вам возможность видеть скрытые объекты так, будто они являются видимыми, так, что вы сможете выполнять с ними действия так же, как и с обычными объектами. В режиме ночного видения, невидимые объекты выделяются серым цветом.

Чтобы включить или выключить режим ночного видения, воспользуйтесь пунктом меню Настройка Инфракрасные очки.

### Отмена/Повтор

Вы можете отменить почти любое сделанное вами изменение. Используйте кнопки на панели инструментов, меню Правка или комбинации клавиш.

### Полноэкранный режим

В &kig; имеется полноэкранный режим. Нажмите соответствующую кнопку на панели инструментов  или выберите пункт меню Настройка Полный экран.

Для того чтобы выйти из полноэкранного режима, щёлкните правой кнопкой мыши на пустом месте документа и выберите в выпадающем контекстном меню Полноэкранный режим или нажмите &Ctrl;&Shift;F.

## Типы объектов &kig;

&kig; поддерживает много различных типов объектов. Вы можете опробовать их самостоятельно. Помните, что не все типы объектов есть на панели инструментов, отсутствующие можно найти в меню Объекты. Однако, как и любое приложение &kde;, &kig; поддерживает изменение набора кнопок на панелях инструментов. Это можно сделать через пункт меню Настройка Настроить панели инструментов....

## Дополнительные возможности

### Контекстные меню

В &kig; предусмотрены контекстные меню для объектов. Для их вызова щёлкните правой кнопкой мыши на объекте. Меню содержит команды построения, установки цветов, скрытия, перемещения и удаления объектов. Кроме того, некоторые объекты имеют дополнительные специфические пункты (например вы сможете изменять точки их построения).

### Контекстные меню документа

Нажатием правой кнопки в документе (не на объекте) вы откроете контекстное меню, которое вы можете использовать для построения новых объектов, изменения координатной системы, отображения скрытых объектов и изменения масштаба документа.

### Запись макротипов

С помощью макротипов вы можете ускорить процесс создания объектов, которые вы часто используете.

Например, вам нужно сделать макротип, который бы создавал окружность по трём точкам на ней. Вам нужно построить три точки, и используя перпендикуляры к серединам отрезков, найти центр окружности, а затем построить окружность по её центру и точке.

Работа с макротипом
Работа с макротипом

После этих действий вам нужно определить макротип. Выберите Запись макротипа из меню Сервис или нажмите на соответствующей кнопке на панели инструментов. В появившемся мастере вам будет предложено выбрать входные объекты. В нашем случае, это три точки. (для выбора щёлкните на них). Нажмите Далее и выберите выходной объект (окружность).

Мастер записи макротипа
Мастер записи макротипа

Нажмите Далее. Введите имя и описание вновь созданного типа, затем нажмите Готово.

Для использования макротипа, нажмите кнопку на панели инструментов, или выберите его из меню Объекты. Его значок будет выглядеть как выходной объект. Вы можете выполнять над макротипами такие же действия, как и с обычными объектами.

Использование макротипа
Использование макротипа

### Работа с макротипами

Макротипы, записанные однажды, сохраняются автоматически, и при следующем запуске программы вы также сможете их использовать. При выборе команды Управление типами из меню Сервис, появится диалог, где вы сможете изменить ваши макротипы: удалить, экспортировать и импортировать из файла.

Управление типами
Управление типами

### Надписи

Вы можете подписывать построения. В &kig; также есть возможность просматривать разную информацию об объектах (Свойства).

Для создания надписи нажмите соответствующую кнопку на панели инструментов, или в меню Объекты Другие Надпись .

Затем вам нужно выбрать расположение новой надписи. Для этого щёлкните на области экрана, где должна находится надпись или выберите в контекстном меню какого-либо объекта действие добавления к нему надписи.

Добавление надписи к окружности
Добавление надписи к окружности

Теперь мы перешли к диалогу надписи. Здесь введите текст, и нажмите "Готово". В документе появится новая надпись.

Диалог 'Создать надпись'
Диалог 'Создать надпись'

В надписях поддерживаются шаблоны. Например, вы можете ввести текст Сегмент имеет длину %1 см., где %1 будет динамически заменяться (в данном случае) на длину.

Введите текст с символами подстановки (%1, %2 и т.д.). Убедитесь, что они указаны в правильном порядке, и что вы не пропустили ни одного номера. Нажмите Далее.

Мастер отображает введённый вами текст с подстановками. Чтобы выбрать, что отображать, как определённый аргумент, щёлкните на аргументе, затем на объекте, информацию о котором вам нужно отобразить, и выберите пункт в контекстном меню. Например, чтобы выводить информацию о текущей длине отрезка, щёлкните на аргумент 1, затем на отрезке в главном окне &kig; и выберите свойство Длина. Для построения надписи нажмите Готово.

Выбор свойства для подстановки в шаблон
Выбор свойства для подстановки в шаблон

### Геометрическое место точек

&kig; поддерживает геометрическое место точек (ГМТ). Геометрическим местом точек называется фигура, которая состоит из всех точек плоскости, обладающих определённым свойством. Если для вас это звучит слишком сложно, возможно вы поймёте это на примере:

Рассмотрим следующее геометрическое построение: Мы строим окружность и точку на ней (которая может перемещаться по его поверхности) расположением курсора мыши на окружности и нажатием средней кнопки мыши. При этом, если вы попытаетесь переместить эту точку, вы не сможете убрать её с окружности. Затем мы создаём отрезок из той точки к центру окружности и его серединную точку.

Построение ГМТ
Построение ГМТ

Теперь, если вы будете перемещать точку, присоединённую к окружности, вторая точка будет перемещаться вместе с ней. Если вы переместите первую точку по окружности, будет нарисована новая окружность размером в два раза меньше существующей. Путь, по которому идёт вторая точка при перемещении первой по окружности, есть её ГМТ.

Построение ГМТ очень просто. Нажмите на соответствующей кнопке на панели инструментов или через меню — Объекты Другие ГМТ . Затем выберите бегущую точку (если вы поместите курсор мыши над ней, появится текст Бегущая точка), и зависимую. После этого появится ГМТ. Вот некоторые ссылки по этой теме: Основные сведения Геометрическое место точек на плоскости.

## Сценарии

Вы также можете создавать свои типы (макротипы, или просто макросы) на языке Python. Такую возможность, кроме &kig;, имеет только &drgeo;.

Сценарии Python в &kig; позволяют создать ваш собственный метод построения объектов (используя всё же базовые). Например, если у вас есть свой метод вычисления определённой точки на конусе, то вместо сложных конструкций и макротипов, вы сможете написать его реализацию на Python, а &kig; отобразит её.

Пример. Предположим, вам не нравится как строится серединная точка в &kig;, вы хотите построить её по-своему между двумя данными точками. Нажмите на кнопку Сценарий Python на панели инструментов или через меню Объекты Другие Сценарий Python . Появится ассистент, который поможет осуществить задуманное.

Ассистент создания объекта из сценария
Ассистент создания объекта из сценария

Первое, что вам нужно будет сделать, — выбрать аргументы, требуемые для построения объекта. В нашем примере, это две точки. Выберите их в окне &kig; и нажмите Далее.

Отобразится текстовое окно для ввода кода. Там уже будет шаблон с комментариями. Важно убедиться, что введённый вами код соответствует синтаксису Python. Например, каждая строка функции должна начинаться с табуляции. Первая же строка без неё сообщает об окончании определения функции.

Главная функция, которая должна быть определена, называется calc, в нашем случае она принимает два аргумента. Это объекты, которые вы выбрали в предыдущем окне мастера. Они называются arg1 и arg2, но вы можете изменить их имена на более понятные для вас.

В функциях вы можете выполнять все нужные вам типы расчётов, используя, при надобности, аргументы. Функция должна возвращать объект. В нашем случае — это точка (типа Point, два наших аргумента также имеют этот тип). Мы можем использовать функцию `Point.coordinate()` для определения координат данных точек.

В нашем примере расчёт очень прост. Нужно сложить две координаты и разделить сумму на два. Затем строится точка. Код на Python будет следующий:

    def calc( a, b ):
    m = ( a.coordinate() + b.coordinate() ) / 2;
    return Point( m )

Ввод кода
Ввод кода для серединной точки в мастере создания объекта из сценария...

После нажатия кнопки Готово, новый объект появится в документе &kig;. Если вы переместите одну из точек, вновь построенная серединная точка также переместится. Таким способом, можно построить объекты много сложнее, чем в примере. Попробуйте сделать это самостоятельно.

Объект из сценария построен
Объект из сценария построен

В коде Python могут использоваться все объекты &kig;. Точки принадлежат к классу Point, и можно использовать, например, метод `Point.coordinate()`. Полный список классов и их методов, доступных в Python, находится здесь.

## Возможности &kig;

- &kig; — программа с открытым исходным кодом. Это означает, что вы можете бесплатно использовать и изменять её. Распространение &kig; несёт свои ограничения, основное из них — все должны иметь одинаковое право на использование &kig; и его модификаций.

  Свободное программное обеспечение делается с открытой душой, и его разработчики открыты для обратной связи. Если у вас есть вопросы, предложения, отправляйте их автору на toscano.pino@tiscali.it (на английском), а если вы плохо знаете английский, возможно вам помогут на сайте kde.ru.

- Программа &kig; предоставляет компонент KPart. Это означает, что она может быть легко встроена в любое приложение &kde;. Например, если вы запустите просмотр файла `.kig` в &konqueror;, он откроется в том же окне &konqueror; без необходимости запускать внешнее приложение (с соответствующими накладными расходами).

- Работа с &kig; должна быть простой, создание объектов лёгким и интерактивным, также вам должна помочь возможность отмены выполненного действия

- &kig; поддерживает запись макротипов. Они могут использоваться как обычные типы объектов, не сбрасываются при выходе. В разделе вы можете управлять ими — изменять, удалять, экспортировать, импортировать.

- &kig; использует формат &XML; для хранения данных.

- &kig; поддерживает ГМТ (геометрическое место точек).

- Построенные объекты можно экспортировать в изображение, в формат XFig, LaTeX или SVG. Это может быть полезно, так как не все программы поддерживают формат файлов &kig;.

- В &kig; имеется хорошая система преобразования.

- &kig; совместим со своими конкурентами. В частности, он поддерживает формат файлов &kgeo;, &kseg;, частично форматы &drgeo; и &cabri;, автор работает над поддержкой других.

## Вопросы и ответы

&reporting.bugs; &updating.documentation;

## Лицензии и авторы

&kig;

&kig; (С) 2002-2004 Dominique Devriese devriese@kde.org

Документация © 2002-2004 Доминик Дэвриз (Dominique Devriese). devriese@kde.org

Документация © 2004-2005 Пино Тоскано (Pino Toscano) toscano.pino@tiscali.it.

Редактирование - Филип Родригес (&Philip.Rodrigues;) &Philip.Rodrigues.mail;.

Перевод на русский язык: Николай Шафоростов shafff@ukr.net

&underFDL; &underGPL;

## Установка

### Как получить &kig;

&install.intro.documentation;

### Сборка и установка

&install.compile.documentation;

## Содействие в разработке &kig;

### Открытое программное обеспечение

&kig; является программой с открытым исходным кодом. Это означает, что исходный код программы доступен через Интернет, каждый может бесплатно использовать их, изменять и выпускать собственные дистрибутивы на их основе. Разработка программы — хобби автора, которая позволяет совершенствоваться в программировании на C++ и &kde;/&Qt;.

### Содействие в разработке &kig;

Цель этой главы — рассказать пользователям о правах, предоставляемых лицензией, по которой распространяется &kig;. Вы можете помочь в разработке программы устранением найденных неполадок, добавлением новых возможностей. Всё, что касается этого, вы можете прислать на toscano.pino@tiscali.it, и разработчик добавит ваш код в следующую версию программы. Однако помните, что ни авторы, ни переводчики программы не получают никакой материальной выгоды от своей работы.

Лицензию вы можете найти в файле `COPYING` в SVN-репозитории &kig; или в диалоге О программе.

### Как помочь?

Отправляйте автору новые пиктограммы, код, макротипы и пр. Всё это будет распространятся по лицензии &GNU; GPL, которую можно найти в файле `COPYING` в CVS-репозитории &kig; или в главе Лицензии и авторы.

&documentation.index;