【发布时间】:2015-02-24 13:12:21
【问题描述】:
另一个 ThreeJS 问题: 如何使悬停(相交)的对象平滑到定义的大小?我当前的代码是
INTERSECTED.scale.x *= 1.5;
INTERSECTED.scale.y *= 1.5;
但这只能像开/关一样工作。
编辑:我的解决方案(使用 tweenJS)
当 mouseOver 时,我将元素放大到 200%:
function scaleUp(){
new TWEEN.Tween( INTERSECTED.scale ).to( {
x: 2,
y: 2
}, 350 ).easing( TWEEN.Easing.Bounce.EaseOut).start();
}
当 mouseOut 时,我将元素缩小到 100%:
function scaleDown(){
new TWEEN.Tween( INTERSECTED.scale ).to( {
x: 1,
y: 1
}, 350 ).easing( TWEEN.Easing.Bounce.EaseOut).start();
}
最后我调用了鼠标函数中的函数。
if (intersects[0].object != INTERSECTED)
scaleUp();
else
scaleDown();
就是这样。我认为对 UI 非常有用。
【问题讨论】:
标签: object three.js scale onmouseover