c语言产生非线性函数图像 c语言定义线性函数( 六 )


void far setactivepage(int pagenum);
void far setvisualpage(int pagenum);
这两个函数只用于EGA,VGA 以及HERCULES图形适配器 。setctivepage() 函数
是为图形输出选择激活页 。所谓激活页是指后续图形的输出被写到函数选定的
pagenum页面, 该页面并不一定可见 。setvisualpage()函数才使pagenum 所指定
的页面变成可见页 。页面从0开始(Turbo C默认页) 。如果先用setactivepage()
函数在不同页面上画出一幅幅图像,再用setvisualpage()函数交替显示, 就可以
实现一些动画的效果 。
void far getimage(int xl,int yl, int x2,int y2, void far *mapbuf);
void far putimge(int x,int,y,void * mapbuf, int op);
unsined far imagesize(int xl,int yl,int x2,int y2);
这三个函数用于将屏幕上的图像复制到内存,然后再将内存中的图像送回到
屏幕上 。首先通过函数imagesize()测试要保存左上角为(xl,yl), 右上角为(x2,
y2)的图形屏幕区域内的全部内容需多少个字节, 然后再给mapbuf 分配一个所测
数字节内存空间的指针 。通过调用getimage()函数就可将该区域内的图像保存在
内存中, 需要时可用putimage()函数将该图像输出到左上角为点(x, y)的位置上,
其中getimage()函数中的参数op规定如何释放内存中图像 。
对于imagesize()函数, 只能返回字节数小于64K字节的图像区域, 否则将会
出错, 出错时返回-1 。
本节介绍的函数在图像动画处理、菜单设计技巧中非常有用 。
例13:下面程序模拟两个小球动态碰撞过程 。
7. 图形模式下的文本输出
在图形模式下, 只能用标准输出函数, 如printf(), puts(), putchar() 函
数输出文本到屏幕 。除此之外, 其它输出函数(如窗口输出函数)不能使用, 即是
可以输出的标准函数, 也只以前景色为白色, 按80列, 25行的文本方式输出 。
Turbo C2.0也提供了一些专门用于在图形显示模式下的文本输出函数 。下面
将分别进行介绍 。
一、文本输出函数
void far outtext(char far *textstring);
该函数输出字符串指针textstring所指的文本在现行位置 。
void far outtextxy(int x, int y, char far *textstring);
该函数输出字符串指针textstring所指的文本在规定的(x, y)位置 。其中x
和y为象元坐标 。
说明:
这两个函数都是输出字符串, 但经常会遇到输出数值或其它类型的数据,
此时就必须使用格式化输出函数sprintf() 。
sprintf()函数的调用格式为:
int sprintf(char *str, char *format, variable-list);
它与printf()函数不同之处是将按格式化规定的内容写入str 指向的字符串
中, 返回值等于写入的字符个数 。
例如:
sprintf(s, "your TOEFL score is %d", mark);
这里s应是字符串指针或数组, mark为整型变量 。
如何用几何画板画出非线性的函数图像(1)用参数方程画图像
(2)化成y=f(x)再画图像
(3)用另一个软件"几何表达式"
采用c语言绘制任意函数曲线(双曲线 , 二次函数,一次函数)??怎么做??在c的标准库中有graphic.h头文件,实现了很多画图函数 比如 lineto,moveto,arc,(函数名可能记错,好久没用了-.-!)
直线:起点加终点就行 。
二次曲线,比如抛物线,那就以定长拆分成小直线 。双曲线同理 。
抛物线,和双曲线用定长拆分,估计很难计算 。要是精度要求不高就根据情况改成定x,或者定y偏移的拆分,要是精度要求高那就去找直线拟合曲线的算法或者双圆弧拟合曲线的算法 。
C语言编程:怎么让编写的程序理解用户给出的函数解析式,并绘制出相应的函数图像?挺有意思的问题,简单谈一下看法

推荐阅读