*程序说明与注释
#include<stdio.h>
#include<math.h>
void main()
{
double y
int x,m
for(y=1y>=-1y-=0.1) /*y为列方向,值从1到-1,步长为0.1*/
{
m=acos(y)*10/*计算出y对应的弧度m,乘以10为图形放大倍数*/
for(x=1x<mx++) printf(" ")
printf("*")/*控制打印左侧的 * 号*/
for(x<62-mx++)printf(" ")
printf("*\n")/*控制打印同一行中对称的右侧*号*/
}
}
*运行结果
2.绘制正弦曲线
在屏幕上用“*”显示0-360度的余弦函数sin(x)曲线。
1.
/**//*
sin() line.
62 of line width
*/
#include <stdio.h>
#include <math.h>
int main(void)
...{
int j ,k,d,h
double i
for(i=1.0 i>0.0i-=0.1)
...{
k = (int)(asin(i)*10)
for(j=0j<k j++) /**//*print the left */
printf(\" \")
printf(\"*\")
for( j<31-k j++)
printf(\" \")
可以利用 GLUT 程序包 (OpenGL 功能) 动态绘图,例如,一边实时采样,一边显示。简单的实时曲线可以用 固定 坐标,x 时间轴,y1, y2, ..yn 为实时量,例如 温度,压力,速度..., 用 沿 x 移动的 一根垂线, 表示当卖御前时间分界点,左边的已更新,但垂线移动到x 最右端时,更新 x 坐标刻度,垂线 在从 最左端开始,绘制 新的时段数值。
另一种方法是 固定 x 轴 总时段长度,但是不断更新 x 轴 刻度 和 yi 数据,使整段曲线看上去 是 从右向左 光滑移动动。
参数设置,显示,采样控制等,都 可以在屏幕上用按钮,Text 等 实现。
直接用拦差 OpenGL 则需 用 c++ 程序,MFC + OpenGL 之类 实现简配皮。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)