Description
[
edit
]
MediaWiki extension which allows to add 3D models viewer to site pages. Based on
THREE.js
, renders image with CanvasRenderer. There you can see
example 3D model page
.
Supported file extensions
[
edit
]
THREE.js model format:
- .json
- .3djson
- .3dj
- .three
THREE.js model buffer geometry format:
OBJ file format:
STL (binary) file format:
Install
[
edit
]
- Download
and place the file(s) in a directory called
3DAlloy
in your
extensions/
folder.
- Add the following code at the bottom of your
LocalSettings.php
file:
wfLoadExtension
(
'3DAlloy'
);
- Modify
$wgFileExtensions
parameter:
$wgFileExtensions
=
array_merge
(
$wgFileExtensions
,
array
(
'json'
,
'3dj'
,
'3djson'
,
'three'
,
'buff'
,
'buffjson'
,
'obj'
,
'stl'
,
'stlb'
)
);
-
Done
? Navigate to
Special:Version
on your wiki to verify that the extension is successfully installed.
Usage
[
edit
]
As Image Handler
[
edit
]
[[File:Model.json|300x300px|color=,opacity=,...]]
As Parser function
[
edit
]
{{#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}}
Instead of uploaded filename you can use an url for file located in external site.
As Parser tag
[
edit
]
<
3d
file
=
"Model.json"
width
=
""
height
=
""
...
></
3d
>
or
<
3d
width
=
""
height
=
""
...
>
Model.json
</
3d
>
You also can use url instead of short filename.
Parameters
[
edit
]
Name
|
Description
|
Default value
|
width
|
Canvas width in pixels
|
300
|
height
|
Canvas height in pixels
|
300
|
color
|
Model RGB color as hex
|
0xff00ff
|
opacity
|
Model opacity as decimal between 0...1
|
0.8
|
zoom
|
If true or 1, canvas can be zoomed
|
false
|
pan
|
If true or 1, canvas can be panned
|
false
|
norotate
|
If true or 1, model does not rotate
|
false
|
scale
|
Model scale as decimal between 0...1
|
1
|
z
|
Model z coordinate
|
75
|
style
|
Additional canvas CSS style
|
|
class
|
Additional canvas HTML class
|
|
Width and height can be set to
0
value, so size of viewer will be set according to user screen dimensions.
Configure
[
edit
]
All default values can be changed in your
LocalSettings.php
file:
$wg3DAlloy
[
"width"
]
=
500
;
$wg3DAlloy
[
"height"
]
=
400
;
...
$wg3DAlloy
[
"class"
]
=
'someclass'
;
Controls and hotkeys
[
edit
]
Action
|
Controls
|
Camera rotate
|
Swipe, left mouse key hold and move
|
Camera zoom (if zoom enabled)
|
Mouse wheel, hold wheel and move, pinch
|
Camera pan (if pan enabled)
|
Right key hold and move
|
Model rotate
|
←↑→↓ keys
|
Model rotation reset
|
Home key
|
Model rotation play/pause
|
Double click, double tap
|
Model rotation play/pause all models at page
|
Enter, Space keys
|
Model rotation speed
|
- and + keys
|
Hotkeys automatically disables while you edit or submit wiki page.