我正在做一个程序来根据用户的输入(用户在 SWT GUI 上选择图像)创建具有不同图像纹理的模具(立方体)。
一旦用户选择了图像,它就可以在一个单独的对话框中显示骰子,并对其执行一些旋转操作(请参阅,在执行小旋转以查看屏幕截图中的三个面之后)。
见截图: http: //pastebin.com/XqJfXL6i
我的问题从这里开始:我想保存画布的内容(旋转后具有当前形式背景的骰子)。我一直在搜索几个代码,我认为我的问题是因为我当前的画布是“屏幕上”画布,我需要一个屏幕外画布,这样可以保存内容。
我当前的代码如下:
而且..这里开始了问题。它抛出这个异常:
java.lang.IllegalStateException:Canvas3D:不在屏幕外模式
具体来说,它在这一行失败了:
ImageComponent2D ic2d = canvas.getOffScreenBuffer();
如您所见,有几行评论是我之前尝试过的,但它们也没有起作用。
关于如何做的任何线索?
谢谢!