这个是俄罗斯方块中的j源代码,用来表示方块的个种形态的,但这是如何表示的,这些十六进制的数是什么意

问题描述:

这个是俄罗斯方块中的j源代码,用来表示方块的个种形态的,但这是如何表示的,这些十六进制的数是什么意
这个是俄罗斯方块中的java源代码,用来表示方块的个种形态的,
但这是如何表示的,
这些十六进制的数是什么意思?是怎样来体现方块的?
public final static int[][] STYLES = {// 共28种状态
{0x0f00,0x4444,0x0f00,0x4444},// 长条型的四种状态
{0x04e0,0x0464,0x00e4,0x04c4},// 'T'型的四种状态
{0x4620,0x6c00,0x4620,0x6c00},// 反'Z'型的四种状态
{0x2640,0xc600,0x2640,0xc600},// 'Z'型的四种状态
{0x6220,0x1700,0x2230,0x0740},// '7'型的四种状态
{0x6440,0x0e20,0x44c0,0x8e00},// 反'7'型的四种状态
{0x0660,0x0660,0x0660,0x0660},// 方块的四种状态
};
1个回答 分类:综合 2014-12-02

问题解答:

我来补答
其实就是点阵图
一个0x0000的4位16进制数换算成2进制有16位,理解为一个4*4的矩阵
0000
0000
0000
0000
拿长条形的四种状态举例
0x0f00 把4位16进制数按每位换算成一行4位2进制数的结果矩阵是
0000
1111
0000
0000
相应的0x4444是
0100
0100
0100
0100
将0看作空的,1看作方块的块,就可以看出正好是长条形在4*4空间中的横竖切换(长条形虽然有四种朝向但其实是两两重复的).
下面的以此类推,比如T型的第一种形态0x04e0就是
0000
0100
1110
0000
 
 
展开全文阅读
剩余:2000