Difference between revisions of "Создание пазла"

From GCompris
Jump to: navigation, search
m
Line 1: Line 1:
[[Image:Geography.jpg|thumb|200 px|L'activité de géography.]]
+
[[Image:Geography.jpg|thumb|200 px|L'activité de géography.]]
= Как использовать скрипт shapegame.py для создания паззлов=
+
= Как использовать скрипт shapegame.py для создания паззлов=
  
== Введение ==
+
== Введение ==
  
Многие упражнения GCompris работают по схожему принципу: они представляют собой паззл из частей, иконки которых можно выбирать слева на экране и перетаскивать на основное поле игры. Это может быть как обычный паззл, так и игра по заполнению карты изображениями стран, например. Такие упражнения называются ''shapegame'' в терминологии GCompris и используют встроенный движок упражнений.  
+
Многие упражнения GCompris работают по схожему принципу: они представляют собой паззл из частей, иконки которых можно выбирать слева на экране и перетаскивать на основное поле игры. Это может быть как обычный паззл, так и игра по заполнению карты изображениями стран, например. Такие упражнения называются ''shapegame'' в терминологии GCompris и используют встроенный движок упражнений.  
  
Чтобы самостоятельно создать такое упражнение, можно воспользоваться скриптом на языке Питон, созданным для графического редактора [http://www.gimp-fr.org GIMP] Мигелем де Изаррой (Miguel De Izarra). Собственно, требуется всего лишь наложить изображения на фон.
+
Чтобы самостоятельно создать такое упражнение, можно воспользоваться скриптом на языке Питон, созданным для графического редактора [http://www.gimp-fr.org GIMP] Мигелем де Изаррой (Miguel De Izarra). Собственно, требуется всего лишь наложить изображения на фон.
  
== Необходимые инструменты ==
+
== Необходимые инструменты ==
* скрипт на Питоне
+
* скрипт на Питоне
* Графический редактор Gimp
+
* Графический редактор Gimp
* Картинка географической карты размером 800х520 пикселей, с хорошо видными границами государств.
+
* Картинка географической карты размером 800х520 пикселей, с хорошо видными границами государств.
  
== Установка скрипта ==
+
== Установка скрипта ==
  
Актуальная версия исходного кода скрипта находится [http://svn.gnome.org/viewcvs/gcompris/trunk/tools/gcompris_shapegame.py?view=markup на этой странице] репозитория GCompris. Обратите внимание: скрипт не распространяется вместе с исходным кодом GCompris. Можно загрузить сам скрипт [http://gcompris.net/docs/download/gcompris_shapegame.py отсюда].
+
Актуальная версия исходного кода скрипта находится [http://svn.gnome.org/viewcvs/gcompris/trunk/tools/gcompris_shapegame.py?view=markup на этой странице] репозитория GCompris. Обратите внимание: скрипт не распространяется вместе с исходным кодом GCompris. Можно загрузить сам скрипт [http://gcompris.net/docs/download/gcompris_shapegame.py отсюда].
  
Чтобы его установить, скопируйте его в папку скриптов графического редактора GIMP. В Линуксе эта папка находится в вашем домашнем каталоге, в ''~/.gimp-2.2/plug-ins/'' ('~' представляет собой путь к домашнему каталогу, как /home/bruno). Затем добавьте права на исполнение этому скрипту :
+
Чтобы его установить, скопируйте его в папку скриптов графического редактора GIMP. В Линуксе эта папка находится в вашем домашнем каталоге, в ''~/.gimp-2.2/plug-ins/'' ('~' представляет собой путь к домашнему каталогу, как /home/bruno). Затем добавьте права на исполнение этому скрипту :
  
 
<code><pre>
 
<code><pre>
Line 24: Line 24:
 
</pre></code>
 
</pre></code>
  
Отныне, если вы запустите GIMP, в нём будет новый пункт меню в меню Image: (Python-fu -> GCompris).
+
Отныне, если вы запустите GIMP, в нём будет новый пункт меню в меню Image: (Python-fu -> GCompris).
  
== Подготовка ==
+
== Подготовка ==
  
Создать собственную карту для GCompris легко. Мы покажем на примере, как создать карту Бразилии и разместить на ней областные регионы.  
+
Создать собственную карту для GCompris легко. Мы покажем на примере, как создать карту Бразилии и разместить на ней областные регионы.  
  
Скрипт работает только с файлами формата .xcf -- стандартного формата файлов GIMP. Нам было лениво вручную рисовать карту Бразилии, так что мы скачали её с Википедии в формате SVG (векторный графический формат, леко масштабируется без потери качества). Карты на Википедии распространяются по лицензии GPL и являются общественным достоянием.  
+
Скрипт работает только с файлами формата .xcf -- стандартного формата файлов GIMP. Нам было лениво вручную рисовать карту Бразилии, так что мы скачали её с Википедии в формате SVG (векторный графический формат, леко масштабируется без потери качества). Карты на Википедии распространяются по лицензии GPL и являются общественным достоянием.  
  
Поскольку карта должна быть размером 800x520 пикселей, мы конвертируем векторый SVG-файл в растровый формат соответствующего размера. Сконвертированный файл уже можно открыть GIMPом.
+
Поскольку карта должна быть размером 800x520 пикселей, мы конвертируем векторый SVG-файл в растровый формат соответствующего размера. Сконвертированный файл уже можно открыть GIMPом.
  
== Задание областей ==
+
== Задание областей ==
  
На найденной нами карте Бразилия изображена светло-серым, а её внешние границы и границы между областями - темно-серым цветом. Каждая область хорошо видна. При помощи инструмента GIMP "волшебная палочка" мы выделим желаемую область ("волшебная палочка" выделяет последовательные регионы одного цвета). Когда область выделилась, она обрисовывается по контуру бегающими точками. Щелчком правой кнопки вызовем контекстное меню и выберем Выделить > Сохранить в Отдельный Канал [Select > Save to Channel]. Изменим имя канала (по умолчанию это "Копия маски выделения") и назовём его именем области, например Rio Grande do Norte.  
+
На найденной нами карте Бразилия изображена светло-серым, а её внешние границы и границы между областями - темно-серым цветом. Каждая область хорошо видна. При помощи инструмента GIMP "волшебная палочка" мы выделим желаемую область ("волшебная палочка" выделяет последовательные регионы одного цвета). Когда область выделилась, она обрисовывается по контуру бегающими точками. Щелчком правой кнопки вызовем контекстное меню и выберем Выделить > Сохранить в Отдельный Канал [Select > Save to Channel]. Изменим имя канала (по умолчанию это "Копия маски выделения") и назовём его именем области, например Rio Grande do Norte.  
  
Повторим операцию для каждого штата. Чтобы представить себе, о чем идёт речь, скачайте [http://gcompris.net/docs/download/shapegame_brazil_map.xcf файл] и посмотрите на результат. Откройте меню Диалоги > Каналы [Dialogs > Channels], чтоб увидеть созданные нами каналы.
+
Повторим операцию для каждого штата. Чтобы представить себе, о чем идёт речь, скачайте [http://gcompris.net/docs/download/shapegame_brazil_map.xcf файл] и посмотрите на результат. Откройте меню Диалоги > Каналы [Dialogs > Channels], чтоб увидеть созданные нами каналы.
  
== Запуск скрита ==
+
== Запуск скрита ==
  
Когда вы запустите скрипт, вы должны задать ему следующие параметры:  
+
Когда вы запустите скрипт, вы должны задать ему следующие параметры:  
  
* activity_name: имя упражнения (по умолчанию = geography)
+
* activity_name: имя упражнения (по умолчанию = geography)
* dossier: папка для упражнения (например, Brazil)
+
* dossier: папка для упражнения (например, Brazil)
* title: название, которое будет GCompris для этого упражнения
+
* title: название, которое будет GCompris для этого упражнения
* bordersize: толщина границы между странами (хорошо подходит 3)
+
* bordersize: толщина границы между странами (хорошо подходит 3)
* keepLimit: сохранять ли границы между странами (желательно для сложных карт)
+
* keepLimit: сохранять ли границы между странами (желательно для сложных карт)
* level: Уровень сложности упражнения
+
* level: Уровень сложности упражнения
* sublevel: Подуровень сложности
+
* sublevel: Подуровень сложности
  
Скрипт раскрасит каждую область, создаст границы между ними, а также свяжет каждый канал с его местом на карте для будущего упражнения.  
+
Скрипт раскрасит каждую область, создаст границы между ними, а также свяжет каждый канал с его местом на карте для будущего упражнения.  
  
Результат будет сохранен в ту же папку, откуда взята исходная картинка. Переместите файо упражнения в папку упражнений GCompris. В нашем примере мы поместили упражнение в папку /usr/share/gcompris/boards/geography_country
+
Результат будет сохранен в ту же папку, откуда взята исходная картинка. Переместите файо упражнения в папку упражнений GCompris. В нашем примере мы поместили упражнение в папку /usr/share/gcompris/boards/geography_country
  
== Создание паззла ==
+
== Создание паззла ==
  
Создать паззл ещё проще: возьмите любую картинку 800x520, откройте и сохраните её в GIMP, и запустите скрипт ''Python-Fu->GCompris->Puzzle''. Скрипт уточнит, сколько кусочков паззла вы хотите, и сделает новое упражнение-паззл из предоставленной картинки.
+
Создать паззл ещё проще: возьмите любую картинку 800x520, откройте и сохраните её в GIMP, и запустите скрипт ''Python-Fu->GCompris->Puzzle''. Скрипт уточнит, сколько кусочков паззла вы хотите, и сделает новое упражнение-паззл из предоставленной картинки.
  
<!-- перевод Alex Korobkin, 2010 -->
+
<!-- перевод Alex Korobkin, 2010 -->

Revision as of 03:14, 10 March 2012

L'activité de géography.

Как использовать скрипт shapegame.py для создания паззлов

Введение

Многие упражнения GCompris работают по схожему принципу: они представляют собой паззл из частей, иконки которых можно выбирать слева на экране и перетаскивать на основное поле игры. Это может быть как обычный паззл, так и игра по заполнению карты изображениями стран, например. Такие упражнения называются shapegame в терминологии GCompris и используют встроенный движок упражнений.

Чтобы самостоятельно создать такое упражнение, можно воспользоваться скриптом на языке Питон, созданным для графического редактора GIMP Мигелем де Изаррой (Miguel De Izarra). Собственно, требуется всего лишь наложить изображения на фон.

Необходимые инструменты

  • скрипт на Питоне
  • Графический редактор Gimp
  • Картинка географической карты размером 800х520 пикселей, с хорошо видными границами государств.

Установка скрипта

Актуальная версия исходного кода скрипта находится на этой странице репозитория GCompris. Обратите внимание: скрипт не распространяется вместе с исходным кодом GCompris. Можно загрузить сам скрипт отсюда.

Чтобы его установить, скопируйте его в папку скриптов графического редактора GIMP. В Линуксе эта папка находится в вашем домашнем каталоге, в ~/.gimp-2.2/plug-ins/ ('~' представляет собой путь к домашнему каталогу, как /home/bruno). Затем добавьте права на исполнение этому скрипту :

cp gcompris_shapegame.py ~/.gimp-2.2/plug-ins/
chmod +x ~/.gimp-2.2/plug-ins/gcompris_shapegame.py

Отныне, если вы запустите GIMP, в нём будет новый пункт меню в меню Image: (Python-fu -> GCompris).

Подготовка

Создать собственную карту для GCompris легко. Мы покажем на примере, как создать карту Бразилии и разместить на ней областные регионы.

Скрипт работает только с файлами формата .xcf -- стандартного формата файлов GIMP. Нам было лениво вручную рисовать карту Бразилии, так что мы скачали её с Википедии в формате SVG (векторный графический формат, леко масштабируется без потери качества). Карты на Википедии распространяются по лицензии GPL и являются общественным достоянием.

Поскольку карта должна быть размером 800x520 пикселей, мы конвертируем векторый SVG-файл в растровый формат соответствующего размера. Сконвертированный файл уже можно открыть GIMPом.

Задание областей

На найденной нами карте Бразилия изображена светло-серым, а её внешние границы и границы между областями - темно-серым цветом. Каждая область хорошо видна. При помощи инструмента GIMP "волшебная палочка" мы выделим желаемую область ("волшебная палочка" выделяет последовательные регионы одного цвета). Когда область выделилась, она обрисовывается по контуру бегающими точками. Щелчком правой кнопки вызовем контекстное меню и выберем Выделить > Сохранить в Отдельный Канал [Select > Save to Channel]. Изменим имя канала (по умолчанию это "Копия маски выделения") и назовём его именем области, например Rio Grande do Norte.

Повторим операцию для каждого штата. Чтобы представить себе, о чем идёт речь, скачайте файл и посмотрите на результат. Откройте меню Диалоги > Каналы [Dialogs > Channels], чтоб увидеть созданные нами каналы.

Запуск скрита

Когда вы запустите скрипт, вы должны задать ему следующие параметры:

  • activity_name: имя упражнения (по умолчанию = geography)
  • dossier: папка для упражнения (например, Brazil)
  • title: название, которое будет GCompris для этого упражнения
  • bordersize: толщина границы между странами (хорошо подходит 3)
  • keepLimit: сохранять ли границы между странами (желательно для сложных карт)
  • level: Уровень сложности упражнения
  • sublevel: Подуровень сложности

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

Результат будет сохранен в ту же папку, откуда взята исходная картинка. Переместите файо упражнения в папку упражнений GCompris. В нашем примере мы поместили упражнение в папку /usr/share/gcompris/boards/geography_country

Создание паззла

Создать паззл ещё проще: возьмите любую картинку 800x520, откройте и сохраните её в GIMP, и запустите скрипт Python-Fu->GCompris->Puzzle. Скрипт уточнит, сколько кусочков паззла вы хотите, и сделает новое упражнение-паззл из предоставленной картинки.