当前位置:首页 » 编程语言 » c语言计算机图形学

c语言计算机图形学

发布时间: 2022-06-15 06:20:48

❶ 用于计算机图形学的语言是什么语言

我们学校用的机械工业出版社的教材,整个学期是以c语言来进行的,所用软件是v c++ 6.0.计算机图形学用很多语言都可以实现,一般用作教学的,教材上大都是C语言或c++,不同学校不同教材可能安排不同。

❷ 懂C语言的高手进来帮帮忙! 有关计算机图形学,画一辆会动的自行车程序。我的编译没错,可是不能运行。

#include<graphics.h>
#include<stdlib.h>
#define PI 3.14159

void WhirlCircle(int x,int y,int r)
{
int i;

clearviewport();
while(!kbhit())
{
for(i=1;i<=21600;i++)
{
if(i%5400==0) setcolor(random(14)+1);
line(x,y,x+r*cos(i*PI/10800),y-r*sin(i*PI/10800));
}
}
getch();
}

void main()
{
int gd=DETECT,gm;

initgraph(&gd,&gm,"");

WhirlCircle(320,240,100);
closegraph();
}

❸ 用C语言编写的计算机图形学程序为何在TurboC里运行不了 ..

里的头文件和VC里的头文件有好几个不同啊~~ 你在VC++运行的时候,要不了解 不同的执行软件其规则不同,就像UNIX和turbo,程序相同结果却,

❹ 计算机图形学作业;求大神解救啊!!!调用C语言的图形函数,完成: 1)编写函数MyDraw,实现下面图形的绘制.

我不知道你要求的图形库是哪个图形库 我用的是 EasyX,和TurBo C差不多吧!代码如下,已注释

#include<graphics.h>
#include<stdio.h>
#defineA200//起始边长
#defineW800//窗口长度
#defineH600//窗口高
voidMyDraw(inta);
intmain()
{
MyDraw(A);
return0;
}
voidMyDraw(inta)
{
intx0,y0;
inti=0;
x0=(W-A)/2;//计算起点坐标X,Y
y0=(H-A)/2;
initgraph(W,H);//初始化
setlinecolor(RGB(255,0,0));//设置线条颜色
setlinestyle(0,3);//改变线条样式第二个参数改变线条粗细
for(i=0;i<5;i++)//重复画五次正方形
{
rectangle(x0,y0,x0+a,y0+a);//画正方形
if(i<4)//如果已画完五个正方形则不改变边长和起点
{
x0+=(int)(a*0.1);
y0+=(int)(a*0.1);
a=(int)(a*0.8);
}
}
circle(x0+a/2,y0+a/2,a/2);//画圆
getchar();
closegraph();
}

截图:

❺ 计算机图形学C语言画图问题

gluOrtho2D参数不对,参数分别代表(左下角x坐标,右上角x坐标,左下角y坐标,右上角y坐标),相对于窗口左下角。注释掉它看看就知道了

❻ 学好计算机图形学需要学习那些相关的知识

学好计算机图形学主要学好线形代数和高等数学这二门课。
主要的还是一些图形学的算法研究,当然c语言也是必不可少的。
计算机图形学介绍了很多基础算法,这些算法虽然很基础,但是很经典,关键是学到一种思考问题的方式。

❼ c语言计算机图形编程的程序求各种实例(并说明一下啊)谢谢谢!!

