Pano2VR - Создание шаблона оформления (панель управления, индикатор загрузки)

 Работа в Pano2VR | Редактор оформления (Skin editor)
 18.11.2016 |  17:05 |  11.1k |  4.7/67 |  24.11.2023
 Время на чтение: ... |  Комментировать |  Напечатать
Содержание статьи
 Пользователи Pano2VR
В своем сообществе ВКонтакте работает чат, созданный специально для пользователей конвертера панорамных изображений Pano2VR. В нем мы решаем проблемы, возникающие в работе с Pano2VR, обмениваемся опытом и просто общаемся.
 Нас уже ...
Возможно, Вас заинтересуют эти материалы
Самое читаемое
Как в Pano2VR создать оформление (скин) с панелью кнопок управления и индикатором загрузки панорамы.

Pano2VR - Создание шаблона оформления (панель управления, индикатор загрузки)

Изображение

Шаблон оформления представляет собой интерактивную оболочку, накладываемую поверх панорамы, содержащую кнопки управления, различные диалоговые или информационные окна, фото, аудио и видео материалы. Дизайн оболочки ограничивается креативностью разработчика, а функционал – возможностями программы. Более продвинутые специалисты, работающие с Pano2VR, могут вносить изменения в шаблон после экспорта.

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

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

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

Рисунок 1.

Создаем панель навигации

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

Координата X свойства Position вычислена по формуле X = (Wо – Wп) / 2, где Wо – ширина окна оформления, Wп – ширина панели. Получается X = (640 – 347) / 2 = 146.5. Поскольку ширина является целым числом, в качестве значения принято 146.

Рисунок 2.

Кнопки управления полноэкранным режимом и звуком парные. В каждой паре кнопки располагаются одна под другой. Причем видимость (Свойство Visible) второй кнопки отключена. Видимая кнопка будет вызывать определенное действие, отображать вторую кнопку и скрывать себя.

Рисунок 3.

Для всех кнопок установлен курсор в виде руки с вытянутым указательным пальцем. Это характерно для кнопок на интернет-сайтах. Для его установки нужно выделить все кнопки, а затем в редакторе свойств элементов выбрать свойство Hand Cursor (Рис. 3).

С расположением кнопок и панели разобрались. Только это еще не всё. Сами по себе кнопки ничего делать не умеют. Поэтому нужно их "научить" определенным действиям. Это делается с помощью сценариев.

Например, создадим сценарий для кнопки "Поворот влево". Для этого в группе Actions двойным нажатием на пустой строке вызовем диалоговое окно, в котором выберем обрабатываемое событие (Source) Pressed (постоянное нажатие на кнопку) и действие (Action) Pan Left. Значение параметра Speed установлено в 3. Это не является обязательным и используется для установки желаемой скорости поворота, отличающейся от скорости по-умолчанию.

Рисунок 4.

Операции для остальных кнопок сведены в таблицу.

Обрабатываемое событие – Pressed.

ID элемента

Действие (Action)

Пояснение

pan_left

Pan Left

Поворот влево

pan_right

Pan Right

Поворот вправо

tilt_down

Tilt Down

Наклонить вниз

tilt_up

Tilt Up

Наклонить вверх

zoom_in

Zoom In

Приблизить

zoom_out

Zoom Out

Отдалить

Обрабатываемое событие – Mouse Click.

ID элемента

Действие (Action)

Пояснение

rotate

Toggle Auto Rotation

Включить / отключить автовращение

fullscreen_enter

Enter Full Screen

Перейти в полноэкранный режим (ПЭР)

Show Element [fullscreen_exit]

Отобразить кнопку выхода из ПЭР

Hide Element [$self]

Скрыть себя

fullscreen_exit

Exit Full Screen

Приблизить

Show Element [fullscreen_enter]

Отобразить кнопку входа в ПЭР

Hide Element [$self]

Скрыть себя

sound_on

Stop Media [_main]

Выключить звук

Show Element [sound_off]

Отобразить кнопку включения звука

Hide Element [$self]

Скрыть себя

sound_off

Play Media [Loop = 1]

Включить звук

Show Element [sound_on]

Отобразить кнопку выключения звука

Hide Element [$self]

Скрыть себя

home

Move To Default View

Перейти в стандартный вид

Выход из полноэкранного режима может осуществляться путем двойного нажатия в области просмотра, клавишей Esc или соответствующего пункта контекстного меню. Поэтому для корректного отображения кнопок управления полноэкранным режимом необходимо обработать события входа в ПЭР и выхода из ПЭР.

Обрабатываемое событие – Enter Full Screen.

ID элемента

Действие (Action)

Пояснение

fullscreen_enter

Show Element [fullscreen_exit]

Отобразить кнопку выхода из ПЭР

Hide Element [$self]

Скрыть себя

Обрабатываемое событие – Exit Full Screen.

ID элемента

Действие (Action)

Пояснение

fullscreen_exit

Show Element [fullscreen_enter]

Отобразить кнопку входа в ПЭР

Hide Element [$self]

Скрыть себя

Создаем индикатор загрузки

Назначение индикатора загрузки отображать ход загрузки панорамы и оформления. Дизайн такого индикатора, как и других элементов, может быть любым на усмотрение разработчика. У редактора шаблона есть встроенная функция, позволяющая добавить стандартный индикатор загрузки. Находится она в меню по адресу Elements → Add Default Loading Bar.

Начнем создавать с нуля индикатор загрузки, похожий на стандартный. Для этого добавим прямоугольник с размерами 200x50 пикс., который будет служить основой. На нем расположим еще один прямоугольник в виде узкой полосы. Он будет изменять свои размеры во время загрузки. Текстовое поле будет отображать состояние загрузки в процентах.

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

Рисунок 5.

Перейдем созданию сценариев. Для прямоугольника, отображающего ход загрузки, добавим модификатор, обрабатывающий событие Loading. Целью модификатора будет Scale X – изменение масштабирования прямоугольника по оси X от нуля до его фактических размеров. Значения параметров Factor и Offset оставим как есть.

Рисунок 6.

Чтобы масштабирование происходило слева направо, параметр Center установлен в центральный левый сегмент.

Рисунок 7.

Для управления отображением индикатора загрузки создадим сценарии, которые будут обрабатывать события Loaded и Reload. Они применены для прямоугольника-основы.

Событие Loaded сигнализирует о завершении загрузки. Поэтому в нем будет выполняться действие на скрытие самого себя. Событие Reload сигнализирует о начале загрузки. Здесь будет выполняться действие на отображение самого себя.

Для одиночной панорамы назначать событие Reload не обязательно. Оно понадобится при создании проектов, состоящих из нескольких панорам.

Рисунок 8.

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

Демо пример


Loading...

Теги:  HTML5, кнопки, скин, Pano2VR, шаблон, Оформление
Об авторе

Сергей Дишук, фотограф-любитель и профессионал. Занимаюсь пейзажной, архитектурной, интерьерной, репортажной фотосъемкой, а также другими видами фотосъемки. Связал жизнь с IT, увлекаюсь программированием и разработкой программного обеспечения.

Занимаюсь панорамной фотосъемкой и созданием виртуальных 3D-туров более 8-ми лет. Имею опыт работы в программах Pano2VR, PTGui, Photomatix, Adobe Photoshop, Lightroom и других.

Реализовал некоторые фичи в проектах Pano2VR задолго до их официального появления. За всё время помог разобраться с Pano2VR более 5k пользователям, из них более 200 лично.

Оцените материал
Поделитесь материалом в социальных сетях
Материалы по теме статьи

У Вас остались вопросы по статье? Задавайте. Буду рад ответить на них в комментариях.

Если этот материал совсем не то, куда Вас привел поисковик, попробуйте выполнить поиск по сайту или введите запрос в строку ниже. Также Вы можете посмотреть другие материалы в разделе статьи.

Нет комментариев
Сейчас просматривают
Связь со мной и соцсети
Telegram
Viber
LinkedIn
ВКонтакте
 
Одноклассники
 
Instagram
 
Опрос
Оцените ваши впечатления от сайта?
Всего проголосовавших: 40
Онлайн всего: 4
Гостей: 4
Пользователей: 0