⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 diyigepinbao.c

📁 计算机图形学
💻 C
📖 第 1 页 / 共 2 页
字号:
#include "graphics.h"
#include "math.h"
#include "mem.h"

#define pi 3.1415926
typedef struct {
            int x;
            int y;
            int z;
            int color;
            } point1;


void crossx(point1 *pot1,point1 *pot2,float x)
{

    pot2->y= cos(x)*pot1->y-sin(x)*pot1->z;
     pot2->z= sin(x)*pot1->y+cos(x)*pot1->z;
     pot2->x=pot1->x;
     pot2->color=pot1->color;



}
void crossy(point1 * pot1,point1 * pot2,float x)
{

  pot2->x=cos(x)* pot1->x+sin(x)*pot1->z;
   pot2->z=-sin(x)*pot1->x+cos(x)*pot1->z;
   pot2->y=pot1->y;
   pot2->color=pot1->color;

}
void crossz(point1 * pot1,point1 * pot2,float x)
{

   pot2->x=(int)(cos(x)*pot1->x-sin(x)*pot1->y);
   pot2->y=(int)(sin(x)*pot1->x+cos(x)*pot1->y);
   pot2->z=pot1->z;
   pot2->color=pot1->color;

}



void drawmat(char *mat,int matsize,int x,int y,int color,float x1,float y1,float z)
/*依次:字模指针、点阵大小、起始坐标(x,y)、颜色*/
{
  int i, j, k, n;point1 pot,pot1;
  n = (matsize - 1) / 8 + 1;
  for(j = 0; j < matsize; j++)
    for(i = 0; i < n; i++)
      for(k = 0;k < 8; k++)
        if(mat[j * n + i] & (0x80 >> k))  /*测试为1的位则显示*/
          {pot.x= i * 8 + k;
          pot.y= j;
          pot.z=0;
         crossx(&pot,&pot1, x1);
         crossy(&pot1,&pot, y1);
         crossz(&pot,&pot1, z);
        putpixel(pot.x+x+320,pot.y+240+y,color);}
}

char ji64S[]={
/* 以下是 '计' 的 64点阵宋体 字模,512 byte */
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x10,0x00,0x00,0x01,0x80,0x00,0x00,
  0x00,0x0C,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x0F,0x00,0x00,0x01,0xE0,0x00,0x00,
  0x00,0x07,0x80,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0xE0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x01,0xE0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0xF0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0xF0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0xF0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x60,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x80,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x01,0xC0,
  0x00,0x01,0x00,0x00,0x01,0xC0,0x03,0xE0,
  0x00,0x03,0x81,0xC0,0x01,0xC0,0x00,0x00,
  0x0F,0xFF,0xC0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x20,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x40,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x00,0x80,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x01,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x02,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x06,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x0C,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x18,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x30,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0xF0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x07,0xE0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x07,0xC0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x07,0xC0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x03,0x80,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x01,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};


char suan64S[]={
/* 以下是 '算' 的 64点阵宋体 字模,512 byte */
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x01,0xE0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x00,
  0x00,0x01,0x80,0x00,0x03,0x80,0x00,0x00,
  0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x80,
  0x00,0x03,0x00,0x06,0x06,0x00,0x01,0xC0,
  0x00,0x07,0x00,0x0F,0x0E,0x00,0x03,0xE0,
  0x00,0x06,0x08,0x00,0x0C,0x02,0x00,0x00,
  0x00,0x0C,0x04,0x00,0x18,0x01,0x00,0x00,
  0x00,0x0C,0x06,0x00,0x10,0x00,0xC0,0x00,
  0x00,0x18,0x03,0x00,0x20,0x00,0xE0,0x00,
  0x00,0x30,0x03,0x80,0x40,0x00,0x60,0x00,
  0x00,0x20,0x01,0x80,0x00,0x00,0x70,0x00,
  0x00,0x40,0x01,0x80,0x00,0x00,0x20,0x00,
  0x00,0x81,0x01,0x00,0x00,0x03,0x00,0x00,
  0x00,0x81,0xC0,0x00,0x00,0x07,0x80,0x00,
  0x01,0x01,0xC0,0x00,0x00,0x07,0x80,0x00,
  0x02,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x04,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC0,0x00,0x00,0x07,0x00,0x00,
  0x00,0x01,0xC1,0x80,0x01,0xC7,0x00,0x00,
  0x00,0x01,0xC1,0x80,0x01,0xC4,0x00,0x00,
  0x00,0x01,0x81,0x80,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x01,0x80,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x01,0x80,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x03,0x80,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x03,0x80,0x01,0xC0,0x00,0x80,
  0x00,0x00,0x03,0x80,0x01,0xC0,0x01,0xC0,
  0x00,0x00,0x03,0x80,0x01,0xC0,0x03,0xE0,
  0x0E,0x00,0x03,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x03,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x07,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x06,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x0E,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x0C,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x18,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0x30,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x00,0xE0,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x01,0x80,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x06,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x30,0x00,0x00,0x01,0xC0,0x00,0x00,
  0x00,0x80,0x00,0x00,0x01,0x80,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};