1》DDA法画直线的例子:void CMyView::OnDdaline()
{
CDC* pDC=GetDC();//获得设备指针
int xa=100, ya=300, xb=300, yb=200,c=RGB(0,255,0);//定义直线的两端点,直线颜色
int x,y;
float dx, dy, k;
dx=(float)(xb-xa), dy=(float)(yb-ya);
k=dy/dx, y=ya;
if(abs(k)<1)
{
for (x=xa;x<=xb;x++)
{pDC->SetPixel (x,int(y+0.5),c); <br> y=y+k;}
}
if(abs(k)>=1)
{
for (y=ya;y<=yb;y++)
{pDC->SetPixel (int(x+0.5),y,c); <br> x=x+1/k;}
}
ReleaseDC(pDC);
}
void CMyView::OnBresenhamline()
{
CDC* pDC=GetDC();
int x,y,i,e,dx,dy,t;
int x1=100,y1=200,x2=350,y2=100,c=RGB(0,0,255);
dx=abs(x2-x1),dy=abs(y2-y1),e=2*dy-dx;
x=x1,y=y2;
if(dx>dy)
{
for(i=0;i<=dx;i++)
{
pDC->SetPixel(x,y,c);
x++;
if(e>=0)
{y++;<br> e=e+2*dy-2*dx;}else e=e+dy;
}
}
else
{
t=dx;
dx=dy;
dy=t;
for(i=0;i<=dx;i++)
{
pDC->SetPixel(x,y,c);
x++;
if(e>=0)
{y++;<br> e=e+2*dy-2*dx;}else e=e+dy;
}
}
}2》中心画圆法 做园 void CMyView::OnMidpointcircle()
{ CDC* pDC=GetDC();
int xc=100,int yc=200,float R=50,float alpha=1;
int i;
float sinalpha,cosalpha,xi,yi,xii,yii,steps;
sinalpha=sin(pi*alpha);
cosalpha=cos(pi*alpha);
xi=xc+R;
yi=yc;
steps=360;

for(i=0;i<steps;i++)//每隔45°确定一个园上的点。
{
xii=xc+(xi-xc)*cosalpha-(yi-yc)*sinalpha;//确定第一点xii,yii.其与圆心的连线和 xi,yi与圆心的连线夹角45°
yii=yc+(xi-xc)*sinalpha+(yi-yc)*cosalpha;
pDC->MoveTo(xi,yi);
pDC->LineTo(xii,yii);
xi=xii;
yi=yii;
}
}3》 bresenham法画圆void CMyView::OnBresenhamcircle()
{
// TODO: Add your command handler code here
CDC* pDC=GetDC();
int xc=300, yc=300, r=40, c=RGB(0,0,255);
int x,y,p; x=0,y=r,p=3-2*r;
while(x<y)
{
pDC->SetPixel(xc+x, yc+y, c);
pDC->SetPixel(xc-x, yc+y, c);
pDC->SetPixel(xc+x, yc-y, c);
pDC->SetPixel(xc-x, yc-y, c);
pDC->SetPixel(xc+y, yc+x, c);
pDC->SetPixel(xc-y, yc+x, c);
pDC->SetPixel(xc+y, yc-x, c);
pDC->SetPixel(xc-y, yc-x, c);
if (p<0)
p=p+4*x+6;
else
{
p=p+4*(x-y)+10;
y-=1;
}
x+=1;
}
if(x==y)
pDC->SetPixel(xc+x, yc+y, c);
pDC->SetPixel(xc-x, yc+y, c);
pDC->SetPixel(xc+x, yc-y, c);
pDC->SetPixel(xc-x, yc-y, c);
pDC->SetPixel(xc+y, yc+x, c);
pDC->SetPixel(xc-y, yc+x, c);
pDC->SetPixel(xc+y, yc-x, c);
pDC->SetPixel(xc-y, yc-x, c);
ReleaseDC(pDC);
}与图形相关的还有很多很多,扫描线填充法,种子填充法 等等想要真正了解的话 推荐一本书!《计算机图形学》以上程序只能说明引用方法,毕竟很对关于以上程序的东西 都在自己做的头文件里。

❽ 计算机图形学原理及实践―C语言描述怎么样

本书是计算机图形学领域的经典着作。本书由基础知识、用户界面、模型定义和图像合成四个部分组成,包括SRGP的编程、画二维图元的基本光栅图形学算法、图形硬件、几何变换、三维空间的观察、对象的层次结构和SPHIGS系统、输入设备、交互技术与交互任务、对话设计、用户界面软件、实体造型、消色光与彩色光、可视图像的真实性、可见面判定、光照模型与光照计算、图像处理与存储、高级光栅图形体系结构、高级几何与光栅算法、高级建模技术和动画等内容。 本书内容全面,涉及图形学的各个领域,可以作为计算机专业本科生和研究生的教材,同时也可供相关技术人员阅读。 这是计算机图形学领域的一部经典之作,作者Foley、van Dam等是国际图形学界的着名学者、学术带头人,而且本书英文版自出版以来,一直是各国大学计算机图形学课程的主要教科书。来自清华大学、北京大学、中国科学院计算技术研究所、中国科学院软件研究所的多位图形学领域的专家和精英花费了大量的时间和精力进行翻译,最终完成了这本中文版。 本书由基础知识、用户界面、模型定义和图像合成四个部分组成,内容覆盖了日趋成熟的计算机图形学领域各个方面,包括二维、三维图形学的数学基础,重要算法,光栅图形硬件和软件,交互技术及用户界面软件,真实感图形学,高级建模技术 (分形、体绘制等),图像处理和存储,以及动画等。此外,书中包括了大量习题和参考文献,提供了大量的用C语言编写的实现算法的程序。 本书是高等院校计算机专业本科生、研究生计算机图形学课程的理想教材,是相关领域专业人员开展研究工作的优秀参考书。

❾ 计算机图形学 用C语言生成动画 原代码

#include<stdio.h>
#include<stdlib.h>
int main()
{
int i,j,k;
for(i=1;i<=40;i++)
for(j=1;j<=5;j++)
{
system("cls");
printf("\n");
for(k=1;k<=i;k++)
printf(" ");
printf("8888");
}
}

将printf("8888");换为画图函数就可以了!

❿ C语言与计算机图形学有什么关系

.. .. 没什么特别关系,计算机图形学,是一门比较深的学科了.里面涉及到很多算法, 比如画线,画圆什么的这两个是很简单的, 还很多很难得算法... 这些算法,就需要编程语言来实现, .所以可以用c实现,其他语言也可以..

热点内容
什么样配置手机适合玩大型游戏 发布:2025-04-04 13:00:51 浏览:138
ios天天酷跑刷分脚本 发布:2025-04-04 13:00:05 浏览:263
c二维码源码 发布:2025-04-04 12:47:31 浏览:637
地铁加密线是什么意思 发布:2025-04-04 12:32:00 浏览:121
linux下载解压 发布:2025-04-04 12:23:45 浏览:792
怎么在服务器里设材质包 发布:2025-04-04 12:10:08 浏览:630
php学习路线 发布:2025-04-04 12:05:13 浏览:755
压缩文件视频 发布:2025-04-04 12:00:48 浏览:321
17php 发布:2025-04-04 11:54:33 浏览:213
仿链家源码 发布:2025-04-04 11:48:46 浏览:423