2012-11-25 40 views
1

我有一个问题OpenGL。以下是一些有用的数据:用OpenGL旋转圆柱多少?

  • 蓝色点是圆柱体,它正在寻找屏幕上的绿色参考点 。
  • 绿色点是第一参考点
  • 红点是第二 参考点。

我会改变的参考点与键盘按键H,J,K,和 -by方式VIM也使用这些键进行导航。

其他有用的信息: 首先,我从绿色变为参考点为红色,通过改变centerxcenterygluLookAtcenterz。 其次,我想旋转圆柱体,以便它可以看到新的参考点。

我该旋转多少气缸才能看到参考点?

http://www.arefs.org/projects/images/triangle-rock.png

+0

如果你有一个表单,或者您可以使用#1的方式有任何问题,请阅读[常见问题](http://stackoverflow.com/faq) – JeanValjean

+0

如何一个圆筒看一个点? – Max

+0

@Max气缸的顶部正对着参考点。并且,相机位置是固定的。 – jques

回答

1

如果我明白你的问题吧,

让老基准点和眼睛之间的载体是V1

让新的参考点和眼睛之间的矢量是V2

您可以找到这些矢量之间的角度,这也是旋转的角度即通过:

θ = arccos((V1 dot V2)/|V1||V2|) 

enter image description here