char ji164S[]={
/* 以下是 '机' 的 64点阵宋体 字模,512 byte */
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,
  0x00,0x03,0x80,0x00,0x00,0x00,0x00,0x00,
  0x00,0x03,0xC0,0x00,0x00,0x00,0x00,0x00,
  0x00,0x03,0x80,0x00,0x00,0x00,0x00,0x00,
  0x00,0x03,0x80,0x00,0x00,0x00,0x00,0x00,
  0x00,0x03,0x80,0x01,0x00,0x00,0x80,0x00,
  0x00,0x03,0x80,0x01,0x80,0x01,0xC0,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0xE0,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0xC0,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x03,0x81,0x81,0xC0,0x03,0x80,0x00,
  0x00,0x03,0x83,0xC1,0xC0,0x03,0x80,0x00,
  0x07,0xFF,0xFF,0xE1,0xC0,0x03,0x80,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x03,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x07,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x07,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x07,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x07,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x0F,0x80,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x0F,0xB0,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x0F,0x8C,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x1F,0x87,0x01,0xC0,0x03,0x80,0x00,
  0x00,0x1F,0x83,0xC1,0xC0,0x03,0x80,0x00,
  0x00,0x1B,0x81,0xC1,0xC0,0x03,0x80,0x00,
  0x00,0x3B,0x81,0xE1,0xC0,0x03,0x80,0x00,
  0x00,0x33,0x80,0xE1,0xC0,0x03,0x80,0x00,
  0x00,0x33,0x80,0x41,0xC0,0x03,0x80,0x00,
  0x00,0x63,0x80,0x01,0x80,0x03,0x80,0x00,
  0x00,0x63,0x80,0x01,0x80,0x03,0x80,0x00,
  0x00,0x43,0x80,0x01,0x80,0x03,0x80,0x00,
  0x00,0xC3,0x80,0x03,0x80,0x03,0x80,0x00,
  0x00,0x83,0x80,0x03,0x80,0x03,0x80,0x00,
  0x01,0x83,0x80,0x03,0x80,0x03,0x80,0x00,
  0x01,0x03,0x80,0x03,0x00,0x03,0x80,0x00,
  0x02,0x03,0x80,0x03,0x00,0x03,0x80,0x00,
  0x02,0x03,0x80,0x07,0x00,0x03,0x80,0x00,
  0x04,0x03,0x80,0x06,0x00,0x03,0x80,0x00,
  0x00,0x03,0x80,0x06,0x00,0x03,0x80,0x40,
  0x00,0x03,0x80,0x0E,0x00,0x03,0x80,0x40,
  0x10,0x03,0x80,0x0C,0x00,0x03,0x80,0x40,
  0x00,0x03,0x80,0x0C,0x00,0x03,0x80,0x40,
  0x00,0x03,0x80,0x18,0x00,0x03,0x80,0x40,
  0x00,0x03,0x80,0x18,0x00,0x03,0x80,0x60,
  0x00,0x03,0x80,0x30,0x00,0x03,0x80,0x60,
  0x00,0x03,0x80,0x20,0x00,0x03,0x80,0x60,
  0x00,0x03,0x80,0x40,0x00,0x03,0x80,0xF0,
  0x00,0x03,0x80,0x80,0x00,0x03,0xE1,0xF0,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -