Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
c3b2fd0d
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,发现更多精彩内容 >>
提交
c3b2fd0d
编写于
6月 09, 2012
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
GUI: FloatNumber is now a editable <input>.
上级
cd750d4e
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
34 addition
and
101 deletion
+34
-101
gui/js/UI.js
gui/js/UI.js
+24
-89
gui/js/ui/Sidebar.Properties.Material.js
gui/js/ui/Sidebar.Properties.Material.js
+1
-3
gui/js/ui/Sidebar.Properties.Object3D.js
gui/js/ui/Sidebar.Properties.Object3D.js
+9
-9
未找到文件。
gui/js/UI.js
浏览文件 @
c3b2fd0d
...
...
@@ -198,7 +198,7 @@ UI.Panel = function ( position ) {
this
.
dom
=
document
.
createElement
(
'
div
'
);
this
.
dom
.
style
.
position
=
position
||
'
relative
'
;
this
.
dom
.
addEventListener
(
'
mousedown
'
,
function
(
event
)
{
event
.
preventDefault
()
},
false
);
//
this.dom.addEventListener( 'mousedown', function ( event ) { event.preventDefault() }, false );
return
this
;
};
...
...
@@ -243,99 +243,22 @@ UI.Text.prototype.setText = function ( value ) {
};
// IntNumber
UI
.
IntNumber
=
function
(
position
)
{
UI
.
Element
.
call
(
this
);
this
.
dom
=
document
.
createElement
(
'
span
'
);
this
.
dom
.
style
.
position
=
position
||
'
relative
'
;
this
.
dom
.
textContent
=
'
0.00
'
;
this
.
dom
.
style
.
marginTop
=
'
2px
'
;
this
.
dom
.
style
.
color
=
'
#0080f0
'
;
this
.
dom
.
style
.
fontSize
=
'
12px
'
;
this
.
dom
.
style
.
textDecoration
=
'
underline
'
;
this
.
onChangeCallback
=
null
;
var
scope
=
this
;
var
onMouseDownValue
,
onMouseDownScreenX
,
onMouseDownScreenY
;
var
onMouseDown
=
function
(
event
)
{
event
.
preventDefault
();
onMouseDownValue
=
parseInt
(
scope
.
dom
.
textContent
);
onMouseDownScreenX
=
event
.
screenX
;
onMouseDownScreenY
=
event
.
screenY
;
document
.
addEventListener
(
'
mousemove
'
,
onMouseMove
,
false
);
document
.
addEventListener
(
'
mouseup
'
,
onMouseUp
,
false
);
}
var
onMouseMove
=
function
(
event
)
{
var
dx
=
event
.
screenX
-
onMouseDownScreenX
;
var
dy
=
event
.
screenY
-
onMouseDownScreenY
;
scope
.
dom
.
textContent
=
(
onMouseDownValue
+
(
dx
-
dy
)
/
(
event
.
shiftKey
?
10
:
100
)
).
toFixed
(
0
);
scope
.
onChangeCallback
();
}
var
onMouseUp
=
function
(
event
)
{
document
.
removeEventListener
(
'
mousemove
'
,
onMouseMove
,
false
);
document
.
removeEventListener
(
'
mouseup
'
,
onMouseUp
,
false
);
}
this
.
dom
.
addEventListener
(
'
mousedown
'
,
onMouseDown
,
false
);
return
this
;
};
UI
.
IntNumber
.
prototype
=
new
UI
.
Element
();
UI
.
IntNumber
.
prototype
.
constructor
=
UI
.
IntNumber
;
UI
.
IntNumber
.
prototype
.
getValue
=
function
()
{
return
parseInt
(
this
.
dom
.
textContent
);
};
UI
.
IntNumber
.
prototype
.
setValue
=
function
(
value
)
{
this
.
dom
.
textContent
=
value
.
toFixed
(
0
);
return
this
;
};
UI
.
IntNumber
.
prototype
.
onChange
=
function
(
callback
)
{
this
.
onChangeCallback
=
callback
;
return
this
;
};
// FloatNumber
UI
.
FloatNumber
=
function
(
position
)
{
UI
.
Element
.
call
(
this
);
this
.
dom
=
document
.
createElement
(
'
span
'
);
this
.
dom
=
document
.
createElement
(
'
input
'
);
this
.
dom
.
style
.
position
=
position
||
'
relative
'
;
this
.
dom
.
textContent
=
'
0.00
'
;
this
.
dom
.
style
.
marginTop
=
'
2px
'
;
this
.
dom
.
style
.
marginTop
=
'
0px
'
;
this
.
dom
.
style
.
color
=
'
#0080f0
'
;
this
.
dom
.
style
.
fontSize
=
'
12px
'
;
this
.
dom
.
style
.
textDecoration
=
'
underline
'
;
this
.
dom
.
style
.
backgroundColor
=
'
transparent
'
;
this
.
dom
.
style
.
border
=
'
0px
'
;
this
.
dom
.
value
=
'
0.00
'
;
this
.
min
=
-
Infinity
;
this
.
max
=
Infinity
;
...
...
@@ -347,9 +270,9 @@ UI.FloatNumber = function ( position ) {
var
onMouseDown
=
function
(
event
)
{
event
.
preventDefault
();
//
event.preventDefault();
onMouseDownValue
=
parseFloat
(
scope
.
dom
.
textContent
);
onMouseDownValue
=
parseFloat
(
scope
.
dom
.
value
);
onMouseDownScreenX
=
event
.
screenX
;
onMouseDownScreenY
=
event
.
screenY
;
...
...
@@ -365,7 +288,7 @@ UI.FloatNumber = function ( position ) {
var
number
=
onMouseDownValue
+
(
distance
/
amount
);
scope
.
dom
.
textContent
=
Math
.
min
(
scope
.
max
,
Math
.
max
(
scope
.
min
,
number
)
).
toFixed
(
2
);
scope
.
dom
.
value
=
Math
.
min
(
scope
.
max
,
Math
.
max
(
scope
.
min
,
number
)
).
toFixed
(
2
);
scope
.
onChangeCallback
();
}
...
...
@@ -378,6 +301,18 @@ UI.FloatNumber = function ( position ) {
}
this
.
dom
.
addEventListener
(
'
mousedown
'
,
onMouseDown
,
false
);
this
.
dom
.
addEventListener
(
'
change
'
,
function
(
event
)
{
var
number
=
parseFloat
(
scope
.
dom
.
value
);
if
(
number
!==
NaN
)
{
scope
.
dom
.
value
=
number
.
toFixed
(
2
);
scope
.
onChangeCallback
();
}
},
false
);
return
this
;
...
...
@@ -388,13 +323,13 @@ UI.FloatNumber.prototype.constructor = UI.FloatNumber;
UI
.
FloatNumber
.
prototype
.
getValue
=
function
()
{
return
parseFloat
(
this
.
dom
.
textContent
);
return
parseFloat
(
this
.
dom
.
value
);
};
UI
.
FloatNumber
.
prototype
.
setValue
=
function
(
value
)
{
this
.
dom
.
textContent
=
value
.
toFixed
(
2
);
this
.
dom
.
value
=
value
.
toFixed
(
2
);
return
this
;
};
...
...
gui/js/ui/Sidebar.Properties.Material.js
浏览文件 @
c3b2fd0d
...
...
@@ -27,9 +27,7 @@ Sidebar.Properties.Material = function ( signals ) {
container
.
add
(
new
UI
.
HorizontalRule
()
);
container
.
add
(
new
UI
.
Text
().
setText
(
'
Opacity
'
).
setColor
(
'
#666
'
)
);
var
materialOpacity
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
90px
'
).
setFontSize
(
'
12px
'
);
materialOpacity
.
setMin
(
0
).
setMax
(
1
);
materialOpacity
.
onChange
(
update
);
var
materialOpacity
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
90px
'
).
setWidth
(
'
60px
'
).
setMin
(
0
).
setMax
(
1
).
onChange
(
update
);
container
.
add
(
materialOpacity
);
container
.
add
(
new
UI
.
HorizontalRule
()
);
...
...
gui/js/ui/Sidebar.Properties.Object3D.js
浏览文件 @
c3b2fd0d
...
...
@@ -12,23 +12,23 @@ Sidebar.Properties.Object3D = function ( signals ) {
container
.
add
(
new
UI
.
HorizontalRule
()
);
container
.
add
(
new
UI
.
Text
().
setText
(
'
Position
'
).
setColor
(
'
#666
'
)
);
var
positionX
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
90px
'
).
onChange
(
update
);
var
positionY
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
160px
'
).
onChange
(
update
);
var
positionZ
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
230px
'
).
onChange
(
update
);
var
positionX
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
90px
'
).
setWidth
(
'
60px
'
).
onChange
(
update
);
var
positionY
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
160px
'
).
setWidth
(
'
60px
'
).
onChange
(
update
);
var
positionZ
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
230px
'
).
setWidth
(
'
60px
'
).
onChange
(
update
);
container
.
add
(
positionX
,
positionY
,
positionZ
);
container
.
add
(
new
UI
.
HorizontalRule
()
);
container
.
add
(
new
UI
.
Text
().
setText
(
'
Rotation
'
).
setColor
(
'
#666
'
)
);
var
rotationX
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
90px
'
).
onChange
(
update
);
var
rotationY
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
160px
'
).
onChange
(
update
);
var
rotationZ
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
230px
'
).
onChange
(
update
);
var
rotationX
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
90px
'
).
setWidth
(
'
60px
'
).
onChange
(
update
);
var
rotationY
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
160px
'
).
setWidth
(
'
60px
'
).
onChange
(
update
);
var
rotationZ
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setLeft
(
'
230px
'
).
setWidth
(
'
60px
'
).
onChange
(
update
);
container
.
add
(
rotationX
,
rotationY
,
rotationZ
);
container
.
add
(
new
UI
.
HorizontalRule
()
);
container
.
add
(
new
UI
.
Text
().
setText
(
'
Scale
'
).
setColor
(
'
#666
'
)
);
var
scaleX
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setValue
(
1
).
setLeft
(
'
90px
'
).
onChange
(
update
);
var
scaleY
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setValue
(
1
).
setLeft
(
'
160px
'
).
onChange
(
update
);
var
scaleZ
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setValue
(
1
).
setLeft
(
'
230px
'
).
onChange
(
update
);
var
scaleX
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setValue
(
1
).
setLeft
(
'
90px
'
).
setWidth
(
'
60px
'
).
onChange
(
update
);
var
scaleY
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setValue
(
1
).
setLeft
(
'
160px
'
).
setWidth
(
'
60px
'
).
onChange
(
update
);
var
scaleZ
=
new
UI
.
FloatNumber
(
'
absolute
'
).
setValue
(
1
).
setLeft
(
'
230px
'
).
setWidth
(
'
60px
'
).
onChange
(
update
);
container
.
add
(
scaleX
,
scaleY
,
scaleZ
);
container
.
add
(
new
UI
.
Break
(),
new
UI
.
Break
(),
new
UI
.
Break
()
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录