Jump to content

Extension:3D

From mediawiki.org
This page is a translated version of the page Extension:3D and the translation is 100% complete.
MediaWiki扩展手册
3D
发行状态: 测试版
实现 媒体
描述 为3D(立体)文件格式提供支持。
作者
最新版本 0.0.1
兼容性政策 快照跟随MediaWiki发布。 master分支不向后兼容。
许可协议 GNU通用公眾授權條款2.0或更新版本
下載
帮助 Help:Extension:3D/zh
  • $wgMax3d2pngMemory
  • $wg3dProcessEnviron
  • $wgAjaxPatentPreview
Vagrant角色 three_d
問題 开启的任务 · 报告错误

3D 扩展用于为Wiki用户上传,查看3D模型提供支持。 参见Help:Extension:3D 获取用法文档。

目前它支持STL文件格式,这在3D打印字段中最常见。

安裝

启用3D文件上传

要启用 MediaWiki 对STL文件上传的处理,将下列代码加入LocalSettings.php

$wgTrustedMediaFormats[] = 'application/sla';
$wgFileExtensions[] = 'stl';

安装Extension:3D

  • 下载文件,并将其放置在您extensions/文件夹中的3D目录内。
  • 請新增下列代码到您的LocalSettings.php 文件的底部:
    wfLoadExtension( '3D' );
    
  • Yes 完成 – 請导航至您的wiki上的Special:Version,以验证此扩展已成功安装。

安装 3d2png

3d2png 是用于 3D 文件的缩略图渲染器。它将渲染 PNG 缩略图,其渲染效果与此扩展显示对象的方式完全相同,使用相同的 JS 库在 Node.js 中运行,而不是在浏览器中。

若要安装,请克隆并激活 3d2png 仓库:

git clone https://gerrit.wikimedia.org/r/3d2png
cd 3d2png
npm install

在Linux系统上,你还需要安装一个虚拟帧缓冲器,以便 3d2png 能够无头地捕捉 3D 对象。

apt-get install xvfb

在成功安装3d2png之后,我们将会讲解 Extension:3D 如何调用这个缩略图生成服务。 将下列代码加入LocalSettings.php,并确保更新路径以匹配你的配置:

$wg3dProcessor = [
    '/usr/bin/xvfb-run',
    '-a',
    '-s',
    '-ac -screen 0 1280x1024x24',
    '/path-to-your-repository/3d2png.js'
];

安装 Extension:MultimediaViewer(多媒体查看器)

MultimediaViewer 不是 3D 扩展的必需依赖,但如果您想与 3D 模型进行交互(移动、平移、缩放),则需要安装它。 在安装好MultimediaViewer后,您需要将 STL 文件类型与正确的查看器扩展名关联,通过下列代码加入LocalSettings.php

$wgMediaViewerExtensions['stl'] = 'mmv.3d';

配置

许可协议

Special:上传文件

若要向 Special:上传文件 中添加许可协议,请编辑MediaWiki:3d-patents页面。 该页面上的每一行都将被转换为一个选项(<option>),其中|字符之后的内容是文本,之前的内容是将要添加到文件页面中的模板。 查看示例commons:MediaWiki:3d-patents

确保创建将要添加到页面中的模板,即Template:3dpatent

Special:上传向导

Special:上传向导 也支持许可协议,虽然略微不那么灵活。 上传第三方 STL 文件时,会显示一个对话框以确认您的上传不侵犯任何协利。 上传您自己的作品时,它还会要求确认所展示的3D对象是您自己的作品。 添加到页面的模板将分别为 {{3dpatent}}{{3dpatent|ownwork}}

要更改这些消息的措辞,可以修改以下页面:MediaWiki:Mwe-upwiz-patent-dialog-text-warrantyMediaWiki:Mwe-upwiz-patent-dialog-text-license

要更改哪些文件类型需要许可协议、上传内容使用哪个模板或网址指向的位置,请更改 LocalSettings.php。以下是默认设置:

$wgUploadWizardConfig['patents'] = [
	'extensions' => [ 'stl' ],
	'template' => '3dpatent',
	'url' => [
		'legalcode' => '//wikimediafoundation.org/wiki/Wikimedia_3D_file_patent_license',
		'warranty' => '//meta.wikimedia.org/wiki/Wikilegal/3D_files_and_3D_printing',
		'license' => '//meta.wikimedia.org/wiki/Wikilegal/3D_files_and_3D_printing',
		'weapons' => '//meta.wikimedia.org/wiki/Wikilegal/3D_files_and_3D_printing#Weapons',
	],
];

扩展:共享资源元数据

最后,扩展:共享资源元数据 提供了一种在没有该许可协议的情况下跟踪 3D 上传的方法,尽管它完全不可配置。 它将只检查 MIME 类型为 application/sla 的上传内容(目前仅支持 Extension:3D 的这些类型)且缺少 3dpatent 模板的情况。 内容中缺少此模板的匹配文件将自动添加到分类Category:Files_with_no_machine-readable_patent

如果你使用除 3dpatent 以外的任何模板,这对你没有用,因为目前无法配置。