java - 图像在 3D 空间中绕 Y 轴旋转

标签 java image graphics java-3d image-rotation

我有一个 BufferedImage,我想在 Java 中使用 theta 角而不是仿射变换围绕 Y 轴旋转图像(图片)。旋转将如下图所示(矩形将是图像)。

我可以通过旋转图像的每个像素并绘制图像来做到这一点。因为我必须旋转很多图像,所以我认为这不是最好的主意。

我将如何进行这种转换?

感谢您的帮助。

enter image description here

最佳答案

通常,您需要找到从输出像素空间到输入像素空间的逆变换。然后迭代输出像素,将它们转换到输入空间并对输入图像进行采样。 Wikipedia entry on Perspective Projection显示如何为 Y 轴制作旋转矩阵。如果您所做的只是绕 Y 轴旋转,您可以简单地反转角度以获得逆变换(假设您的图像以原点为中心)。

关于java - 图像在 3D 空间中绕 Y 轴旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13741571/

相关文章:

Java:图像加载器库(JPG、PNG、GIF、TIFF、TGA)

python - 如何简化这个很长的 if 语句?

c++ - 两点之间的曲线怎么画? OpenGL

java - Guava 基于策略的缓存

java - 如何在不依赖异常的情况下知道是否使用 log4j 正确发送了 syslog 消息

java - 我的类中的removeListing()方法抛出空指针异常

java - WorkManager 中的 Worker 和 ListenableWorker 有什么区别?

javascript - 具有内部缩放功能的 css 图片库

javascript - 褪色图像/流畅的网站使用

java - OpenGL 正确附加纹理