В этой статье я хочу рассказать о том, как добавить в сервис RouteGadget дистанции с рассеиванием.
Описанный метод может быть применён для любых дистанций с рассеиванием. Обычно рассеивание применяется на эстафетах, поэтому в статье в качестве примера рассматривается дистанция эстафеты Чемпионата Санкт-Петербурга 2010 года.
Для того, чтобы рисовать и просматривать пути в сервисе RouteGadget необходимо загрузить в него карту, дистанции и сплиты. Сервис поддерживает множество форматов, однако не все из них подходят для дистанций с рассеиванием. Для обычных дистанций в заданном направлении на сайте спортивного ориентирования Санкт-Петербурга используется формат SplitsBrowser CSV. В программе SFR Event Centre, которая используется в подавляющем большинстве случаев при проведении стартов в Санкт-Петербурге, есть возможность экспортировать сплиты в этом формате. К сожалению данный формат не предполагает рассеивания. Конечно, всегда можно загрузить разные варианты одной дистанции как отдельные дистанции. Но тогда не получится сравнить пути двух спортсменов одной группы, у которых были разные варианты рассеивания. Кроме того, спортсменам будет неудобно добавлять свои пути, т.к. сначала придётся найти свой вариант. Да и список всех дистанций сильно разрастётся. Поэтому я старался найти решение при котором группа не дробится на подгруппы и на карте одновременно отображаются разные варианты одной дистанции.
В итоге я остановился на формате SpotrIdent SCV, т.к. для него в RouteGadget предусмотрен режим, когда вариант дистанции определяется порядком прохождения контрольных пунктов, указанным в файле сплитов.
1. Считаем, что у нас есть изображение карты в формате GIF. В нашем примере это файл карты. Получить такой файл из OCAD можно следующим образом File->Export...->GIF. Желательно разрешение не менее 150 dpi.
2. Предположим далее, что у нас есть дистанция с рассеиванием в OCAD. Например такая:

Нужно экспортировать дистанции в XML файл.
Course->Export->Courses (XML)...
В нашем примере получаем файл дистанций.
Если его открыть, то можно увидеть, что он содержит различные варианты дистанций:
Например для группы М21 есть вариант AAA

вариант ААВ и т.д.

3. И последнее, что придётся сделать - это файл сплитов в формате SportIdent CSV (Открывать лучше в текстовом редакторе, т.е. MS Excel по-умолчанию не понимает разделители запятые. Для удобства можно открыть версию для MS Excel 2007, но загрузить её в RouteGadget конечно же не получится).
Чуть подробнее о том, что у этого файла внутри:
Первой строкой идут названия полей. Далее идут строки с данными, по одной для каждого спортсмена.
Все поля разделены запятыми, в конце каждой строки также стоит запятая.
Теперь подробнее про каждое поле:
| Название поля | Описание | Пример значения |
| Stno | номер | 34 |
| Leg | этап | 1 |
| Database Id | номер в базе данных SI | |
| Surname | фамилия | КУПРИЕНКО |
| First name | имя |
ДЕНИС |
| YB | год рождения | |
| S | пол | |
| Club no. | номер клуба | |
| Club | название клуба |
БЕЛЫЕ НОЧИ |
| Cl. no. | номер группы |
0 |
| Short | название группы |
М21 |
| Course no. | номер дистанции |
0 |
| Course | название дистанции |
М21 |
| Combination | вариант дистанции |
|
| km | длина дистанции в километрах |
6.3 |
| m | набор высоты в метрах |
|
| Course controls | число контрольных пунктов |
15 |
| Start | время старта |
00:00:00 |
| Finish | время финиша |
00:39:38 |
| Time | результат |
00:39:38 |
| Classifier | ? |
0 |
| Pl | ? |
|
| Chip | номер чипа |
|
| Start punch | время отметки на старте |
00:00:00 |
| Finish punch | время отметки на финише | 00:39:38 |
| Control1 | номер КП1 |
33 |
| Punch1 | время отметки на КП1 |
03:25 |
| Control2 | номер КП2 |
34 |
| Punch2 | время отметки на КП2 | 05:19 |
| Control3 | номер КП3 | 37 |
| Punch3 | время отметки на КП3 | 11:00 |
| Control4 | номер КП4 | 38 |
| Punch4 | время отметки на КП4 | 15:18 |
| и т.д. |
Надеюсь, что в программе SFR Event Centre появится экспорт сплитов эстафет в данном формате.
Если у вас есть файлы карты, дистанций и и сплитов, то осталось лишь загрузить их в RouteGadget!
Прежде всего замечу, что речь идёт о версии RouteGadget "16.07.2009". Не знаю, будет ли работать этот вариант в более ранних версиях.
В основном меню выбираем "Add new event".
На следующей странице отмечаем "Load new map" (или "Select one of the old maps"), "SportIdent CSV" и "IOF-XML (Condes, OCAD 9) with forking" и нажимаем "OK".

Далее указываем файл карты, данные о соревнованиях, файл с дистанциями и файл со сплитами.
В разделе "Result/Split times" выбираем опции "Classify competitors by course" и "Create individual courses using SI csv control codes". И идём дальше.

Если всё хорошо, то RouteGadget покажет, что загрузил различные варианты дистанций и предложит привязать пункты к карте.

Пункты к карте привязываются следующим образом:
1. Выбираем "All controls" - появляются пункты. Но они не на нужных местах.
(совет: чтобы увидеть все пункты лучше сначала уменьшить карту, нажав на кнопку "-")
2. Собственно привязка пунктов
- Нажатия на кнопку "Подобрать"
- Клик мышкой по нужному пункту - клик в место где пункт должен быть
- Клик мышкой по второму нужному пункту - клик в место где второй пункт должен быть
после этого пункты перемешаются к нужным точкам.
Можно посмотреть, все ли оказались на своих местах. Надо проверить пункты в разных частях карты, т.к. в одном краю привязка может быть хорошей, в то время как в другом не очень. Если нужно, повторяем действия из п. 2.
Добиться абсолютной точности обычно не получается, но приемлемой точности можно достичь за 3-5 циклов. В процессе привязывания можно менять масштаб и двигать карту
3. Если точность устраивает, нажимаем кнопку "Сохранить" под кнопкой "Привязать".

После этого RouteGadget предложит проверить, что варианты дистанций распределены правильно.
А также выставить старт и финиш. Это последний шаг.

Надеюсь, что у вас всё получится! :)
