废话不多说了,直接贴代码
/**
* // camera target:We are looking toward the distance
* @param tx, the camera target x
* @param ty, the camera target y
* @param tz, the camera target z
* // Set our up vector. This is where our head would be pointing were we holding the camera.for example, (0,1,0),we'll toward the up position to rotate
* @param upX
* @param upY
* @param upZ
* @param angle
* @return
*/
private float[] roateAnyAngle(float tx, float ty, float tz, float upX, float upY, float upZ, float angle){
float[] nt = new float[3];
double x = tx;
double y = ty;
double z = tz;
double u = upX;
double v = upY;
double w = upZ;
double ux = u * x;
double uy = u * y;
double uz = u * z;
double vx = v * x;
double vy = v * y;
double vz = v * z;
double wx = w * x;
double wy = w * y;
double wz = w * z;
double sa = Math.sin(angle);
double ca = Math.cos(angle);
nt[0] = (float) (u * (ux + vy + wz)
+ (x * (v * v + w * w) - u * (vy + wz)) * ca + (-wy + vz) * sa);
nt[1] = (float) (v * (ux + vy + wz)
+ (y * (u * u + w * w) - v * (ux + wz)) * ca + (wx - uz) * sa);
nt[2] = (float) (w * (ux + vy + wz)
+ (z * (u * u + v * v) - w * (ux + vy)) * ca + (-vx + uy) * sa);
return nt;
}
分享到:
相关推荐
学习笔记OpenGL:VisualStudio2022配置OpenGL环境学习笔记OpenGL:VisualStudio2022配置OpenGL环境学习笔记OpenGL:VisualStudio2022配置OpenGL环境学习笔记OpenGL:VisualStudio2022配置OpenGL环境学习笔记OpenGL:...
OpenGL:雪花飘落代码
Title: Computer Graphics Through OpenGL: From Theory to Experiments, 3rd Edition--true PDF Author: Sumanta Guha Length: 760 pages Edition: 3 Language: English Publisher: Chapman and Hall/CRC ...
内容概要:本文介绍了OpenGL这一开源、高效的应用程序编程接口及其在不同领域的应用。首先概述了它的特点,包括跨平台性、性能优势、灵活性及广泛的社区支持。接着解析了OpenGL由OpenGL库、OpenGL实用库和OpenGL辅助...
opengl
opengl
详细介绍参考我的博客
画一个白色的三角形,详见我的博客
OpenGL:OpenGL代码以及THECHERNO
OpenGL,全称OpenGL图形库,是用于渲染2D和3D图形的应用编程接口(API)。这个"NeHeGL.rar"中的示例程序演示了如何在OpenGL环境中实现三维几何图形的旋转,这对于理解3D图形学的基本概念至关重要。NeHe教程是初学者...
ForkerRenderer:基于CPU的软件光栅化器,微型OpenGL :panda: 实现基于CPU的软件光栅化器,该光栅化器可模拟OpenGL行为,而...# Usage: <filename> <rotate>(optional) (optional) ./ForkerRenderer ../obj/diablo_pos
详细介绍见我的博客
NEHE的OPENGL教程 第42课 多视窗口… NEHE的OPENGL教程 第42课 多视窗口… NeHe的OPENGL中文教程:第41课 体… NeHe的OPENGL中文教程:第40课 绳… NeHe的OPENGL中文教程:第39课 物… NeHe的OPENGL中文教程:...
opengl:Crystal的OpenGL绑定
OpenGL:在OpenGL上的分配
Includes Complete Coverage of the OpenGL® Shading Language! Today’s OpenGL software interface enables programmers to produce extraordinarily high-quality computer-generated images and interactive ...
本教程"罗大柚OpenGL_ES教程系列LessonThree_Rotate(Part 1)"聚焦于如何在iOS应用中实现物体的旋转功能。在移动设备上进行3D图形编程时,旋转是至关重要的元素,它允许用户以各种角度查看场景或对象。 在Part 1中,...
maze-opengl:OpenGL C ++中的迷宫
docker-opengl:多队列Docker-Mesa 3D OpenGL软件渲染(Gallium)-LLVMpipe和OpenSWR驱动程序