嵌入式存档

时间:2019-06-12
本文章向大家介绍嵌入式存档,主要包括嵌入式存档使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

void rotBlock(struct Block *block)

{

    switch (block->blockType) {

        case 0:

            if(block->rotType == 0 || block->rotType == 2) // 0->1, 2->3

            {

                block->rotType = (block->rotType + 1) % 4;

                block->firstXPel  += 2*UNIT;

                block->firstYPel  -= 30;

                block->leftPel[0] = 0;      block->topPel[0] = 0;

                block->leftPel[1] = 0;      block->topPel[1] = UNIT;

                block->leftPel[2] = 0;      block->topPel[2] = 2*UNIT;

                block->leftPel[3] = 0;      block->topPel[3] = 3*UNIT;

            }

            else if(block->rotType == 1 || block->rotType == 3) // 1->2, 3->0

            {

                block->rotType = (block->rotType + 1) % 4;

                block->firstXPel  -= 2*UNIT;

                block->firstYPel  += UNIT;

                block->leftPel[0] = 0;      block->topPel[0] = 0;

                block->leftPel[1] = UNIT;   block->topPel[1] = 0;

                block->leftPel[2] = UNIT*2; block->topPel[2] = 0;

                block->leftPel[3] = UNIT*3; block->topPel[3] = 0;

            }

            break;

        case 1:

            if(block->rotType == 0) // 0->1

            {

                block->rotType = 1;

                block->firstXPel  += UNIT;

                block->firstYPel  -= UNIT;

                block->leftPel[0] = 0;      block->topPel[0] = 0;

                block->leftPel[1] = UNIT;   block->topPel[1] = 0;

                block->leftPel[2] = 0;      block->topPel[2] = UNIT;

                block->leftPel[3] = 0;      block->topPel[3] = UNIT*2;

            }

            else if(block->rotType == 1) // 1->2

            {

                block->rotType = 2;

                block->firstXPel -= UNIT;

                block->firstYPel += UNIT;

                block->leftPel[0] = 0;      block->topPel[0] = 0;

                block->leftPel[1] = UNIT;   block->topPel[1] = 0;

                block->leftPel[2] = 0;      block->topPel[2] = UNIT;

                block->leftPel[3] = 0;      block->topPel[3] = UNIT*2;

            }

        default:

            break;

    }

}

原文地址:https://www.cnblogs.com/HazelNut/p/11008916.html