Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
车家大少爷
three.js
提交
1ac9c9be
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,体验更适合开发者的 AI 搜索 >>
未验证
提交
1ac9c9be
编写于
12月 18, 2019
作者:
M
Michael Herzog
提交者:
GitHub
12月 18, 2019
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #18146 from arodic/feature/TransformControlls-scaleSnap
Added scaleSnap to TransformControls. Fixes #14902
上级
fa2a44d6
59f56886
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
60 addition
and
0 deletion
+60
-0
examples/js/controls/TransformControls.js
examples/js/controls/TransformControls.js
+29
-0
examples/jsm/controls/TransformControls.js
examples/jsm/controls/TransformControls.js
+29
-0
examples/misc_controls_transform.html
examples/misc_controls_transform.html
+2
-0
未找到文件。
examples/js/controls/TransformControls.js
浏览文件 @
1ac9c9be
...
...
@@ -34,6 +34,7 @@ THREE.TransformControls = function ( camera, domElement ) {
defineProperty
(
"
mode
"
,
"
translate
"
);
defineProperty
(
"
translationSnap
"
,
null
);
defineProperty
(
"
rotationSnap
"
,
null
);
defineProperty
(
"
scaleSnap
"
,
null
);
defineProperty
(
"
space
"
,
"
world
"
);
defineProperty
(
"
size
"
,
1
);
defineProperty
(
"
dragging
"
,
false
);
...
...
@@ -459,6 +460,28 @@ THREE.TransformControls = function ( camera, domElement ) {
object
.
scale
.
copy
(
scaleStart
).
multiply
(
_tempVector2
);
if
(
this
.
scaleSnap
)
{
if
(
axis
.
search
(
'
X
'
)
!==
-
1
)
{
object
.
scale
.
x
=
Math
.
round
(
object
.
scale
.
x
/
this
.
scaleSnap
)
*
this
.
scaleSnap
||
this
.
scaleSnap
;
}
if
(
axis
.
search
(
'
Y
'
)
!==
-
1
)
{
object
.
scale
.
y
=
Math
.
round
(
object
.
scale
.
y
/
this
.
scaleSnap
)
*
this
.
scaleSnap
||
this
.
scaleSnap
;
}
if
(
axis
.
search
(
'
Z
'
)
!==
-
1
)
{
object
.
scale
.
z
=
Math
.
round
(
object
.
scale
.
z
/
this
.
scaleSnap
)
*
this
.
scaleSnap
||
this
.
scaleSnap
;
}
}
}
else
if
(
mode
===
'
rotate
'
)
{
offset
.
copy
(
pointEnd
).
sub
(
pointStart
);
...
...
@@ -633,6 +656,12 @@ THREE.TransformControls = function ( camera, domElement ) {
};
this
.
setScaleSnap
=
function
(
scaleSnap
)
{
scope
.
scaleSnap
=
scaleSnap
;
};
this
.
setSize
=
function
(
size
)
{
scope
.
size
=
size
;
...
...
examples/jsm/controls/TransformControls.js
浏览文件 @
1ac9c9be
...
...
@@ -57,6 +57,7 @@ var TransformControls = function ( camera, domElement ) {
defineProperty
(
"
mode
"
,
"
translate
"
);
defineProperty
(
"
translationSnap
"
,
null
);
defineProperty
(
"
rotationSnap
"
,
null
);
defineProperty
(
"
scaleSnap
"
,
null
);
defineProperty
(
"
space
"
,
"
world
"
);
defineProperty
(
"
size
"
,
1
);
defineProperty
(
"
dragging
"
,
false
);
...
...
@@ -482,6 +483,28 @@ var TransformControls = function ( camera, domElement ) {
object
.
scale
.
copy
(
scaleStart
).
multiply
(
_tempVector2
);
if
(
this
.
scaleSnap
)
{
if
(
axis
.
search
(
'
X
'
)
!==
-
1
)
{
object
.
scale
.
x
=
Math
.
round
(
object
.
scale
.
x
/
this
.
scaleSnap
)
*
this
.
scaleSnap
||
this
.
scaleSnap
;
}
if
(
axis
.
search
(
'
Y
'
)
!==
-
1
)
{
object
.
scale
.
y
=
Math
.
round
(
object
.
scale
.
y
/
this
.
scaleSnap
)
*
this
.
scaleSnap
||
this
.
scaleSnap
;
}
if
(
axis
.
search
(
'
Z
'
)
!==
-
1
)
{
object
.
scale
.
z
=
Math
.
round
(
object
.
scale
.
z
/
this
.
scaleSnap
)
*
this
.
scaleSnap
||
this
.
scaleSnap
;
}
}
}
else
if
(
mode
===
'
rotate
'
)
{
offset
.
copy
(
pointEnd
).
sub
(
pointStart
);
...
...
@@ -656,6 +679,12 @@ var TransformControls = function ( camera, domElement ) {
};
this
.
setScaleSnap
=
function
(
scaleSnap
)
{
scope
.
scaleSnap
=
scaleSnap
;
};
this
.
setSize
=
function
(
size
)
{
scope
.
size
=
size
;
...
...
examples/misc_controls_transform.html
浏览文件 @
1ac9c9be
...
...
@@ -84,6 +84,7 @@
case
17
:
// Ctrl
control
.
setTranslationSnap
(
100
);
control
.
setRotationSnap
(
THREE
.
Math
.
degToRad
(
15
)
);
control
.
setScaleSnap
(
0.25
);
break
;
case
87
:
// W
...
...
@@ -135,6 +136,7 @@
case
17
:
// Ctrl
control
.
setTranslationSnap
(
null
);
control
.
setRotationSnap
(
null
);
control
.
setScaleSnap
(
null
);
break
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录