适用于3D外观2D绘图的转换(Java)

时间:2010-11-09 20:05:59

标签: java graphics 3d 2d

我正在寻找适当的转换,使2D图像看起来像3D绘图。如果我在一张纸上绘制一条平行线的“道路”,然后将页面顶部倾斜远离你,那么道路似乎消失在远处就是我正在寻找的。

我正在使用Java并且想要一个合适的API /库。我不相信“AffineTransformation”能够实现这一目标。

3 个答案:

答案 0 :(得分:3)

你不需要AffineTransformation,因为它总会保留平行线,这不是你想要的。

幸运的是,Java Advanced Imaging API(javax.media.jai)完全符合您的要求,形式为PerspectiveTransform类(单击该文档的链接)。

答案 1 :(得分:0)

我不能给你一个简单的答案,但我可以告诉你,你想要画的是两点观点。有了这些信息,您可能会找到一个可以获取3D对象并生成透视图的库。

这是我之前看到的一个简单的Java小程序,它展示了两点观点: http://mathforum.org/workshops/sum98/participants/sanders/TryPersp.gsp.html

希望这有帮助!

答案 2 :(得分:0)

你的问题不是微不足道的,但肯定是可以解决的。您可以拍摄任何四边图像并应用3D透视变换。只是不要指望它是一个单行。

我现在在家(在睡觉前检查SO,当然:D),但我几乎100%确定这是我用来在C#中找到相应代码的网站:

http://ryoushin.com/cmerighi/en-us/61,2007-10-29/Image_Distortion_Enhancements.aspx

将它移植到java应该相当简单。如果链接没有解决您的答案,请告诉我,我将在明天编辑我的答案并提供更多信息。