|
地址来源
效果:
旋转部分的代码,详情需要大家看上面的帖子地址:
- void RotatingCube () {
- const int Delta = 9; // Approximation to 1 degree in radians * 2^9
- xOrigin = 32; yOrigin = 24;
- int x = 0, y = 22<<9;
- for (;;) {
- ClearBuffer();
- int x9 = x>>9, y9 = y>>9, x10 = x>>10, y10 = y>>10;
- // Top
- MoveTo(x9, y10 + 12); DrawTo(y9, -x10 + 12);
- DrawTo(-x9, -y10 + 12); DrawTo(-y9, x10 + 12);
- DrawTo(x9, y10 + 12); DrawTo(x9, y10 - 12);
- // Bottom
- DrawTo(y9, -x10 - 12); DrawTo(-x9, -y10 - 12);
- DrawTo(-y9, x10 - 12); DrawTo(x9, y10 - 12);
- // Sides
- MoveTo(y9, -x10 + 12); DrawTo(y9, -x10 - 12);
- MoveTo(-x9, -y10 + 12); DrawTo(-x9, -y10 - 12);
- MoveTo(-y9, x10 + 12); DrawTo(-y9, x10 - 12);
- // Rotate cube
- x = x + (y9 * Delta);
- y = y - ((x>>9) * Delta);
- DisplayBuffer();
- }
- }
复制代码
|
|