2020.10.22 第19课 图形编程终结篇
一、贴图之图片坐标
1.窗口、图片:
横向:X轴 纵向:Y轴
2.
putimage(0, 0, 400, 200, &mm, 200, 400);
窗口坐标 显示图片的宽和高 图片坐标
#include <graphics.h>
int main()
{
initgraph(800, 800);
IMAGE mm;
loadimage(&mm, "mm.jpg", 800, 800);
//putimage(0, 0, &mm);
putimage(0, 0, 400, 200, &mm, 200, 400);
while (1);
closegraph();
return 0;
}
二、拼图游戏
#include <graphics.h>
#include <time.h>
#define ROW 4
#define COLS 4
int map[ROW][COLS] =
{
0,1,2,3,
4,5,6,7,
8,9,10,11,
12,13,15,14
};
IMAGE mm;
IMAGE white;
struct position
{
int i;
int j;
}pos = {
3,3};
HWND hwnd = NULL;
//随机切割: 就是随机用0-14 初始化二维数组即可,不能重复!
void initMap()
{
//第一步:
int array[15] = {
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14 };
int Length = 15;
//第二步:
for (int i = 0; i < ROW; i++)
{
for (int j = 0; j < COLS; j++)
{
if (i == 3 && j == 3)
{
map[3][3] = 15;
return;
}
int pos = rand() % Length;
map[i][j] = array[pos];
//怎么避免重复?
for (int k = pos; k < Length-1; k++)
{
array[k] = array[k + 1];
}
Length--;
}
}
}
void loadResouce()
{
loadimage