zoukankan      html  css  js  c++  java
  • 关于如何使用VC6.0+Graphics图形库画出二维图形全教程

    首先是安装VC6.0,网上各种版本很多,参差不齐,在这里给出一个非常好用的VC6.0(提取码:1bn9)

    不支持win10,8,如果非得使用,请用虚拟机或者重装win7系统

    按照提示安装就好了,不行就多装几遍(c盘不行就装载d盘),没什么需要特殊配置的

    然后就是关于Graphics图形库了,这个更简单,也是有脚本软件,可以直接安装使用,记得安装完VC6.0之后重启一下

    可执行软件是:EasyX(提取码:9v9w)

    安装完成直接打开后会有提示,可以点击自动添加Graphics图形库,如果不行就手动安装,里面有EasyX_help文档,里面写的很详细,按照里面提示的来就好

    安装完成后,打开VC6.0

    点击文件,选择新建,在新建窗口点击工程,选择新建的工程win32  Application,输入工程名称,点击确定

    出现以下窗口:

    建议直接点击一个空白工程,选择下一步,完成

    然后出现下面的窗口,点击Source Files,然后再点击左上角的文件,选择第一个新建,选择C++ Source Flie,输入文件名,点击确定

    在出现的空白文件中,将下面的代码复制进去:

    #include <graphics.h>      // 就是需要引用这个图形库 
    #include <conio.h> 
    #include<iostream>
    #include<math.h>
    using namespace std;
    #define PI 3.1415926
    int ix=300,iy=300;//围绕的圆心点
    double tx,ty;
    void change(int x,int y,double angle){
        int length=x-ix+y-iy;//旋转轴长度 
        tx=(x-ix)*cos(angle)-(y-iy)*sin(angle)+ix;//x0= (x - rx0)*cos(a) - (y - ry0)*sin(a) + rx0 ;angle表示顺时针旋转,-angle表示逆时针旋转
        ty=(x-ix)*sin(angle)+(y-iy)*cos(angle)+iy;// y0= (x - rx0)*sin(a) + (y - ry0)*cos(a) + ry0 ;
    }
    void main() 
    {    
        initgraph(640, 640);   // 这里和 TC 略有区别
        int n=20;//n表示旋转了多少次 
        int a=200,b=200,c=300,d=300;//矩形四个点分别为(200,200),(200,300),(300,300),(300,200) 
        double perangle=2*PI/n;
        //cout<<"PI= "<<PI<<" perangle= "<<perangle<<" cos(perangle)= "<<cos(perangle)<<" cos(PI)="<<cos(PI*90/180);
        for(int i=1;i<=n;i++){
            change(a,b,i*perangle);
            moveto(tx,ty);
            int ia=tx,ib=ty;
            change(a,c,i*perangle);
            lineto(tx,ty);
            change(d,c,i*perangle);
            lineto(tx,ty);
            change(d,b,i*perangle);
            lineto(tx,ty);
            lineto(ia,ib);
        }
        getch();               // 按任意键继续    
        closegraph();          // 关闭图形界面 
    
    }

    点击下面的感叹号

    如果出现下面的结果,恭喜你,完成了第一个Graphics图形demo

    如果出现问题,请多次尝试一下,大部分是因为没有将头文件导入成功,不要急慢慢来,一步一步的重试

  • 相关阅读:
    MYSQL profiling分析语句
    进程状态与僵尸进程、孤儿进程
    Nginx跨域设置
    Redis的应用场景
    Nginx的作用
    cgi、fast-cgi和php-fpm的介绍(作用)
    CoreDump开启和Swoole Tracker 3.0配置
    好题总结
    Atcoder总结 Part III
    Atcoder总结 Part II
  • 原文地址:https://www.cnblogs.com/gambler/p/9010704.html
Copyright © 2011-2022 走看看