成都创新互联网站制作重庆分公司

c语言怎么用函数表达直线 c语言画一条直线

我是c语言初学者,老师要求设计程序用函数画一个圆和一条直线。求各位路过的大神仗义相助。。

1  对于这种问题,首先分析需求,

成都创新互联公司是一家集网站建设,鸡东企业网站建设,鸡东品牌网站建设,网站定制,鸡东网站建设报价,网络营销,网络优化,鸡东网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

直线:

要画直线,要的是什么,就是两个点;

所以定义一个结构体

struct point

{

int  x;

int  y;

}Ppline,Ppcircle;

画圆:

那么需要一个圆心,和一个半径;

圆心,通过上面的定义,可以获得,半径的话,直接传递参数就行了;

直线函数:

int  paintline(Ppline  startpoint,Ppline endpoint);

画圆函数:

int  paintcircle(Ppcircle   centerpoint,int  r);

怎么用C语言画一条红色的直线

首先设置初始坐标和结束坐标,然后设定画线颜色,最后用draw函数画出来就好了

采用c语言绘制任意函数曲线(双曲线,二次函数,一次函数)??怎么做??

在c的标准库中有graphic.h头文件,实现了很多画图函数 比如 lineto, moveto, arc,(函数名可能记错,好久没用了-.-!)

直线:起点加终点就行。

二次曲线,比如抛物线,那就以定长拆分成小直线。双曲线同理。

抛物线,和双曲线用定长拆分,估计很难计算。要是精度要求不高就根据情况改成定x,或者定y偏移的拆分,要是精度要求高那就去找直线拟合曲线的算法或者双圆弧拟合曲线的算法。

怎么用C语言画点和直线

这个不管怎么说不是最开始的控制台的程序,这个新建工程的时候需要选择的是Win32的程序

画线的函数使用windows提供的API,MoveTo:移动到起点,LineToEx:移动到终点的这两个函数,是在OnPaint,或是响应WM_PAINT的消息的时候处理这两个函数;画点的画,使用SetPixel这个函数,同样也是在WM_PAINT的消息中去处理与画图有关的操作的

c语言怎么把数据拟合成函数并画线

1、通过一些点拟合出一条直线。

2、参数:pt_input指向传入的点的指针。

3、ptNumbers传入的点数量。

4、k指向拟合直线参数k的指针。

5、b指向拟合直线参数b的指针。

利用C语言编写 能够画出任意的直线算法程序(利用画点函数)

上次刚写过,在VC下运行的,

int dx,dy,incrE,incrNE,d,x,y;

if ((point[1].x-point[0].x)==0){ //垂直的直线

x=point[0].x;

for(y=point[0].y;ypoint[1].y;y++)

pDC-SetPixel(x,y,50);

}

else if(abs((point[1].y-point[0].y)/(point[1].x-point[0].x))=1){ //斜率 -1到 1 之间

dx=point[1].x-point[0].x;

dy=point[0].y-point[1].y;

d=dx-2*dy;

incrE=-2*dy;

incrNE=2*(dx-dy);

x=point[0].x,y=point[0].y;

pDC-SetPixel(x,y,50);

if(point[0].ypoint[1].y){

while(xpoint[1].x)

{

if(d=0){

d+=incrE;

x++;

}

else

{d+=incrNE;

x++;

y--;

}

pDC-SetPixel(x,y,50);

}

}

else if(point[0].y=point[1].y){

dy=point[1].y-point[0].y;

incrE=-2*dy;

incrNE=2*(dx-dy);

x=point[0].x,y=point[0].y;

pDC-SetPixel(x,y,50);

while(xpoint[1].x)

{

if(d=0){

d+=incrE;

x++;

}

else

{d+=incrNE;

x++;

y++;

}

pDC-SetPixel(x,y,50);

}

}

}

else { //斜率 -1 和 1的直线

if(point[1].x=point[0].x){

dx=point[1].x-point[0].x;

dy=point[1].y-point[0].y;

d=2*dx-dy;

incrE=2*dx;

incrNE=2*(dx-dy);

x=point[0].x,y=point[0].y;

pDC-SetPixel(x,y,50);

while(xpoint[1].x)

{

if(d0){

d+=incrE;

y++;

}

else

{d+=incrNE;

pDC-SetPixel(x,y,50);

x++;

y++;

}

pDC-SetPixel(x,y,50);

}

}

else if((point[1].y-point[0].y)/(point[1].x-point[0].x)-1){

dx=point[1].x-point[0].x;

dy=point[0].y-point[1].y;

d=2*dx-dy;

incrE=2*dx;

incrNE=2*(dx-dy);

x=point[0].x,y=point[0].y;

pDC-SetPixel(x,y,50);

while(ypoint[1].y)

{

if(d0){

d+=incrE;

y++;

}

else

{d+=incrNE;

x--;

y++;

}

pDC-SetPixel(x,y,50);

}

}

}


网站栏目:c语言怎么用函数表达直线 c语言画一条直线
网页链接:http://cxhlcq.com/article/dodijjp.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部