橡皮筋画线法

虚构天堂

虚构天堂

2016-02-19 14:34

岁数大了,QQ也不闪了,微信也不响了,电话也不来了,但是图老师依旧坚持为大家推荐最精彩的内容,下面为大家精心准备的橡皮筋画线法,希望大家看完后能赶快学习起来。
在这里我用STRUCT和指向函数的指针定义结合实现了模拟鼠标类,并用它来写了橡皮筋画线法#include stdio.h
  #include graphics.h
  #include dos.h
  typedef struct
  {
   void (*Inits)();/*初始化鼠标驱动*/ 
   int  (*MButton)();/*按键位置与按键状态*/
   void (*MouseIco)();/*画鼠标光标*/
   int  x;/*横向坐标*/
   int  y;/*竖向坐标*/
   int  ox;
   int  oy;
   int  button;/*按键标志*/
  }MOUSE;/*鼠标类*/
  void mInits();
  int  mMButton();
  void mMouseIco();
  union REGS rg;
  int main()
  {
   MOUSE *pM,mouse;
   int graphdrive=0,graphmode=0;
   int tracking=0,x1,y1,ox1,oy1;
   pM=&mouse;
   pM-Inits=mInits;
   pM-MButton=mMButton;
   pM-MouseIco=mMouseIco;
   initgraph(&graphdrive,&graphmode,"");
   setbkcolor(1);
   setwritemode(1);/*画线模式*/
   pM-Inits(&pM-x,&pM-y);
   pM-ox=pM-x;
   pM-oy=pM-y;
   do
   {
    pM-button=pM-MButton(&pM-x,&pM-y);
    pM-MouseIco(&pM-x,&pM-y,&pM-ox,&pM-oy);
    if(pM-button==1)
    {
      if(!tracking)/*捕捉开关*/
         {
    ox1=x1=pM-x;
    oy1=y1=pM-y;
    tracking=1;
         }
      if(pM-x!=ox1pM-y!=oy1)
       {
        line(x1,y1,ox1,oy1);
        ox1=pM-x;
        oy1=pM-y;
        line(x1,y1,pM-x,pM-y);
       }
    }
    else tracking=0;
   }while(pM-button!=3);
  }
  void mInits(int *mx,int *my)
  {
   rg.x.ax=0;
   int86(0x33,&rg,&rg);
   if(rg.x.ax==0)
      exit(1);
   rg.x.ax=7;
   rg.x.cx=2;
   rg.x.dx=640;
   int86(0x33,&rg,&rg);
   rg.x.ax=8;
   rg.x.cx=2;
   rg.x.dx=480;
   int86(0x33,&rg,&rg);
   rg.x.ax=4;
   *mx=rg.x.cx=640/2;
   *my=rg.x.dx=480/2;
   int86(0x33,&rg,&rg);
   rectangle(rg.x.cx-2,rg.x.dx-2,rg.x.cx+2,rg.x.dx+2);
  }
  int mMButton(int *lx,int *ly)
  {
   rg.x.ax=3;
   int86(0x33,&rg,&rg);
   *lx=rg.x.cx;
   *ly=rg.x.dx;
   return rg.x.bx;
  }
  void mMouseIco(int *x,int *y,int *oldx,int *oldy)
  {
   if(*x!=*oldx*y!=*oldy)
   {
    rectangle(*oldx-2,*oldy-2,*oldx+2,*oldy+2);
    *oldx=*x;
    *oldy=*y;
    rectangle(*x-2,*y-2,*x+2,*y+2);
   }
  }
  
展开更多 50%)
分享

猜你喜欢

橡皮筋画线法

编程语言 网络编程
橡皮筋画线法

橡皮筋魔术揭秘

魔术
橡皮筋魔术揭秘

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

橡皮筋瘦脸法怎么做

瘦脸
橡皮筋瘦脸法怎么做

彩色橡皮筋编织教程

手工编织 手工创意 手工设计
彩色橡皮筋编织教程

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

彩色橡皮筋编织教程

手工编织 皮筋 编织
彩色橡皮筋编织教程

橡皮筋手链编织教程

手工编织 手工创意 手工设计
橡皮筋手链编织教程

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Windows 8计算机管理功能怎么用?

Windows 8计算机管理功能怎么用?

Java语言中链表和双向链表的实现

Java语言中链表和双向链表的实现
下拉加载更多内容 ↓