【问题标题】:Accurate pinch zooming in 3D精确的 3D 缩放缩放
【发布时间】:2013-12-16 10:40:30
【问题描述】:

我正在尝试在触摸设备上实现 3D 场景中的精确捏合缩放。 3D 场景只是一个平面,我有一个透视相机斜向下对准它。如这里,例如:

http://imggle.com/wp-content/uploads/2013/07/google-earth-images-64.jpg

当用户开始捏合手势时,我将屏幕坐标投射到他的手指下 进入平面上的世界坐标。

现在我该如何解决相机位置问题,以便无论用户将手指移动到哪里,相同的世界坐标都将保持在“他的指尖”——即投影到屏幕空间中的特定点?

非常感谢任何想法。

【问题讨论】:

    标签: ios math 3d projection pinchzoom


    【解决方案1】:

    刚刚在 OpenGL ES 应用程序上实现了非常相似的功能,我建议使用平移手势识别器,然后根据平移中的像素数更新模型视图矩阵。

    您需要根据屏幕上的一个像素与您的 OpenGL ES 场景中的一个像素大致相同的点校准您的平移(即,您看到像拖动一样)。如果您允许用户放大和缩小,这很容易做到,但如果不是,您可能需要在您的应用程序中临时实现此功能。

    【讨论】:

    • 谢谢,但我知道如何检测平移和捏合,以及如何处理平移和基本缩放。我正在寻找的是一种缩放解决方案,它真的让你感觉就像你在用手指操纵一个真实的物体。例如,在场景的较远部分执行的捏拉放大手势比靠近相机执行的类似手势需要放大更多。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 2011-07-06
    相关资源
    最近更新 更多