Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
2269607b
T
three.js
项目概览
Ablesons
/
three.js
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
three.js
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
2269607b
编写于
2月 15, 2014
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Added Geometry2Loader and Geometry2Exporter.
上级
3ade043c
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
140 addition
and
1 deletion
+140
-1
editor/index.html
editor/index.html
+1
-0
editor/js/Menubar.File.js
editor/js/Menubar.File.js
+5
-0
editor/js/Sidebar.Material.js
editor/js/Sidebar.Material.js
+1
-0
examples/js/exporters/Geometry2Exporter.js
examples/js/exporters/Geometry2Exporter.js
+55
-0
examples/js/exporters/ObjectExporter.js
examples/js/exporters/ObjectExporter.js
+8
-0
src/loaders/Geometry2Loader.js
src/loaders/Geometry2Loader.js
+62
-0
src/loaders/ObjectLoader.js
src/loaders/ObjectLoader.js
+7
-0
utils/build/includes/common.json
utils/build/includes/common.json
+1
-1
未找到文件。
editor/index.html
浏览文件 @
2269607b
...
...
@@ -35,6 +35,7 @@
<script
src=
"../examples/js/BufferGeometryUtils.js"
></script>
<script
src=
"../examples/js/exporters/BufferGeometryExporter.js"
></script>
<script
src=
"../examples/js/exporters/Geometry2Exporter.js"
></script>
<script
src=
"../examples/js/exporters/GeometryExporter.js"
></script>
<script
src=
"../examples/js/exporters/MaterialExporter.js"
></script>
<script
src=
"../examples/js/exporters/ObjectExporter.js"
></script>
...
...
editor/js/Menubar.File.js
浏览文件 @
2269607b
...
...
@@ -91,6 +91,10 @@ Menubar.File = function ( editor ) {
exportGeometry
(
THREE
.
BufferGeometryExporter
);
}
else
if
(
geometry
instanceof
THREE
.
Geometry2
)
{
exportGeometry
(
THREE
.
Geometry2Exporter
);
}
else
if
(
geometry
instanceof
THREE
.
Geometry
)
{
exportGeometry
(
THREE
.
GeometryExporter
);
...
...
@@ -151,6 +155,7 @@ Menubar.File = function ( editor ) {
var
output
;
if
(
exporter
instanceof
THREE
.
BufferGeometryExporter
||
exporter
instanceof
THREE
.
Geometry2Exporter
||
exporter
instanceof
THREE
.
GeometryExporter
)
{
output
=
JSON
.
stringify
(
exporter
.
parse
(
object
.
geometry
),
null
,
'
\t
'
);
...
...
editor/js/Sidebar.Material.js
浏览文件 @
2269607b
...
...
@@ -313,6 +313,7 @@ Sidebar.Material = function ( editor ) {
if
(
object
instanceof
THREE
.
Sprite
)
objectHasUvs
=
true
;
if
(
geometry
instanceof
THREE
.
Geometry
&&
geometry
.
faceVertexUvs
[
0
].
length
>
0
)
objectHasUvs
=
true
;
if
(
geometry
instanceof
THREE
.
Geometry2
&&
geometry
.
uvs
.
length
>
0
)
objectHasUvs
=
true
;
if
(
geometry
instanceof
THREE
.
BufferGeometry
&&
geometry
.
attributes
.
uv
!==
undefined
)
objectHasUvs
=
true
;
if
(
material
)
{
...
...
examples/js/exporters/Geometry2Exporter.js
0 → 100644
浏览文件 @
2269607b
/**
* @author mrdoob / http://mrdoob.com/
*/
THREE
.
Geometry2Exporter
=
function
()
{};
THREE
.
Geometry2Exporter
.
prototype
=
{
constructor
:
THREE
.
Geometry2Exporter
,
parse
:
function
(
geometry
)
{
var
output
=
{
metadata
:
{
version
:
4.0
,
type
:
'
Geometry2
'
,
generator
:
'
Geometry2Exporter
'
}
};
var
attributes
=
[
'
vertices
'
,
'
normals
'
,
'
uvs
'
];
for
(
var
key
in
attributes
)
{
var
attribute
=
attributes
[
key
];
var
typedArray
=
geometry
[
attribute
];
var
array
=
[];
for
(
var
i
=
0
,
l
=
typedArray
.
length
;
i
<
l
;
i
++
)
{
array
[
i
]
=
typedArray
[
i
];
}
output
[
attribute
]
=
array
;
}
var
boundingSphere
=
geometry
.
boundingSphere
;
if
(
boundingSphere
!==
null
)
{
output
.
boundingSphere
=
{
center
:
boundingSphere
.
center
.
toArray
(),
radius
:
boundingSphere
.
radius
}
}
return
output
;
}
};
examples/js/exporters/ObjectExporter.js
浏览文件 @
2269607b
...
...
@@ -24,6 +24,7 @@ THREE.ObjectExporter.prototype = {
var
geometries
=
{};
var
geometryExporter
=
new
THREE
.
GeometryExporter
();
var
geometry2Exporter
=
new
THREE
.
Geometry2Exporter
();
var
bufferGeometryExporter
=
new
THREE
.
BufferGeometryExporter
();
var
parseGeometry
=
function
(
geometry
)
{
...
...
@@ -120,6 +121,13 @@ THREE.ObjectExporter.prototype = {
delete
data
.
data
.
metadata
;
}
else
if
(
geometry
instanceof
THREE
.
Geometry2
)
{
data
.
type
=
'
Geometry2
'
;
data
.
data
=
geometry2Exporter
.
parse
(
geometry
);
delete
data
.
data
.
metadata
;
}
else
if
(
geometry
instanceof
THREE
.
Geometry
)
{
data
.
type
=
'
Geometry
'
;
...
...
src/loaders/GeometryLoader.js
→
src/loaders/Geometry
2
Loader.js
浏览文件 @
2269607b
...
...
@@ -2,15 +2,15 @@
* @author mrdoob / http://mrdoob.com/
*/
THREE
.
GeometryLoader
=
function
(
manager
)
{
THREE
.
Geometry
2
Loader
=
function
(
manager
)
{
this
.
manager
=
(
manager
!==
undefined
)
?
manager
:
THREE
.
DefaultLoadingManager
;
};
THREE
.
GeometryLoader
.
prototype
=
{
THREE
.
Geometry
2
Loader
.
prototype
=
{
constructor
:
THREE
.
GeometryLoader
,
constructor
:
THREE
.
Geometry
2
Loader
,
load
:
function
(
url
,
onLoad
,
onProgress
,
onError
)
{
...
...
@@ -34,7 +34,28 @@ THREE.GeometryLoader.prototype = {
parse
:
function
(
json
)
{
var
geometry
=
new
THREE
.
Geometry2
(
json
.
vertices
.
length
/
3
);
var
attributes
=
[
'
vertices
'
,
'
normals
'
,
'
uvs
'
];
var
boundingSphere
=
json
.
boundingSphere
;
for
(
var
key
in
attributes
)
{
var
attribute
=
attributes
[
key
];
geometry
[
attribute
].
set
(
json
[
attribute
]
);
}
if
(
boundingSphere
!==
undefined
)
{
geometry
.
boundingSphere
=
new
THREE
.
Sphere
(
new
THREE
.
Vector3
().
fromArray
(
boundingSphere
.
center
!==
undefined
?
boundingSphere
.
center
:
[
0
,
0
,
0
]
),
boundingSphere
.
radius
);
}
return
geometry
;
}
...
...
src/loaders/ObjectLoader.js
浏览文件 @
2269607b
...
...
@@ -49,6 +49,7 @@ THREE.ObjectLoader.prototype = {
if
(
json
!==
undefined
)
{
var
geometryLoader
=
new
THREE
.
JSONLoader
();
var
geometry2Loader
=
new
THREE
.
Geometry2Loader
();
var
bufferGeometryLoader
=
new
THREE
.
BufferGeometryLoader
();
for
(
var
i
=
0
,
l
=
json
.
length
;
i
<
l
;
i
++
)
{
...
...
@@ -160,6 +161,12 @@ THREE.ObjectLoader.prototype = {
break
;
case
'
Geometry2
'
:
geometry
=
geometry2Loader
.
parse
(
data
.
data
);
break
;
case
'
Geometry
'
:
geometry
=
geometryLoader
.
parse
(
data
.
data
).
geometry
;
...
...
utils/build/includes/common.json
浏览文件 @
2269607b
...
...
@@ -46,7 +46,7 @@
"src/loaders/JSONLoader.js"
,
"src/loaders/LoadingManager.js"
,
"src/loaders/BufferGeometryLoader.js"
,
"src/loaders/GeometryLoader.js"
,
"src/loaders/Geometry
2
Loader.js"
,
"src/loaders/MaterialLoader.js"
,
"src/loaders/ObjectLoader.js"
,
"src/loaders/SceneLoader.js"
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录