关于C语言计算机绘图问题

比如,我输出了一朵玫瑰花

img


怎样在原输出的图形上强制再显示其他东西,如:目标效果:

img


求函数


#include <graphics.h>
#include <math.h>

int main() {
    int gd = DETECT, gm;
    initgraph(&gd, &gm, "");
    
    // 绘制玫瑰花
    int xCenter = getmaxx() / 2;
    int yCenter = getmaxy() / 2;
    int radius = 100;
    for (float theta = 0; theta <= 360; theta += 0.1) {
        float angle = theta * 3.14 / 180;
        int x = xCenter + (radius * cos(angle) * cos(angle) * cos(angle));
        int y = yCenter - (radius * sin(angle) * cos(angle) * cos(angle));
        putpixel(x, y, RED);
    }
    
    // 绘制函数图形
    for (int x = 0; x <= getmaxx(); x++) {
        int y = 200 * sin((x - 100) * 0.1);
        putpixel(x, yCenter - y, BLUE);
    }
    
    getch();
    closegraph();
    return 0;
}

看看这个demo对你有没有帮助

【以下回答由 GPT 生成】

我可以使用C语言中的图形库来实现这个需求。我可以使用graphics.h图形库来绘制图形,并使用putpixel()函数来绘制单个像素点。

首先,我需要在C语言中引用graphics.h头文件并初始化图形库。接下来,我可以使用initgraph()函数来初始化图形绘制环境。

接下来,我可以使用setcolor()函数来设置要绘制的图形的颜色。根据目标效果图,我可以使用红色绘制玫瑰花的轮廓。

然后,我可以使用circle()函数来绘制玫瑰花的圆形轮廓。根据目标效果图,我可以设定圆心坐标和半径来绘制。

接下来,我可以使用rectangle()函数来绘制目标效果图中的矩形。根据目标效果图,我可以设定矩形的左上角和右下角坐标来绘制。

最后,我可以使用line()函数来绘制目标效果图中的线条。根据目标效果图,我可以设定线条的起始点和终止点坐标来绘制。

以下是示例代码的实现:

#include <graphics.h>

int main() {
    int gd = DETECT, gm;
    initgraph(&gd, &gm, "");

    setcolor(RED);

    // 绘制玫瑰花轮廓
    circle(100, 100, 50);

    setcolor(BLUE);

    // 绘制矩形
    rectangle(150, 50, 200, 100);

    setcolor(GREEN);

    // 绘制线条
    line(250, 50, 300, 100);

    getch();
    closegraph();

    return 0;
}

这段代码将在屏幕上显示一个红色的圆形,一个蓝色的矩形和一个绿色的线条,实现了在原输出图形上增加其他图形的效果。

注意: 为了使用graphics.h图形库,你需要在编译器中进行相关设置。这可能因编译器而异,请根据你所使用的编译器进行相应的设置。如果你使用的是Windows操作系统,你可以使用Turbo C/C++编译器来编译和运行这段代码。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

为什么不去学Windows程序设计呢