- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在研究 2x2 魔方,并且在使用我的程序进行一侧旋转时遇到问题。立方体是正方形的二维数组。我只是想逆时针旋转 90 度。
这就是发生的事情 /image/78Xqg.jpg
我改变了颜色,这样我就可以看到特定的方 block 以及它们是如何变化的。我尝试更改顺序,一次移动特定的部分,看看问题是否只是重叠的部分(没有这样的运气)。
//square class
public class square implements Comparable {
int c;
private Rectangle r;
int xpos, ypos, width, height;
public square(int a, int x, int y) {
c = a;
xpos = x;
ypos = y;
r = new Rectangle(xpos, ypos, 50, 50);
}
//some unused methods
}
//inside the cube class
public class cube{
square[] temp = new square[4]
square[][] sq= new square[6][4]
//two for loops make squares and fills the sq 2d array
//the result is in the imgur link
public void turnVc(){
temp= sq[2];
sq[2][0]=temp[1];
sq[2][1]=temp[3];
sq[2][2]=temp[2];
sq[2][3]=temp[0];
}
}
我希望输出是逆时针旋转的原始图像。
最佳答案
tmp 是一个指针,它与 sq[2] 指针指向同一对象。这就是为什么当您更改 sq[2] 内容时,您也会更改 tmp 的原因。我认为不要分配“temp= sq[2];”您应该执行以下操作:
temp = new square[4];
for (int i = 0; i < 4; i++) {
temp[i] = sq[2][i];
}
编辑:我认为您可以做的一点改进是您不需要保存所有 sq[2] 数组,您只能保存第一项。我会这样做(tmp 现在是一个正方形,而不是一个数组):
tmp = sq[2][0];
sq[2][0] = sq[2][1];
sq[2][1] = sq[2][3];
sq[2][3] = sq[2][2];
sq[2][2] = tmp;
关于java - 瓷砖随着旋转从魔方中消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57032881/
1 需求实现 绘制魔方 中基于OpenGL ES 实现了魔方的绘制,实现较复杂,本文基于 Unity3D 实现了 2 ~ 10 阶魔方的整体旋转和局部旋转。 本文完整代码资源
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
这是一道算法题。我似乎无法找到一种方法来比较 rubix 立方体中 2 个立方体的相对位置。 我已经在我的程序中对所有 20 个立方体进行了编号。我正在使用他们的坐标系,但现在我想在相对位置对两个立方
如标题所示,我从 Eclipse 和 cmd 命令运行我的 Magic Square 程序时得到了不同的结果。 eclipse 没有意义。 (eclipse中“Wrong number...”这句话的
这与我问过的另一个问题有关,但现在我已经走得更远了。我正在尝试创建一个 Magic Square基于文本文件输入的程序。该程序将读取第一个方 block ,然后为其余方 block 打印出乱码。如果有
我是一名优秀的程序员,十分优秀!