孤独的猫

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  782 随笔 :: 381 文章 :: 45 评论 :: 170万 阅读
< 2025年1月 >
29 30 31 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 1
2 3 4 5 6 7 8

#include <graphics.h>
#include <stdlib.h>
#include <math.h>
#define PI 3.1415926
#define R1 150
void Pentacle(double m)          /*自定义函数Pentacle用来画五角星*/
{
    int x1, y1, x2, y2;
    double n;
    setcolor(RED);
    for (n = m; n <= 2 *PI + m; n += 2 * PI / 5)
    {
        x1 = 320+R1 * cos(n);
        y1 = 240-R1 * sin(n);
        x2 = 320+R1 * 0.382 * cos(n + PI / 5);      /*0.382黄金分割点*/
        y2 = 240-R1 * 0.382 * sin(n + PI / 5);
        line(x1, y1, x2, y2);          /*将外圈确定的点与内圈确定的点相连接*/
        x1 = 320+R1 * cos(n + 2 * PI / 5);
        y1 = 240-R1 * sin(n + 2 * PI / 5);
        line(x2, y2, x1, y1);          /*将内圈确定的点与外圈确定的点相连接*/
    }
    setfillstyle(1, RED);          /*设置填充形式为红色实填充*/
    floodfill(320, 240, RED);         /*对五角星内进行填充*/
}

void light()             /*自定义函数light用来画发光部分*/
{
    int i, j, x, y, r2 = 160;
    setcolor(YELLOW);
    for (i = 0; i <= 16; i++)
    {
        for (j = 0; j <= 60; j++)
            ellipse(320, 240, j *6, j *6+1, r2 + 10 * i, r2 + 5 * i);
    }
}

void Delay(int Second)          /*自定义时间延迟函数Delay*/
{
    long T1, T2;
    T1 = time();
    while (1)
    {
        delay(50);
        T2 = time();
        if (T2 - T1 > Second)
            break;
    }
}

main()
{
    int gdriver = DETECT, gmode;
    double m = 0.0;
    initgraph(&gdriver, &gmode, "");       /*函数图形初始化*/
    while (!kbhit())
    {
        Pentacle(m);          /*调用函数Pentacle*/
        light();           /*调用函数light*/
        Delay(0.5);          /*调用函数Delay*/
        cleardevice();          /*清屏*/
        m += PI / 6;          /*函数参数每次增加30°实现五角在不同位置重画*/
    }
    getch();
    closegraph();         /*退出图形状态*/
}

posted on   孤独的猫  阅读(475)  评论(0编辑  收藏  举报
编辑推荐:
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
阅读排行:
· Sdcb Chats 技术博客:数据库 ID 选型的曲折之路 - 从 Guid 到自增 ID,再到
· 语音处理 开源项目 EchoSharp
· 《HelloGitHub》第 106 期
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 使用 Dify + LLM 构建精确任务处理应用
点击右上角即可分享
微信分享提示