C语言如何画图

画一个图形
最好是写出来代码,我要全部的代码~

framebuffer(帧缓冲)。
帧的最低数量为24(人肉眼可见)(低于24则感觉到画面不流畅)。
显卡与帧的关系:由cpu调节其数据传输速率来输出其三基色的配比。
三基色:RGB(红绿蓝)。

在没有桌面和图形文件的系统界面,可以通过C语言的编程来实现在黑色背景上画图!

用下面的代码,在需要的地方(有注释)适当修改,就能画出自己喜欢的图形!

PS:同样要编译运行后才能出效果。

    #include <stdio.h>

    #include <sys/mman.h>

    #include <fcntl.h>

    #include <linux/fb.h>

    #include <stdlib.h>

    #define RGB888(r,g,b) ((r & 0xff) <<16 | (g & 0xff) << 8 | (b & 0xff))

    #define RGB565(r,g,b) ((r & 0x1f) <<11 | (g & 0x3f) << 5 | (b & 0x1f))

    int main()

    {

    int fd = open("/dev/fb0", O_RDWR);

    if(fd < 0){

    perror("open err. \n");

    exit(EXIT_FAILURE);

printf("xres: %d\n", info.xres);

printf("yres: %d\n", info.yres);

printf("bits_per_pixel: %d\n", info.bits_per_pixel);

size_t len = info.xres*info.yres*info.bits_per_pixel >> 3;

unsigned long* addr = NULL;

addr = mmap(NULL, len, PROT_WRITE|PROT_READ, MAP_SHARED, fd, 0);

if(addr == (void*)-1){

perror("mmap err. \n");

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-07-04
C语言画图有专门的一个子集函数,进入图像状态就可以利用这些函数来画“点”,“线”,“圆”,“矩形”,“椭圆”等等基本图像,利用这些基本图像可以实现一个复杂图形的绘制。例如:
#i nclude<graphics.h>
void main() {
int driver,mode; driver=DETECT; mode=0; //定义变量
initgraph(&driver,&mode,""); setcolor(15); //初始化,进入图形状态
line(66,66,88,88); //画线,坐标为:(66,66)-(88,88)
lineto(100,100); //画线,坐标为:(88,88)-(100,100)
linerel(36,64); //画线,坐标为(100,100)-(136,164)
getch(); //等待按键
restorecrtmode(); //恢复到文本状态
}本回答被网友采纳
第2个回答  推荐于2017-10-06
c语言是函数语言,所以画图也离不开各种图形函数:下面举几个简单的例子:
=======================================
1./*学用circle画圆形*/
#include "graphics.h"
main()
{int driver,mode,i;
float j=1,k=1;
driver=VGA;mode=VGAHI;
initgraph(&driver,&mode,"");
setbkcolor(YELLOW);
for(i=0;i<=25;i++)
{
setcolor(8);
circle(310,250,k);
k=k+j;
j=j+0.3;
}
getch();
}
2.//line画直线
#include "graphics.h"
main()
{int driver,mode,i;
float x0,y0,y1,x1;
float j=12,k;
driver=VGA;mode=VGAHI;
initgraph(&driver,&mode,"");
setbkcolor(GREEN);
x0=263;y0=263;y1=275;x1=275;
for(i=0;i<=18;i++)
{
setcolor(5);
line(x0,y0,x0,y1);
x0=x0-5;
y0=y0-5;
x1=x1+5;
y1=y1+5;
j=j+10;
}
x0=263;y1=275;y0=263;
for(i=0;i<=20;i++)
{
setcolor(5);
line(x0,y0,x0,y1);
x0=x0+5;
y0=y0+5;
y1=y1-5;
}
getch();
}
3.//用rectangle画方形
#include "graphics.h"
main()
{int x0,y0,y1,x1,driver,mode,i;
driver=VGA;mode=VGAHI;
initgraph(&driver,&mode,"");
setbkcolor(YELLOW);
x0=263;y0=263;y1=275;x1=275;
for(i=0;i<=18;i++)
{
setcolor(1);
rectangle(x0,y0,x1,y1);
x0=x0-5;
y0=y0-5;
x1=x1+5;
y1=y1+5;
}
settextstyle(DEFAULT_FONT,HORIZ_DIR,2);
outtextxy(150,40,"How beautiful it is!");
line(130,60,480,60);
setcolor(2);
circle(269,269,137);
}
===================================
更多有关c语言图形方面的函数及用法请参考c语言图形学的相关知识。本回答被提问者采纳
第3个回答  推荐于2017-09-29

    C语言中提供了库函数来画圆,函数名为circle

    函数的头文件为 #include<graphics.h>

    函数功能: circle()使用当前绘图色并以实线画一个完整的圆。

    用法:该函数调用方式为void circle(int x,int y,int radius);

    说明:参数x,y为圆心坐标,radius为圆半径,用像素个素表示。注意,调用circle()函数画圆时不用当前线型。


第4个回答  2006-05-17
先要图像初始化:
int gd=DETECT,gm;
initgraph(&gd,&gm,"");
然后调用一些画图函数就好了,如line,circle等.

C语言如何画图
framebuffer(帧缓冲)。帧的最低数量为24(人肉眼可见)(低于24则感觉到画面不流畅)。显卡与帧的关系:由cpu调节其数据传输速率来输出其三基色的配比。三基色:RGB(红绿蓝)。在没有桌面和图形文件的系统界面,可以通过C语言的编程来实现在黑色背景上画图!用下面的代码,在需要的地方(有注释)适当...

谁知道C语言怎么画图啊
void far circle(int x, int y, int radius); 以(x, y)为圆心, radius为半径, 画一个圆。c语言的图形部分是很有意思的!也是c中最精彩的内容之一,希望你能很快享受它的乐趣!

如何用c语言画图,举几个最简单的例子
首先需要绘图函数的头文件在TC2.0中是graphics.h 然后需要初始化图形模式.在利用绘图函数 矩形:bar 圆形:circle 直线:line 等等。你可以到graphics.h文件中去看这些函数的参数 举个例子 include <stdio.h> include <graphics.h> int main(void){ int gdriver; \/*图形驱动器*\/ int gmode; ...

c237画模板-C语言如何画图
在没有桌面和图形文件的系统界面,可以通过C语言的编程来实现在黑色背景上画图!用下面的代码,在需要的地方(有注释)适当修改,就能画出自己喜欢的图形!PS:同样要编译运行后才能出效果。include<stdio.h> include<sys\/mman.h> include<fcntl.h> include<linux\/fb.h> include<stdlib.h> defineRGB888(r,...

怎么用vc6.0画图
include <conio.h> \/* 控制台输入输出头文件,getch()语句需要*\/ void main() { initgraph(640, 480); \/* 初始化640x480的绘图屏幕*\/ line(200, 240, 440, 240); \/* 画线(200,240) - (440,240) *\/ line(320, 120, 320, 360); \/* 画线(320,120) - (320,360...

如何用c语言画图,举几个最简单的例子
假设你建立了一个单文档模式的程序,可以在CxxView::OnDraw()中绘画 CDC *pDC = GetDC();pDC->MoveTo(10,10);pDC->LineTo(20,30);这样可以画一条直线 DOS环境下作图干吗用啊,学windows的GDI编程吧。dos下画图需要用特定的图形库。当然你也可以自己往显存里画,0xa0000000~0xb0000000这64k...

用C语言怎么绘制类似的图?
这个是要基于图形界面的编程,把每个方向的图片读入到位图Bitmap,再创建一个空白画布,然后用画图函数逐一把每个点对应的图形贴到画布上,最后把画布内容显示到屏幕。具体怎么实现可以追问

如何在VC里面用C语言绘制图形,直线,圆等等。另外头文件<graphics.h>...
建立MFC文件,添加菜单“功能性按键”时选择“CVIEW”函数内容如下(我用的Visual studio 2010,可能有些版本不同导致操作不同)CDC*pDC=GetDC();\/\/得到绘图类指针 RedrawWindow();\/\/重建窗口 pDC->Rectangle(50,20,700,400);\/\/以默认画笔画一矩形 CPen bluepen(PS_DASH,1,RGB(0,0,255));\/...

c语言画图截取
用“开始-"程序"-"附件"-"命令提示符"以DOS模式进入C语言环境(是小窗口的),按PRINT SCREEN,打开画图程序,粘贴。

C语言,请教我一下怎么画这道题的流程图,谢谢!
1.系统最先在全局区分配了两个大小为4个字节的连续内存,名字叫指针m,和指针n。然后是main函数 系统先在栈区分配了两个double类型大小的内存名字分别叫a,b。在栈区又分配了两个指针类型大小的内存名字分别叫指针x,指针y。让名字叫指针x内存里的内容是a的地址。让名字叫指针y的内存里的内容是b的...

相似回答