2013-03-12 61 views
3

特定情况下无法控制的摄像机移动。我使用鼠标滚轮来控制缩放(非常标准)。 Macbook触控板滚动工作与两个手指接触和平行,垂直运动。当你的手指分开时,我还没有尝试使用缩放功能。无论用户手指移动多远,在触控板上使用滚动功能都会使场景“无限”地缩小。有关MacBook Pro触控板滚动功能的TrackballControls.js问题

这里的故障:

  • 使用three.js所的three.js所> TrackballControls.js

  • 版本似乎无关紧要。

  • 浏览器似乎略有不同。问题在Chrome中更加恶化,在Firefox中更稳定,但仍然存在。

  • 灵敏度没有太大的差别。以下两个示例使用不同的ZoomSpeed常量。

例子问题出在哪里可以看到(的MacBook当然需要):

谢谢您的时间!

添加编辑23:00EDT 13年12月3日到指定的问题:

对不起,我没有具体说明。在每次访问时,MacBook触控板的滚动功能可能被意外或有目的地用于使用户无用。刷新是重置问题的唯一方法。解决这个问题的最好方法是什么?检测操作系统和禁用滚动是一个选项,但也是一个荒谬的。这是使用TrackballControls.js的任何网站的可访问性问题。其他开发者如何解决这个问题?有任何想法吗?这是我的问题。感谢您的时间!

+1

你的问题是什么? – WestLangley 2013-03-12 22:22:25

+0

对不起,我没有指定。在每次访问时,MacBook触控板的滚动功能可能被意外或有目的地用于使用户无用。刷新是重置问题的唯一方法。解决这个问题的最好方法是什么?检测操作系统和禁用滚动是一个选项,但也是一个荒谬的。这是使用TrackballControls.js的任何网站的可访问性问题。其他开发者如何解决这个问题?有任何想法吗?这是我的问题。感谢您的时间! – ChrisTalbot 2013-03-13 03:00:29

+1

你是说在使用'TrackballControls'时,在MacBook触控板上滚动过于敏感? – WestLangley 2013-03-13 03:34:43

回答

2

我遇到了同样的问题。更改代码的最后一行在TrackballControl.js鼠标滚轮事件处理程序:

_zoomStart.y += (1/delta) * 0.05; 

这样:

_zoomStart.y += delta * 0.01; 

如果您的触控板是像我这样的东西,它触发鼠标滚轮事件多次,但在较小的增量。由于鼠标轮增量被反转,较小的增量变成了较大的增量,并且由于其中增加了更多增量,变焦被指数地调整得更多。我不确定它为什么会像原始代码那样反转。

+0

感谢分享!当我再次访问MacBook时,我必须检查它。很快... 再次感谢! – ChrisTalbot 2013-04-18 02:49:59

+0

现在它已被修复为当前版本的TrackballControls.js: https://github.com/mrdoob/three.js/blob/master/examples/js/controls/TrackballControls.js 您可以在此处进行测试: http://mrdoob.github.io/three.js/examples/misc_controls_trackball.html – protometa 2013-04-19 00:49:30