Image rotation in 3D space around Y axis

2019-05-27 09:35发布

I have a BufferedImage and I want to rotate the image (Picture) around the Y axis in Java with theta angle not affine transform. The rotation will be like the image below (the rectangle will be an image).

I can do this by rotating each pixel of the image and drawing the image. Because I have to rotate a lot of images, I don't think this is the best idea.

How I will do this transformation?

Thanks for your help.

enter image description here

1条回答
做个烂人
2楼-- · 2019-05-27 10:20

Generally, you'll want to find the inverse transform from your output pixel space into the input pixel's space. You then iterate over the output pixels, transforming them into the input space and sampling the input image. The Wikipedia entry on Perspective Projection shows how to make a rotation matrix for the Y axis. If all you're doing is rotating around the Y axis, you can simply reverse the angle to get the inverse transformation (assuming your image is centered at the origin).

查看更多
登录 后发表回答