栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

一个C++利用easyX库显示一条慢速画斜线的程序案例

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

一个C++利用easyX库显示一条慢速画斜线的程序案例

#include
using namespace std;
#include
#include
#include
#define NUM 500  //画线时分的步骤数

//慢速画直线函数,参数包括起始、终点坐标和每步骤间隔时间
void LINE(int x1,int y1,int x2,int y2,int SLEEP)
{
    int x_;
    int y_;
    for(int i=0;i<=NUM;i++)
    {
        x_=(float)x2*i/500;//float是关键,否则在i值较小时,坐标值都是0,线段无动作
                               //如果显示的是曲线的话此处计算要复杂一些
        y_=(float)y2*i/500;
        //cout<<"X2="<         line(x1,y1,x_,y_);
        Sleep(SLEEP);
    }
 }

int main()
{
    initgraph(1024,780,1); //初始化一个1024*780的窗口
    setorigin((int)getwidth()/2,(int)getheight()/2); //将窗口中心确定为原点并将Y轴方向调整为向上
    setaspectratio(1,-1); //并将Y轴方向调整为向上
    //慢速画线LINE(int x1,int y1,int x2,int y2,int SLEEP)
    setlinecolor(YELLOW); //坐标轴线颜色设定微黄
    setlinestyle(0,3); //坐标轴线型为实线,线宽3个像素
    line(0,0,0,getheight()/2*0.75); //以窗口高度一半的75%为长度画出Y轴
    for(int i=0;i<(getheight()/2*0.75)/30;i++) //在Y轴上每隔30个像素画一刻度线
       {line(0,i*30,10,i*30);};
    line(0,0,(getwidth()/2)*0.75,0);//以窗口高度一半的75%为长度画出X轴
    for(int i=0;i<(getwidth()/2*0.75)/30;i++)  //画轴刻度线
       {line(i*30,0,i*30,10);};
    settextcolor(YELLOW);//将文字颜色设置同坐标轴颜色
    setaspectratio(1,1);//自定义的Y轴方向显示文字是反的,先调整回来,y值也要加-号
    outtextxy(0,-(getheight()/2*0.75+20),L"Y");//字符串前加L或选多字符集,否则报错
    setaspectratio(1,-1);//重新设置回去
    outtextxy(getwidth()/2*0.75+15,0,L"X");
    setlinecolor(RED);//将画线颜色调整为红色
    LINE(0,0,300,250,50);//调用慢画线函数画一条斜线
                         //初始坐标0,0 终点坐标300,250、间隔毫秒数50
    system("pause");//防止闪退
    closegraph();
    return 0;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/979988.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号