Extension:3DAlloy
Статус релиза: стабильно |
|
|---|---|
![]() |
|
| Реализация | Функция парсера, Тег, ContentHandler, Разметка ссылок |
| Описание | Добавляет в MediaWiki возможность просмотра 3D-файлов |
| Автор(ы) | Dolfinus |
| Последняя версия | 1.10 (2025-10-27) |
| MediaWiki | 1.43+ |
| Изменения в БД | Нет |
| Лицензия | MIT License |
| Скачать | Download master snapshot Note: README |
| Пример | Пример отображения 3D-плеера на странице с файлом |
|
$wg3DAlloy |
|
<3d> |
|
Описание
Расширение MediaWiki, позволяющее загружать и отображать на вики 3D-модели. Основано на библиотеке THREE.js, отрисовка происходит на Canvas. Пример страницы с моделью.
Поддерживаемые типы файлов
Формат THREE.js
- .json
- .3djson
- .3dj
- .three
Формат THREE.js (буферизованный)
- .buff
- .buffjson
Формат OBJ
- .obj
Формат STL (бинарный)
- .stl
- .stlb
Установка
- Скачайте и распакуйте файл(ы) в папку с названием
3DAlloyв вашей папкеextensions/. - Добавьте следующий код в конце вашего файла LocalSettings.php:
wfLoadExtension( '3DAlloy' );
- Измените значение параметра $wgFileExtensions
$wgFileExtensions = array_merge(
$wgFileExtensions, array(
'json', '3dj', '3djson', 'three',
'buff', 'buffjson',
'obj',
'stl', 'stlb'
)
);
Готово – Перейдите на страницу Special:Version на своей вики, чтобы удостовериться в том, что расширение успешно установлено.
Использование
Как средство просмотра
[[File:Model.json|300x300px|color=,opacity=,...]]
Как функция
{{#3d:Model.json}}
{{#3d:Model.json|width}}
{{#3d:Model.json|width|height}}
...
{{#3d:Model.json|width|height|color|opacity|zoom|pan|norotate|scale|z|style|class}}
Вместо имени загруженного на сайт файла можно использовать URL файла с других сайтов.
Как тег
<3d file="Model.json" width="" height="" ... ></3d>
or
<3d width="" height="" ... >Model.json</3d>
Также можно указать полный путь к файлу вместо его названия.
Параметры
| Название | Описание | Default value |
|---|---|---|
| width | Ширина области отрисовки (в пикселях) | 300 |
| height | Высота области отрисовки (в пикселях) | 300 |
| color | RGB цвет модели (в формате hex) | 0xff00ff |
| opacity | Непрозрачность модели как дробь в диапазоне 0..1 | 0.8 |
| zoom | Если задано значение 1 или true, в области рисования включается зум | false |
| pan | Если задано значение 1 или true, в области рисования можно передвигать камеру | false |
| norotate | Если задано значение 1 или true, отключает вращение модели | false |
| scale | Масштаб модели как дробь в диапазоне 0..1 | 1 |
| z | Высота модели над плоскостью | 75 |
| style | Дополнительные CSS стили области рисования | |
| class | Дополнительные HTML классы для области рисования |
Высота и ширина могут иметь значение 0 - тогда размер области будет автоматически подстроен под разрешение экрана пользовательского устройства.
Настройка
Все значения по-умолчанию могут быть изменены в файле LocalSettings.php:
$wg3DAlloy["width"] = 500;
$wg3DAlloy["height"] = 400;
...
$wg3DAlloy["class"] = 'someclass';
Управление и горячие клавиши
| Действие | Элементы управления |
|---|---|
| Поворот камеры | "Свайп", удержание левой кнопки мыши и перемещение |
| Зум области рисования (если включено) | Поворот колеса мыши, нажатие на среднюю кнопку мыши (колесо) и перемещение, "щипок" |
| Перемещение камеры (если включено) | Удержание правой кнопки мыши и ее перемещение |
| Поворот модели | Клавиши ←↑→↓ |
| Сброс текущего поворота модели | Клавиша Home |
| Включение/остановка вращения модели | Двойное нажатие левой кнопкой мыши, двойной тап |
| Включение/остановка вращения всех моделей на странице | Клавиши Enter и пробел |
| Скорость вращения модели | Клавиши - и + |
Горячие кавиши автоматически отключаются при редактировании страницы
- Stable extensions/ru
- Parser function extensions/ru
- Tag extensions/ru
- ContentHandler extensions/ru
- Link markup extensions/ru
- MIT licensed extensions/ru
- Extensions in GitHub version control/ru
- ParserMakeImageParams extensions/ru
- ParserFirstCallInit extensions/ru
- ImageBeforeProduceHTML extensions/ru
- ImageOpenShowImageInlineBefore extensions/ru
- BeforePageDisplay extensions/ru
- BeforePageDisplayMobile extensions/ru
- All extensions/ru
- 3D extensions/ru

