framebuffer(幀緩沖)。
為黃埔等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及黃埔網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站設(shè)計、成都網(wǎng)站制作、黃埔網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
幀的最低數(shù)量為24(人肉眼可見)(低于24則感覺到畫面不流暢)。
顯卡與幀的關(guān)系:由cpu調(diào)節(jié)其數(shù)據(jù)傳輸速率來輸出其三基色的配比。
三基色:RGB(紅綠藍(lán))。
在沒有桌面和圖形文件的系統(tǒng)界面,可以通過C語言的編程來實現(xiàn)在黑色背景上畫圖!
用下面的代碼,在需要的地方(有注釋)適當(dāng)修改,就能畫出自己喜歡的圖形!
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");
#include math.h
#include stdio.h
#define R 10 //半徑
#define X 10 //圓心x坐標(biāo)
#define Y 10 //圓心Y坐標(biāo)
int main(void)
{
int x,y;
int m;
int i;
for(i=Y-R;i=1;i--)
{
printf("\n");
}
for(y=R;y=-R;y--)
{
m=2*sqrt(R*R - y*y); //橫坐標(biāo)的偏移量,因為字體長寬比例為2,所以要乘2
for(x=1;xX+R-m;x++) //打印左半圓
{
printf(" ");
}
printf("*");
for(;xX+R+m;x++) //打印右半圓
{
printf(" ");
}
printf("*\n");
}
}
C語言中提供了庫函數(shù)來畫圓,函數(shù)名為circle
函數(shù)的頭文件為
#includegraphics.h
函數(shù)功能:
circle()使用當(dāng)前繪圖色并以實線畫一個完整的圓。
用法:該函數(shù)調(diào)用方式為void
circle(int
x,int
y,int
radius);
說明:參數(shù)x,y為圓心坐標(biāo),radius為圓半徑,用像素個素表示。注意,調(diào)用circle()函數(shù)畫圓時不用當(dāng)前線型。
文章題目:C語言不用庫函數(shù)畫圓 c語言怎么不用庫函數(shù)來輸出
分享URL:http://muchs.cn/article4/ddcieoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、做網(wǎng)站、軟件開發(fā)、網(wǎng)站制作、面包屑導(dǎo)航、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)