| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 388 人关注过本帖
标题:为什么以下编码可以运行却出现如下提示??
取消只看楼主 加入收藏
lingdo2001
Rank: 1
等 级:新手上路
帖 子:4
专家分:2
注 册:2012-4-16
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:1 
为什么以下编码可以运行却出现如下提示??
以下代码RUN正常,
但是user screen出现如下提示:
BGI error,graphics not initilized.
该怎样才能达到程序本来的目的:旋转太极的效果呢?

#include<graphics.h>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
void mysector(int x,int y,int start,int end,int xr,int yr);
void Cmvolve(char *buffer);
void main()
{
    int gdrive=VGA,gmode=VGAHI;
    int size=0;
    void *buffer=NULL;
    initgraph(&gdrive,&gmode,"");
    cleardevice();
    setbkcolor(7);
    size=imagesize(160,80,320,320);
    buffer=malloc(size);
    getimage(160,80,321,321,buffer);
    Cmvolve(buffer);
    getch();
    closegraph();
}
void mysector(int x,int y,int start,int end,int xr,int yr)
{
    if(start<360&&end>360)
    {
        sector(x,y,start,360,xr,yr);
        sector(x,y,0,end-360,xr,yr);
    }
    else if(start==360)
        sector(x,y,0,end-360,xr,yr);
    else if(start>360&&end >360)
        sector(x,y,start-360,end-360,xr,yr);
    else
        sector(x,y,start,end,xr,yr);
}
void Cmvolve(char *buffer)
{
    int xt=0,yt=0,x0=320,y0=240,d=0;
    while(!kbhit())
    {
        putimage(160,80,buffer,COPY_PUT);
        setcolor(15);
        circle(x0,y0,160);
        d=(d+10)%360;
        xt=(int)80*sin((d+90)*(2*3.14)/360);
        yt=(int)80*cos((d+90)*(2*3.14)/360);
        setfillstyle(1,15);
        mysector(x0,y0,0+d,180+d,160,160);
        setcolor(1);
        setfillstyle(1,1);
        mysector(x0,y0,0+d,180+d,160,160);
        setcolor(1);
        setfillstyle(1,1);
        mysector(x0+xt,y0+yt,0+d,180+d,80,80);
        setcolor(15);
        setfillstyle(1,15);
        mysector(x0-xt,y0-yt,180+d,360+d,80,80);
        setcolor(15);
        setfillstyle(1,15);
        mysector(x0+xt,y0+yt,0,360,30,30);
        setcolor(1);
        setfillstyle(1,1);
        mysector(x0-xt,y0-yt,0,360,30,30);
        getimage(160,80,320,320,buffer);
    }
}
搜索更多相关主题的帖子: void 320 include screen 
2012-04-16 13:43
lingdo2001
Rank: 1
等 级:新手上路
帖 子:4
专家分:2
注 册:2012-4-16
收藏
得分:0 
   
   执行:BGIOBJ EGAVGA(把bgi转换成obj)
   再执行:TLIB LIB\GRAPHICS.LIB+EGAVGA(加载到lib中)  
是如何执行?能否具体一点,谢谢。
2012-04-16 17:14
快速回复:为什么以下编码可以运行却出现如下提示??
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020739 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved