Въпроси от тип "Влачене и Пускане" на картинка

Въпроси от тип "Влачене и Пускане" на картинка

от Daniel Denev -
Number of replies: 1


Въпроси от тип "Влачене и Пускане" на картинка
(препоръчителни тестове за малки деца и студенти с увреждания)

с примери

gustav_w_delius.jpgGustav Delius e преподавател по математика в University of York, Англия където внедрява Moodle като виртуална среда за електронно обучение VLE във факултета по математика.
gustav.delius@gmail.com
http://maths.york.ac.uk/serving_maths/

daniel.jpgzname.png



Daniel Denev - просто още един фен на Moodle намигване

daniel_i_denev@abv.bg
http://www.intelektibg.com/cec/euniversity_data/mysite
cell: 0889369651

Инсталиране

Извършва се в няколко прости съпки:

За да интегрирате модула за въпроси от тип "Влачене и пускане на картинка"
в Moodle 1.7dev:

**************
* СТЪПКА 1
**************
Създайте таблиците в базата данни. В случая е mysql наличен скрипт. Ако използвате postgreSQL или
друг типбаза данни, ще е необходимо да си адаптирате скрипта преди да го стартирате.

- Влезте в Moodle 1.7dev като администратор
- В адресната лента ще се появи адреес, без знач. какъв, но вие тряббвада изкопирате следното:
/mod/quiz/questiontypes/dragdrop/db_mysql.php

и да го поставите долепено към адреса появил се в адресната лента на браузъра ви.
Натиснете ЕНТЕР.
(пълния адрес след долепването би следвало да е нещо от типа
http://www.mysite.com/moodle/mod/quiz/questiontypes/dragdrop/db_mysql.php)


**************
* СТЪПКА 2
**************
Редактирайте файла намиращ се в директорията с модулите mod/quiz/locallib.php

- Добавете следните редове някъде в началото на файла, просто над реда

"/// Question type class //////////////////////////////////////////////":

// BEGIN DRAGDROP CODE
define("DRAGDROP", "91");

function put_dragdrop_javascript() {
global $CFG, $SESSION;
if (isset($SESSION->dragdropjs)) {
echo session_drag_drop_js();
unset($SESSION->dragdropjs);
}
}

// pieces together the javascript stored in the session variable 'dragdropjs' and returns it as a string
function session_drag_drop_js()
{
global $SESSION;

if (empty($SESSION->dragdropjs)) {
return '';
}

$js = $SESSION->dragdropjs;
$text = $js->includescript . "\n";
$text .= '<script language="JavaScript">' . "\n";
$text .= $js->dhtmlstart;

foreach ($js->dhtmlelements as $element) {
$text .= ", $element";
}
$text .= $js->dhtmlend . "\n";

foreach ($js->statements as $statement) {
$text .= "$statement\n";
}
$text .= $js->common . "\n";
$text .= '</script>';
return $text;
}
// END DRAGDROP CODE


**************
* СТЪПКА 3
**************
Редактирайте mod/quiz/editlib.php

- добавете записа към $QUIZ_QUESTION_TYPE масива в дясно, някъде в началото на файла.
Добавете следния ред на реда преди записа MULTIANSWER:

DRAGDROP => get_string("dragdrop", "quiz"),

**************
* СТЪПКА 4
**************
Добавете обръщенията към функцията за визуализация dragdrop javascript в подходящото време.

- Във всеки от файловете mod/quiz/attempt.php, mod/quiz/review.php, mod/quiz/preview.php:
- търсете за текста "print_footer". Добавете следния ред над всяко обръще към print_footer:

put_dragdrop_javascript();


**************
* СТЪПКА 5
**************
Добавете файла за езикова поддръжка съдържащ стринговете на бутоните в директорията
lang/en/quiz.php

- Добавете следните редове за стринговете в края на файла (но преди директивата "?>"):

// begin drag'n'drop strings
// gustav_delius, d_denev
$string['althotspots'] = 'Алтернативни горещи точки';
$string['bkgdimage'] = 'Картинка фон';
$string['dragdrop'] = 'Влачене и пускане';
$string['dragdropanswer'] = 'Отговор с влачене и пускане';
$string['dragdroparrange'] = 'Влачене и пускане: Подреди картинките в желания ред';
$string['dragdropimage'] = 'Влачене и пускане на картинка';
$string['editingdragdrop'] = 'Редактиране на въпрос с Влачене и Пускане на картинка';
$string['finished'] = 'Завършен. Продължение';
$string['hidehotspots'] = 'Скриване на горещите точки';
$string['hideimages'] = 'Скриване на картинките';
$string['hotspot'] = 'Гореща точка: X, Y, Широчина, Височина';
$string['hotspotspecify'] = 'Position the hotspots';
$string['imageposition'] = 'Картинка: X, Y, Широчина, Височина';
$string['savecontinue'] = 'Съхрани и продължи';
$string['savereturn'] = 'Съхрани и се върни към въпроса';
$string['showhotspots'] = 'Покажи горещите точки';
$string['showimages'] = 'Покажи картинките';
$string['snaphotspots'] = 'Залепи горещите точки за всички картинки';
$string['snapimages'] = 'Залепи картинките за всички горещи точки';
$string['feedbackmin'] = 'Покажи положителната рецензия с резултата';
$string['feedbackok'] = 'Цялостна пълна рецензия (ДА)';
$string['feedbackmissed'] = 'Цялостна пълна рецензия (Пропусната)';
$string['feedbackoverall'] = 'Коментар';
$string['text'] = 'Текст';
$string['image'] = 'Картинка';
// end drag'n'drop strings:


**************
* СТЪПКА 6
**************
Влезте във вашия курс който сте си създали в Moodle 1.7 разр.
- Ако все още не сте го направили намигване , добавете файлове картинки към вашия курс които бихте
желали да използвате в типа въпроси "Влачене и пускане на картинка" в тестовете.
- Създайте един нов тест и експериментирайте с него.
- Добавете въпрос от типа "Влачене и пускане на картинка" към новия тест.

********************
* СТЪПКА 7 (но не е задължителна)
********************
В браузъра си (Internet explorer), още по подразбиране, поставянето курсура на мишката върху
картинки с размери по-големи от 200x200 пиксела се появява мъничка лентичка с няколко
инструменнта в горния ляв ъгъл на картинката (лупичка, дискетка). Това не е добре от гледна точка на
този тип въпроси. На теория добавянето на атрибута gallerimg="no" към таг с картинка ще ни "спаси"
от този мъничък туулбар. този атрибут присъства и в моя браузър Windows XP и Internet Explorer 6.
Това което наистина работи е използването на мета-тагове в хедърите. Ето как да деактивирате
показването на този мъничък тоолбар при посочването на картинките:

- В директорията mod/quiz/attempt.php, в началото на файла, добавете следните редове:
//bk: мета-таг за деактивиране на IE image toolbar (за този тип въпроси НЕ трябва да е активен)
$noimagetoolbar = '<meta http-equiv="imagetoolbar" content="false">';

- след това претърсете за обръщенията към функциите print_header и print_header_simple.
ЗАМЕНЕТЕ 5тия аргумент, currently '' or "",
с променливата $noimagetoolbar

- ако е необходимо извършете посочените по-горе стъпки за всички файлове от директорията mod/quiz/review.php and mod/quiz/preview.php

Работа при създаване на тестове и редактиране на въпроси

1. Създаването на модула "Влачене и Пускане" на картинки е провокирано от необходимостта от стартирането на курс по френски език - с цел определяне нивото на познание на езика и броя научени думи pomme(apple), orange, and grenouille(frog). Като начало при работата се създава картинка фон с показаните по-долу думи, както и картинки на ябълка, портокал и жабка. Тук съм качил и самите картинки.

Words.jpg

Frog.gifOrange_transparent.gifApple_transparent.gif

2. Следващата стъпка е редактирането на нов въпрос от тип "Влачене и Пускане" на картинка. В даденият тук пример, полето за текст е оставено празно. При попълване на текст в това поле, този текст ще се покаже под първоначалната позиция на картинката, в процеса на държане на теста.

300px-Editing_screen1.jpg

(Помнете, че полетата "Картинка: X, Y, Широчина, Височина:", " Гореща точка: X, Y, Широчина, Височина :", и " Алтернативни гореща точки:" могат да се игнорират. Те са за потребители с по голям опит - използват се например когато е необходимо да си подравните по-прецизно картинките (с точност до пиксел)или когато е необходимо наличието на повече от една "вярна гореща точща", като алтернатива в рамките на една картинка. Стойностите на височина по коорд. оси x,y, ще се попълнят автоматично в процеса на позициониране от вас на картинките/горещите точки.

3. Следващата стъпка в работата е щракването на "Позициониране на гореща точка". Първоначално картинките са под фоновата картинка:

300px-Editing_screen2-1.jpg

Влачим и пускаме картинките там където следва да бъдат:

300px-Editing_screen2-2.jpg

4. Следва позиционирането на "горещите точки". Когато един студент отговаря на въпроса, ако част от влачената картинка покрива съответстващата и гореща точка, това се възприема от софтуера като правилно позициониране. Следващата стъпка която е необходимо да предприемете е да натиснете бутона "Залепване на горещи точки за всички картинки". Горещите точки изглеждат като червени кутийки които се появяват върху картинката:

300px-Editing_screen2-3.jpg

Горещите точки покриват всяка дума, но никога не покриват празно пространство около думата. Ако се виждаха едновременно и картинките и горещите точки щеше да е трудно да видим това което е необходимо (например думата на фоновата картинка). Пре-позиционирането и преоразмеряването на горещите точки е трудно, затова е по-лесно да щракнете на картинката за влачене и пускане вместо на горещата точка. За да си улесним още повече работата е целесъобразно да натиснем бутона "скриване на картинките".

300px-Editing_screen2-4.jpg

5. Следващото което ще видим е фоновата картинка без картинките за влачене и пускане (затрудняващи работата ни до момента). Посредством задържане на клавишът "Shift" ,щракваме и влачим долните десни ъгли на горещитеточки, като по този начин ги преоразмеряваме. Без натискане на клавишът "Shift" позиционираме горещите точки посредством влачене с мишката. След като извършите тези действия, екрана би имал следния вид:

300px-Editing_screen2-5.jpg

6. Едно от последните действия които е необходимо да бъдат извършени е, да натиснете бутона "Съхрани и продължи". С това редактирането на въпррос от типа "Влачене и пускане на картинка" е завършено.

Добавения след тези действия към теста въпрос от типа "Отговори с Влачене и пускане на картинка" изглежда по следния начин:

300px-Quiz_view.jpg
300px-Quiz_view-2.jpg