Copyright © 2002, 2003, 2004 Доминик Деврез (Dominique Devriese)
Разрешается копировать, распространять и/или изменять этот документ на условиях лицензии GNU для свободной документации, версии 1.1 или более поздней, опубликованной Фондом Free Software Foundation; без неизменямых разделов, без текста на первой странице, без текста на последней странице. Копия лицензии находится здесь the section entitled "GNU Free Documentation License".
Kig — это программа интерактивной геометрии.
Содержание
Kig — это программа интерактивной геометрии. Она создана для двух целей:
Дать учащимся возможность исследовать математические концепции с помощью компьютера.
Быть инструментом для рисования геометрических фигур и встраивания их в другие документы.
Вы можете сообщить об ошибках в Kig, используя стандартный диалог сообщения об ошибках (->), или связаться со автором по адресу электронной почты (toscano.pino AT tiscali.it)
.
Так как Kig поддерживает макросы и создание геометрических мест точек, он позволяет определять довольно сложные макросы. Если вы создали интересный макрос, который, как вы считаете, может быть полезен другим людям, пожалуйста, напишите письмо автору по адресу электронной почты (toscano.pino AT tiscali.it)
. Он постарается включить его в дистрибутив программы (если вы это сделаете, он будет иметь лицензию, совпадающую с лицензией программы — GPL, и другие люди смогут свободно его использовать).
Вы можете сделать это несколькими способами:
Через меню ->-> или через соответствующую кнопку на панели инструментов. После этого щёлкните на необходимой позиции в окне.
Таким способом можно построить и другие объекты: выбрать необходимый инструмент можно через пункт меню или нажать кнопку на панели инструментов.
Так как точки требуется строить чаще, есть также способ сделать это быстрей. Нажмите в области окна
кнопкой мыши.Вы можете создавать точки при построении других объектов, Подробности указаны в разделе ««Построение других объектов»».
Вы можете построить определённый объект, выбрав его из меню или нажав на одну из кнопок панели инструментов.
Начнётся построение объекта выбранного типа. Все объекты требуют указания параметров. Например, если вы выбрали построение окружности по центру и точке, вы должны передать две точки — для центра и радиуса.
Эти параметры — тоже объекты, которые тоже можно выделять, просто нажимая на них. Когда вы двигаете указатель мыши над аргументом, который хотите использовать для создания объекта, будет показано изображение объекта, чтобы можно было узнать, как он выглядит. Для объектов, требующих точки как аргументы, можно поместить новую точку в текущую позицию указателя и выбрать её нажатием левой кнопки мыши.
Вы всегда можете отменить построение нового объекта нажатием клавиши Esc или нажатием кнопки Отменить построение объекта (красный круг с 'X' посередине) на панели инструментов.
Есть два способа выбора объекта:
Вы можете просто щёлкнуть на объекте, при этом, чтобы предыдущее выделение не снималось, нажмите Ctrl при щелчке.
Щёлкните по пустой области окна и, не отпуская кнопки мыши, переместите курсор, при этом появится рамка, которая выбирает объекты, попадающие в него. Клавиша Ctrl также предотвращает снятие предыдущего выбора.
Когда под указателем мыши находятся более одного объекта, можно легко выбрать, какой из них выделить или добавить в выделение. Нажмите левую кнопку мыши, удерживая клавишу Shift, чтобы получить контекстное меню, содержащее все объекты под указателем мыши. Выделите нужный объект. Как говорилось выше, поведение клавиши Ctrl будет влиять на выделение.
Для перемещения объектов выберите их.
Затем щёлкните на одном из выделенных объектов и, не отпуская
кнопку мыши, перетащите их.Перемещение некоторых объектов (особенно сложных геометрических мест точек), может быть медленным, т.к. при этом делаются необходимые расчёты.
Вы также можете сделать это, щёлкнув . После этого любое перемещение мыши приведёт и к перемещению объекта. Чтобы прекратить перетаскивание, щёлкните кнопкой мыши.
кнопкой мыши на выбранном объекте, выбрать в контекстном менюВыберите объекты и:
нажмите клавишу Delete;
нажмите кнопку удаления на панели инструментов;
выберите в контекстном меню.
В Kig объекты можно скрывать. Выделите объект и выберите пункт меню в контекстном меню объекта.
Чтобы показать все скрытые объекты, выберите пункт меню ->.
Ночное видение — особый способ работы со скрытыми объектами. Когда вы должны переместить или изменить один или несколько объектов, не делая видимыми все скрытые объекты, тогда режим ночного видения — это то, что вам нужно.
В основном, он позволяет видеть скрытые, как будто они видимые, поэтому вы можете манипулировать ими обычным образом. В режиме ночного видения, скрытые объекты будут выглядеть серыми.
Переключиться в режим ночного видения можно командой меню ->.
Вы можете отменить почти любое сделанное вами изменение. Используйте кнопки отмены и повтора на панели инструментов или комбинации клавиш.
Kig содержит возможность полноэкранного режима. Чтобы воспользоваться ею, нажмите соответствующую кнопку на панели инструментов или выберите пункт меню ->.
Чтобы выйти из полноэкранного режима, нажмите или просто нажмите клавишу Esc.
кнопку мыши на пустом месте экрана и выберите в выпадающем контекстном менюKig поддерживает много различных типов объектов. Вы можете опробовать их самостоятельно. Помните, что не все типы объектов есть на панели инструментов, отсутствующие можно найти в меню . Однако, как и любое приложение KDE, Kig поддерживает изменение набора кнопок на панелях инструментов. Это можно сделать через пункт меню ->.
В Kig предусмотрены контекстные меню для объектов. Для их вызова щёлкните кнопкой мыши на объекте. Меню содержит команды построения, установки цвета, скрытия, перемещения и удаления объектов. Кроме того, некоторые объекты имеют дополнительные специфические пункты (например, вы сможете изменять точки их построения).
Нажатием
кнопки в документе (не на объекте) вы откроете контекстное меню, которое вы можете использовать для построения новых объектов, изменения координатной системы, отображения скрытых объектов и изменения масштаба документа.С помощью макротипов вы можете ускорить процесс создания объектов, которые вы часто используете.
Например, вам нужно сделать макротип, который бы создавал окружность по трём точкам на ней. Вам нужно построить три точки, и, используя перпендикуляры и середины отрезков, найти центр окружности, а затем построить окружность по её центру и точке. Теперь вы можете использовать уже готовую команду «Окружность по трём точкам». Должно получиться следующее построение:
После этих действий вам нужно определить макротип. Выберите из меню или нажмите на соответствующей кнопке на панели инструментов. В появившемся мастере вам будет предложено выбрать входные объекты. В нашем случае, это три точки. Для их выбора щёлкните на них. Нажмите и выберите выходной объект (окружность).
Нажмите . Введите имя и описание вновь созданного типа, затем нажмите .
Для использования макротипа, нажмите кнопку на панели инструментов, или выберите его из меню . Его значок будет выглядеть как выходной объект. Вы можете выполнять над макротипами такие же действия, как и с обычными объектами.
Макротипы, записанные однажды, сохраняются автоматически, и при следующем запуске программы вы также сможете их использовать. При выборе команды из меню , появится диалог, где вы сможете изменить ваши макротипы: удалить, экспортировать и импортировать из файла.
Вы можете подписывать построения. В Kig также есть возможность просматривать разную информацию об объектах («свойства»).
Для создания надписи нажмите соответствующую кнопку на панели инструментов, или вызовите меню ->->.
Затем вам нужно выбрать расположение новой надписи. Для этого щёлкните на области экрана, где должна находиться надпись или выберите в контекстном меню какого-либо объекта действие добавления к нему надписи.
Теперь мы перешли к диалогу надписи. Здесь введите текст, и нажмите «Готово». В документе появится новая надпись.
В надписях поддерживаются шаблоны. Например, вы можете ввести текст «Сегмент имеет длину %1 см.», где %1 будет динамически заменяться (в данном случае) на длину.
Введите текст с символами подстановки (%1, %2 и т.д.). Убедитесь, что они указаны в правильном порядке, и что вы не пропустили ни одного номера. Нажмите .
Мастер покажет введённый вами текст с подстановками. Чтобы выбрать, что выводить в качестве значения аргумента, щёлкните на аргументе, затем на объекте, информацию о котором вам нужно использовать и выберите пункт в контекстном меню. Например, чтобы выводить информацию о текущей длине отрезка, щёлкните на аргумент 1, затем на отрезке в главном окне Kig и выберите свойство Длина. Для вывода надписи нажмите .
Kig поддерживает геометрическое место точек (ГМТ). Геометрическим местом точек называется фигура, которая состоит из всех точек плоскости, обладающих определённым свойством. Если для вас это звучит слишком сложно, возможно вы поймёте это на примере:
Рассмотрим следующее геометрическое построение: построим окружность и точку на ней, которая может перемещаться по её поверхности (для этого поместите курсор мыши на окружность и нажмите
кнопку мыши). При этом, если вы попытаетесь переместить эту точку, вы не сможете убрать её с окружности. Затем мы создаём отрезок из той точки к центру окружности и его серединную точку.Теперь, если вы будете перемещать точку, присоединённую к окружности, вторая точка будет перемещаться вместе с ней. Если вы переместите первую точку по окружности, будет нарисована новая окружность размером в два раза меньше существующей. Путь, по которому идёт вторая точка при перемещении первой по окружности, есть её ГМТ.
Построение ГМТ очень просто. Нажмите на соответствующей кнопке на панели инструментов или вызовите меню ->->. Затем выберите бегущую точку (если вы поместите курсор мыши над ней, появится текст Бегущая точка) и зависимую. После этого появится ГМТ. Вот некоторые ссылки по этой теме: Основные сведения Геометрическое место точек на плоскости.
Вы также можете создавать свои типы (макротипы или просто макросы) на языке Python. Такую возможность, кроме Kig, имеет только Dr.Geo.
Сценарии Python в Kig позволяют создать ваш собственный метод построения объектов (используя всё же базовые). Например, если у вас есть свой метод вычисления определённой точки на коническом сечении, то вместо сложных конструкций и макротипов, вы сможете написать его реализацию на Python, а Kig покажет её.
Предположим, вам не нравится, как строится серединная точка в Kig, вы хотите построить её между двумя данными точками. Нажмите кнопку на панели инструментов или вызовите команду меню ->->. Появится мастер, который поможет вам продолжить ваши действия.
Первое, что вам нужно будет сделать, — выбрать аргументы, требуемые для построения объекта. В нашем примере, это две точки. Выберите их в окне 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 и его модификаций.
Свободное программное обеспечение делается с открытой душой, и его разработчики обычно открыты для обратной связи. Поэтому, если у вас есть вопросы, жалобы и т.п., отправляйте их автору по адресу электронной почты (toscano.pino AT tiscali.it)
.
Kig — приложение KPart. Это означает, что оно может быть легко встроено в любое приложение KDE. Например, если вы запустите файл .kig
в Konqueror, он откроется в том же окне Konqueror.
Работа с Kig проста и понятна, создание объектов лёгкое и интерактивное.
Kig поддерживает запись макротипов. Они могут использоваться как обычные типы объектов, не сбрасываются при выходе. В разделе «Работа с макротипами» описано как работать с макротипами. Вы можете управлять ими: изменять, удалять, экспортировать, импортировать.
Kig использует формат XML для хранения данных.
Kig поддерживает ГМТ (геометрическое место точек).
Построенные объекты можно экспортировать в изображение, в формат XFig, LaTeX или SVG. Это может быть полезно, так как не все программы поддерживают формат файлов Kig.
В Kig имеется хорошая система преобразования.
Kig совместим со своими конкурентами. В частности, он поддерживает формат файлов KGeo, KSeg, частично форматы Dr.Geo и Cabri, автор работает над поддержкой других.
Kig
Kig: © Доминик Деврез (Dominique Devriese) (devriese AT kde.org)
, 2002-2004
Документация: © Доминик Деврез (Dominique Devriese) (devriese AT kde.org)
, 2002-2004.
Документация: © Пино Тоскано (Pino Toscano) (toscano.pino AT tiscali.it)
, 2004-2005.
Редакция: Филип Родригес (Philip Rodrigues) (phil AT kde.org)
.
Перевод на русский язык: Николай Шафоростов (shafff AT ukr.net)
Этот документ распространяется на условиях GNU Free Documentation License.
Программа распространяется на условиях лицензии GNU General Public License.
Содержание
Kig - это часть проекта KDE http://www.kde.org/.
Kig входит в пакет kdeedu на ftp://ftp.kde.org/pub/kde/, основном FTP-сервере KDE.
Чтобы собрать и установить Kig, введите следующие команды в каталоге дистрибутива Kig:
%
./configure
%
make
%
make install
Поскольку Kig использует autoconf и automake, у вас не должно возникнуть никаких проблем. Если же у вас возникли ошибки, сообщите о них в списки рассылки KDE.
Kig является свободным программным обеспечением. Это означает, что исходный код программы доступен через Интернет, каждый может бесплатно использовать их, смотреть код, изменять его и распространять изменения. Разработка программы — увлечение автора, которое позволяет совершенствоваться в программировании на C++ и KDE/Qt™, математике, взаимодействию в проекте разработки программного обеспечения.
Цель этой главы — рассказать пользователям о правах, предоставляемых лицензией Kig. Вы можете (и это приветствуется) исправлять найденные во время использования ошибки в программе, добавлять новые возможности, которых вам не хватает, распространять программу с внесёнными вами изменениями, отправлять эти изменения автору по адресу электронной почты (toscano.pino AT tiscali.it)
. Автор включит их в следующую версию программы, и другие люди смогут ими воспользоваться. Имейте ввиду, у автора лично нет никакого меркантильного интереса к данному проекту.
Если вы сомневаетесь в предоставляемых правах использования этого программного обеспечения или правах других людей изменять код, прочтите лицензию. Вы можете найти её в файле COPYING
в исходном коде Kig или на вкладке «Лицензия» в диалоге О программе.
Приветствуется любая помощь. Отправляйте автору новые значки, изменения в код и документацию, макротипы и прочее. Всё это будет распространяться по лицензии GNU GPL, которую можно найти в файле COPYING
в исходном коде Kig или в главе Авторы и лицензирование.
Would you like to make a comment or contribute an update to this page?
Send feedback to the KDE Docs Team