Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
车家大少爷
three.js
提交
109393ce
T
three.js
项目概览
车家大少爷
/
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,发现更多精彩内容 >>
提交
109393ce
编写于
7月 28, 2015
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Updated builds.
上级
ccc2b586
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
17 addition
and
2 deletion
+17
-2
build/three.js
build/three.js
+15
-0
build/three.min.js
build/three.min.js
+2
-2
未找到文件。
build/three.js
浏览文件 @
109393ce
...
@@ -5731,6 +5731,21 @@ THREE.Matrix4.prototype = {
...
@@ -5731,6 +5731,21 @@ THREE.Matrix4.prototype = {
},
},
equals: function ( matrix ) {
var te = this.elements;
var me = matrix.elements;
for ( var i = 0; i < 16; i ++ ) {
if ( te[ i ] !== me[ i ] ) return false;
}
return true;
},
fromArray: function ( array ) {
fromArray: function ( array ) {
this.elements.set( array );
this.elements.set( array );
...
...
build/three.min.js
浏览文件 @
109393ce
...
@@ -119,8 +119,8 @@ this.elements,c=a.x,d=a.y;a=a.z;b[0]*=c;b[4]*=d;b[8]*=a;b[1]*=c;b[5]*=d;b[9]*=a;
...
@@ -119,8 +119,8 @@ this.elements,c=a.x,d=a.y;a=a.z;b[0]*=c;b[4]*=d;b[8]*=a;b[1]*=c;b[5]*=d;b[9]*=a;
0
,
0
,
0
,
1
);
return
this
},
makeRotationY
:
function
(
a
){
var
b
=
Math
.
cos
(
a
);
a
=
Math
.
sin
(
a
);
this
.
set
(
b
,
0
,
a
,
0
,
0
,
1
,
0
,
0
,
-
a
,
0
,
b
,
0
,
0
,
0
,
0
,
1
);
return
this
},
makeRotationZ
:
function
(
a
){
var
b
=
Math
.
cos
(
a
);
a
=
Math
.
sin
(
a
);
this
.
set
(
b
,
-
a
,
0
,
0
,
a
,
b
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
1
);
return
this
},
makeRotationAxis
:
function
(
a
,
b
){
var
c
=
Math
.
cos
(
b
),
d
=
Math
.
sin
(
b
),
e
=
1
-
c
,
g
=
a
.
x
,
f
=
a
.
y
,
h
=
a
.
z
,
k
=
e
*
g
,
l
=
e
*
f
;
this
.
set
(
k
*
g
+
c
,
k
*
f
-
d
*
h
,
k
*
h
+
d
*
f
,
0
,
k
*
f
+
d
*
h
,
l
*
f
+
c
,
l
*
h
-
d
*
g
,
0
,
k
*
h
-
d
*
f
,
l
*
h
+
d
*
g
,
e
*
h
*
h
+
c
,
0
,
0
,
0
,
0
,
1
);
return
this
},
makeScale
:
function
(
a
,
b
,
c
){
this
.
set
(
a
,
0
,
0
,
0
,
0
,
b
,
0
,
0
,
0
,
1
);
return
this
},
makeRotationY
:
function
(
a
){
var
b
=
Math
.
cos
(
a
);
a
=
Math
.
sin
(
a
);
this
.
set
(
b
,
0
,
a
,
0
,
0
,
1
,
0
,
0
,
-
a
,
0
,
b
,
0
,
0
,
0
,
0
,
1
);
return
this
},
makeRotationZ
:
function
(
a
){
var
b
=
Math
.
cos
(
a
);
a
=
Math
.
sin
(
a
);
this
.
set
(
b
,
-
a
,
0
,
0
,
a
,
b
,
0
,
0
,
0
,
0
,
1
,
0
,
0
,
0
,
0
,
1
);
return
this
},
makeRotationAxis
:
function
(
a
,
b
){
var
c
=
Math
.
cos
(
b
),
d
=
Math
.
sin
(
b
),
e
=
1
-
c
,
g
=
a
.
x
,
f
=
a
.
y
,
h
=
a
.
z
,
k
=
e
*
g
,
l
=
e
*
f
;
this
.
set
(
k
*
g
+
c
,
k
*
f
-
d
*
h
,
k
*
h
+
d
*
f
,
0
,
k
*
f
+
d
*
h
,
l
*
f
+
c
,
l
*
h
-
d
*
g
,
0
,
k
*
h
-
d
*
f
,
l
*
h
+
d
*
g
,
e
*
h
*
h
+
c
,
0
,
0
,
0
,
0
,
1
);
return
this
},
makeScale
:
function
(
a
,
b
,
c
){
this
.
set
(
a
,
0
,
0
,
0
,
0
,
b
,
0
,
0
,
0
,
0
,
c
,
0
,
0
,
0
,
0
,
1
);
return
this
},
compose
:
function
(
a
,
b
,
c
){
this
.
makeRotationFromQuaternion
(
b
);
this
.
scale
(
c
);
this
.
setPosition
(
a
);
return
this
},
decompose
:
function
(){
var
a
,
b
;
return
function
(
c
,
d
,
e
){
void
0
===
a
&&
(
a
=
new
THREE
.
Vector3
);
void
0
===
b
&&
(
b
=
new
THREE
.
Matrix4
);
var
g
=
this
.
elements
,
f
=
a
.
set
(
g
[
0
],
g
[
1
],
g
[
2
]).
length
(),
h
=
a
.
set
(
g
[
4
],
g
[
5
],
g
[
6
]).
length
(),
k
=
a
.
set
(
g
[
8
],
g
[
9
],
g
[
10
]).
length
();
0
>
this
.
determinant
()
&&
(
f
=-
f
);
c
.
x
=
g
[
12
];
c
.
y
=
g
[
13
];
c
.
z
=
g
[
14
];
b
.
elements
.
set
(
this
.
elements
);
c
=
1
/
f
;
var
g
=
1
/
h
,
l
=
1
/
k
;
b
.
elements
[
0
]
*=
0
,
0
,
0
,
0
,
c
,
0
,
0
,
0
,
0
,
1
);
return
this
},
compose
:
function
(
a
,
b
,
c
){
this
.
makeRotationFromQuaternion
(
b
);
this
.
scale
(
c
);
this
.
setPosition
(
a
);
return
this
},
decompose
:
function
(){
var
a
,
b
;
return
function
(
c
,
d
,
e
){
void
0
===
a
&&
(
a
=
new
THREE
.
Vector3
);
void
0
===
b
&&
(
b
=
new
THREE
.
Matrix4
);
var
g
=
this
.
elements
,
f
=
a
.
set
(
g
[
0
],
g
[
1
],
g
[
2
]).
length
(),
h
=
a
.
set
(
g
[
4
],
g
[
5
],
g
[
6
]).
length
(),
k
=
a
.
set
(
g
[
8
],
g
[
9
],
g
[
10
]).
length
();
0
>
this
.
determinant
()
&&
(
f
=-
f
);
c
.
x
=
g
[
12
];
c
.
y
=
g
[
13
];
c
.
z
=
g
[
14
];
b
.
elements
.
set
(
this
.
elements
);
c
=
1
/
f
;
var
g
=
1
/
h
,
l
=
1
/
k
;
b
.
elements
[
0
]
*=
c
;
b
.
elements
[
1
]
*=
c
;
b
.
elements
[
2
]
*=
c
;
b
.
elements
[
4
]
*=
g
;
b
.
elements
[
5
]
*=
g
;
b
.
elements
[
6
]
*=
g
;
b
.
elements
[
8
]
*=
l
;
b
.
elements
[
9
]
*=
l
;
b
.
elements
[
10
]
*=
l
;
d
.
setFromRotationMatrix
(
b
);
e
.
x
=
f
;
e
.
y
=
h
;
e
.
z
=
k
;
return
this
}}(),
makeFrustum
:
function
(
a
,
b
,
c
,
d
,
e
,
g
){
var
f
=
this
.
elements
;
f
[
0
]
=
2
*
e
/
(
b
-
a
);
f
[
4
]
=
0
;
f
[
8
]
=
(
b
+
a
)
/
(
b
-
a
);
f
[
12
]
=
0
;
f
[
1
]
=
0
;
f
[
5
]
=
2
*
e
/
(
d
-
c
);
f
[
9
]
=
(
d
+
c
)
/
(
d
-
c
);
f
[
13
]
=
0
;
f
[
2
]
=
0
;
f
[
6
]
=
0
;
f
[
10
]
=-
(
g
+
e
)
/
(
g
-
e
);
f
[
14
]
=-
2
*
g
*
e
/
(
g
-
e
);
f
[
3
]
=
0
;
f
[
7
]
=
0
;
f
[
11
]
=-
1
;
f
[
15
]
=
0
;
return
this
},
makePerspective
:
function
(
a
,
b
,
c
,
d
){
a
=
c
*
Math
.
tan
(
THREE
.
Math
.
degToRad
(.
5
*
c
;
b
.
elements
[
1
]
*=
c
;
b
.
elements
[
2
]
*=
c
;
b
.
elements
[
4
]
*=
g
;
b
.
elements
[
5
]
*=
g
;
b
.
elements
[
6
]
*=
g
;
b
.
elements
[
8
]
*=
l
;
b
.
elements
[
9
]
*=
l
;
b
.
elements
[
10
]
*=
l
;
d
.
setFromRotationMatrix
(
b
);
e
.
x
=
f
;
e
.
y
=
h
;
e
.
z
=
k
;
return
this
}}(),
makeFrustum
:
function
(
a
,
b
,
c
,
d
,
e
,
g
){
var
f
=
this
.
elements
;
f
[
0
]
=
2
*
e
/
(
b
-
a
);
f
[
4
]
=
0
;
f
[
8
]
=
(
b
+
a
)
/
(
b
-
a
);
f
[
12
]
=
0
;
f
[
1
]
=
0
;
f
[
5
]
=
2
*
e
/
(
d
-
c
);
f
[
9
]
=
(
d
+
c
)
/
(
d
-
c
);
f
[
13
]
=
0
;
f
[
2
]
=
0
;
f
[
6
]
=
0
;
f
[
10
]
=-
(
g
+
e
)
/
(
g
-
e
);
f
[
14
]
=-
2
*
g
*
e
/
(
g
-
e
);
f
[
3
]
=
0
;
f
[
7
]
=
0
;
f
[
11
]
=-
1
;
f
[
15
]
=
0
;
return
this
},
makePerspective
:
function
(
a
,
b
,
c
,
d
){
a
=
c
*
Math
.
tan
(
THREE
.
Math
.
degToRad
(.
5
*
a
));
var
e
=-
a
;
return
this
.
makeFrustum
(
e
*
b
,
a
*
b
,
e
,
a
,
c
,
d
)},
makeOrthographic
:
function
(
a
,
b
,
c
,
d
,
e
,
g
){
var
f
=
this
.
elements
,
h
=
b
-
a
,
k
=
c
-
d
,
l
=
g
-
e
;
f
[
0
]
=
2
/
h
;
f
[
4
]
=
0
;
f
[
8
]
=
0
;
f
[
12
]
=-
((
b
+
a
)
/
h
);
f
[
1
]
=
0
;
f
[
5
]
=
2
/
k
;
f
[
9
]
=
0
;
f
[
13
]
=-
((
c
+
d
)
/
k
);
f
[
2
]
=
0
;
f
[
6
]
=
0
;
f
[
10
]
=-
2
/
l
;
f
[
14
]
=-
((
g
+
e
)
/
l
);
f
[
3
]
=
0
;
f
[
7
]
=
0
;
f
[
11
]
=
0
;
f
[
15
]
=
1
;
return
this
},
fromArray
:
function
(
a
){
this
.
elements
.
set
(
a
);
return
this
},
toArray
:
function
(){
var
a
=
this
.
elements
;
return
[
a
[
0
],
a
[
1
],
a
[
2
],
a
[
3
],
a
[
4
],
a
[
5
],
a
[
6
],
a
[
7
],
a
[
8
],
a
[
9
],
a
[
10
],
a
[
11
],
a
[
12
],
a
[
13
],
a
[
14
],
a
[
15
]]},
clone
:
function
(){
return
(
new
THREE
.
Matrix4
).
fromArray
(
this
.
elements
)}};
a
));
var
e
=-
a
;
return
this
.
makeFrustum
(
e
*
b
,
a
*
b
,
e
,
a
,
c
,
d
)},
makeOrthographic
:
function
(
a
,
b
,
c
,
d
,
e
,
g
){
var
f
=
this
.
elements
,
h
=
b
-
a
,
k
=
c
-
d
,
l
=
g
-
e
;
f
[
0
]
=
2
/
h
;
f
[
4
]
=
0
;
f
[
8
]
=
0
;
f
[
12
]
=-
((
b
+
a
)
/
h
);
f
[
1
]
=
0
;
f
[
5
]
=
2
/
k
;
f
[
9
]
=
0
;
f
[
13
]
=-
((
c
+
d
)
/
k
);
f
[
2
]
=
0
;
f
[
6
]
=
0
;
f
[
10
]
=-
2
/
l
;
f
[
14
]
=-
((
g
+
e
)
/
l
);
f
[
3
]
=
0
;
f
[
7
]
=
0
;
f
[
11
]
=
0
;
f
[
15
]
=
1
;
return
this
},
equals
:
function
(
a
){
var
b
=
this
.
elements
;
a
=
a
.
elements
;
for
(
var
c
=
0
;
16
>
c
;
c
++
)
if
(
b
[
c
]
!==
a
[
c
])
return
!
1
;
return
!
0
},
fromArray
:
function
(
a
){
this
.
elements
.
set
(
a
);
return
this
},
toArray
:
function
(){
var
a
=
this
.
elements
;
return
[
a
[
0
],
THREE
.
Ray
=
function
(
a
,
b
){
this
.
origin
=
void
0
!==
a
?
a
:
new
THREE
.
Vector3
;
this
.
direction
=
void
0
!==
b
?
b
:
new
THREE
.
Vector3
};
a
[
1
],
a
[
2
],
a
[
3
],
a
[
4
],
a
[
5
],
a
[
6
],
a
[
7
],
a
[
8
],
a
[
9
],
a
[
10
],
a
[
11
],
a
[
12
],
a
[
13
],
a
[
14
],
a
[
15
]]},
clone
:
function
(){
return
(
new
THREE
.
Matrix4
).
fromArray
(
this
.
elements
)}};
THREE
.
Ray
=
function
(
a
,
b
){
this
.
origin
=
void
0
!==
a
?
a
:
new
THREE
.
Vector3
;
this
.
direction
=
void
0
!==
b
?
b
:
new
THREE
.
Vector3
};
THREE
.
Ray
.
prototype
=
{
constructor
:
THREE
.
Ray
,
set
:
function
(
a
,
b
){
this
.
origin
.
copy
(
a
);
this
.
direction
.
copy
(
b
);
return
this
},
copy
:
function
(
a
){
this
.
origin
.
copy
(
a
.
origin
);
this
.
direction
.
copy
(
a
.
direction
);
return
this
},
at
:
function
(
a
,
b
){
return
(
b
||
new
THREE
.
Vector3
).
copy
(
this
.
direction
).
multiplyScalar
(
a
).
add
(
this
.
origin
)},
recast
:
function
(){
var
a
=
new
THREE
.
Vector3
;
return
function
(
b
){
this
.
origin
.
copy
(
this
.
at
(
b
,
a
));
return
this
}}(),
closestPointToPoint
:
function
(
a
,
b
){
var
c
=
b
||
new
THREE
.
Vector3
;
c
.
subVectors
(
a
,
this
.
origin
);
THREE
.
Ray
.
prototype
=
{
constructor
:
THREE
.
Ray
,
set
:
function
(
a
,
b
){
this
.
origin
.
copy
(
a
);
this
.
direction
.
copy
(
b
);
return
this
},
copy
:
function
(
a
){
this
.
origin
.
copy
(
a
.
origin
);
this
.
direction
.
copy
(
a
.
direction
);
return
this
},
at
:
function
(
a
,
b
){
return
(
b
||
new
THREE
.
Vector3
).
copy
(
this
.
direction
).
multiplyScalar
(
a
).
add
(
this
.
origin
)},
recast
:
function
(){
var
a
=
new
THREE
.
Vector3
;
return
function
(
b
){
this
.
origin
.
copy
(
this
.
at
(
b
,
a
));
return
this
}}(),
closestPointToPoint
:
function
(
a
,
b
){
var
c
=
b
||
new
THREE
.
Vector3
;
c
.
subVectors
(
a
,
this
.
origin
);
var
d
=
c
.
dot
(
this
.
direction
);
return
0
>
d
?
c
.
copy
(
this
.
origin
):
c
.
copy
(
this
.
direction
).
multiplyScalar
(
d
).
add
(
this
.
origin
)},
distanceToPoint
:
function
(
a
){
return
Math
.
sqrt
(
this
.
distanceSqToPoint
(
a
))},
distanceSqToPoint
:
function
(){
var
a
=
new
THREE
.
Vector3
;
return
function
(
b
){
var
c
=
a
.
subVectors
(
b
,
this
.
origin
).
dot
(
this
.
direction
);
if
(
0
>
c
)
return
this
.
origin
.
distanceToSquared
(
b
);
a
.
copy
(
this
.
direction
).
multiplyScalar
(
c
).
add
(
this
.
origin
);
return
a
.
distanceToSquared
(
b
)}}(),
distanceSqToSegment
:
function
(){
var
a
=
new
THREE
.
Vector3
,
var
d
=
c
.
dot
(
this
.
direction
);
return
0
>
d
?
c
.
copy
(
this
.
origin
):
c
.
copy
(
this
.
direction
).
multiplyScalar
(
d
).
add
(
this
.
origin
)},
distanceToPoint
:
function
(
a
){
return
Math
.
sqrt
(
this
.
distanceSqToPoint
(
a
))},
distanceSqToPoint
:
function
(){
var
a
=
new
THREE
.
Vector3
;
return
function
(
b
){
var
c
=
a
.
subVectors
(
b
,
this
.
origin
).
dot
(
this
.
direction
);
if
(
0
>
c
)
return
this
.
origin
.
distanceToSquared
(
b
);
a
.
copy
(
this
.
direction
).
multiplyScalar
(
c
).
add
(
this
.
origin
);
return
a
.
distanceToSquared
(
b
)}}(),
distanceSqToSegment
:
function
(){
var
a
=
new
THREE
.
Vector3
,
b
=
new
THREE
.
Vector3
,
c
=
new
THREE
.
Vector3
;
return
function
(
d
,
e
,
g
,
f
){
a
.
copy
(
d
).
add
(
e
).
multiplyScalar
(.
5
);
b
.
copy
(
e
).
sub
(
d
).
normalize
();
c
.
copy
(
this
.
origin
).
sub
(
a
);
var
h
=
.
5
*
d
.
distanceTo
(
e
),
k
=-
this
.
direction
.
dot
(
b
),
l
=
c
.
dot
(
this
.
direction
),
n
=-
c
.
dot
(
b
),
p
=
c
.
lengthSq
(),
m
=
Math
.
abs
(
1
-
k
*
k
),
q
;
0
<
m
?(
d
=
k
*
n
-
l
,
e
=
k
*
l
-
n
,
q
=
h
*
m
,
0
<=
d
?
e
>=-
q
?
e
<=
q
?(
h
=
1
/
m
,
d
*=
h
,
e
*=
h
,
k
=
d
*
(
d
+
k
*
e
+
2
*
l
)
+
e
*
(
k
*
d
+
e
+
2
*
n
)
+
p
):(
e
=
h
,
d
=
Math
.
max
(
0
,
-
(
k
*
e
+
l
)),
k
=-
d
*
d
+
e
*
(
e
+
2
*
n
)
+
p
):(
e
=-
h
,
d
=
Math
.
max
(
0
,
-
(
k
*
e
+
l
)),
k
=-
d
*
d
+
e
*
(
e
+
2
*
n
)
+
p
):
e
<=-
q
?(
d
=
Math
.
max
(
0
,
-
(
-
k
*
h
+
l
)),
e
=
b
=
new
THREE
.
Vector3
,
c
=
new
THREE
.
Vector3
;
return
function
(
d
,
e
,
g
,
f
){
a
.
copy
(
d
).
add
(
e
).
multiplyScalar
(.
5
);
b
.
copy
(
e
).
sub
(
d
).
normalize
();
c
.
copy
(
this
.
origin
).
sub
(
a
);
var
h
=
.
5
*
d
.
distanceTo
(
e
),
k
=-
this
.
direction
.
dot
(
b
),
l
=
c
.
dot
(
this
.
direction
),
n
=-
c
.
dot
(
b
),
p
=
c
.
lengthSq
(),
m
=
Math
.
abs
(
1
-
k
*
k
),
q
;
0
<
m
?(
d
=
k
*
n
-
l
,
e
=
k
*
l
-
n
,
q
=
h
*
m
,
0
<=
d
?
e
>=-
q
?
e
<=
q
?(
h
=
1
/
m
,
d
*=
h
,
e
*=
h
,
k
=
d
*
(
d
+
k
*
e
+
2
*
l
)
+
e
*
(
k
*
d
+
e
+
2
*
n
)
+
p
):(
e
=
h
,
d
=
Math
.
max
(
0
,
-
(
k
*
e
+
l
)),
k
=-
d
*
d
+
e
*
(
e
+
2
*
n
)
+
p
):(
e
=-
h
,
d
=
Math
.
max
(
0
,
-
(
k
*
e
+
l
)),
k
=-
d
*
d
+
e
*
(
e
+
2
*
n
)
+
p
):
e
<=-
q
?(
d
=
Math
.
max
(
0
,
-
(
-
k
*
h
+
l
)),
e
=
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录