我正在研究一个试图在3D中创建一个不可能的立方体的图形项目.一个不可能的立方体看起来像:

这背后的技巧是"切割"的两个边缘和从特定角度拍摄的图片,以给出不可能性的错觉.

好吧,我试图制作这个但不是静态图像,我希望能够动画它(旋转)保持不可能的属性.
我已设法在搅拌机中制作一个立方体,如下面的屏幕截图所示:

我想听听你们如何达到预期效果的建议.一个想法是使边缘部分(在其后面具有边缘(或更多))透明,以便每次摄像机角度改变时,透明贴片移动.
它不必专门在Blender中完成,因此欢迎任何OpenGL等解决方案.
为了让您了解最终结果应该是什么,这是这样一个插图的链接:
我的任务是编写MATLAB代码以生成一个由4部分组成的徽标,如屏幕截图所示.左上角应为黑色,右下角应为白色.其他两种颜色应由程序随机选择.

我采取了以下方法:
clear all
clc
close all
x = [1 4 1 4 1 6.5 7 7];
y = [3 4 5.5 5 8 7 8 3];
fill(x,y,'k')
Run Code Online (Sandbox Code Playgroud)
这会产生左上角的黑色部分.我想知道这种方法是否足够好,如果是,下一步是什么.我想将这两个变量存储在一个形状对象或其他东西(我不熟悉Matlab)并以某种方式旋转它.你能帮帮我吗?
我正在 QtCreator 中开发一个 gui 应用程序,gui 应该做的是:
单击“打开图像”按钮后,我应该能够浏览我的计算机以查找图像文件并将其加载到 ui 窗口中。
到目前为止,窗口是这样的:

带有类似 Windows 的浏览器的弹出对话框会很棒。
我没有展示我的任何代码,因为基本上它是我创建 Gui 应用程序时生成的初始源文件。
编辑:
通过将动作侦听器应用于按钮并使用以下代码块,我设法创建了一个对话框以从计算机获取图像:
void MainWindow::on_pushButton_clicked()
{
//MyDialog mDialog;
//mDialog.setModal(true);
//mDialog.exec();
QFileDialog dialog(this);
dialog.setNameFilter(tr("Images (*.png *.xpm *.jpg)"));
dialog.setViewMode(QFileDialog::Detail);
QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),
"C:/",
tr("Images (*.png *.xpm *.jpg)"));
}
Run Code Online (Sandbox Code Playgroud)
我现在试图在窗口右侧显示我选择的图像。有什么建议?
我需要创建一个正方形螺旋(大小相同),在完成 360 度循环后,它会改变颜色。例如,我想做一个三色螺旋。第一部分可能是蓝色的,在第一个周期之后,方块变成绿色,最后变成红色。这是我正在寻找的内容的可视化:

到目前为止我的代码(除了 JPanel 之外)如下:
import javax.media.opengl.GL;
import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLEventListener;
import javax.media.opengl.glu.GLU;
public class SecondGLEventListener implements GLEventListener {
/**
* Interface to the GLU library.
*/
private GLU glu;
/**
* Take care of initialization here.
*/
public void init(GLAutoDrawable drawable) {
GL gl = drawable.getGL();
glu = new GLU();
gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
gl.glViewport(0, 0, 500, 300);
gl.glMatrixMode(GL.GL_PROJECTION);
gl.glLoadIdentity();
glu.gluOrtho2D(0.0, 500.0, 0.0, 300.0);
}
/**
* Take care of drawing here.
*/
public void display(GLAutoDrawable drawable)
{ …Run Code Online (Sandbox Code Playgroud) 我想做的是从键盘接收一个字符,例如“a”,然后水平翻转该字母并将其打印出来。我到处搜索翻转图像,但似乎没有任何方法可以做到这一点。谁能帮我?顺便说一句,我正在尝试用 Java 来做到这一点。非常感谢,如果您需要更多详细信息,请在评论部分询问我。
ps 我无法向您显示所需的输出,因为我在网上找不到任何翻转的字符。这个概念与图像水平翻转相同,但我想对字符执行此操作。