马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
#include<graphics.h>
#include<conio.h>
#include<stdlib.h>
#define s 10 //这是一个比率,相当于我把图形放大10倍
int main()
{
initgraph(800, 700); //初始化窗口,也就是程序框大小
setbkcolor(WHITE); //设置背景颜色
setlinecolor(RED); //设置坐标轴的颜色
cleardevice(); //清除屏幕内容
setorigin(400, 350); //设定坐标原点
line(-400, 00, 400, 00); //绘制X轴
line(0, 350, 0, -350); //绘制Y轴
for (int i = -500; i <= 500; i++) //绘制坐标
{
line(s * i, 0, s * i, -10);
if (i % 5 == 0)
line(s * i, 0, s * i, -15);
line(0, s * i, 10, s * i);
if (i % 5 == 0)
line(0, s * i, 15, s * i);
}
double x,y;
for(x=-100;x<=100;x=x+0.001)
{
y = x * x + x + 2; //计算出每个X对应的Y值
putpixel(s * x, -s * y, BLACK); //画出每个点
}
system("pause");
return 0;
}
#define s 10 //这是一个比率,相当于我把图形放大10倍
这个把图形放大十倍的原理是什么
这段代码使用了 EasyX 库来绘制一个简单的 2D 图形。#define s 10 这行代码定义了一个宏常量 s,值为 10,表示一个缩放比例。
在这个程序中,缩放比例 s 用于将坐标系和函数图像放大 10 倍。这是通过在绘制坐标轴、坐标刻度以及函数图像时,将 x 和 y 坐标分别乘以 s 来实现的。
具体来说,以下几个地方使用了这个比例:
1、在绘制坐标轴刻度时,使用了 s * i 来计算刻度线的位置。
2、在计算函数图像的点时,使用了 s * x 和 -s * y 作为放大后的坐标值。
这样做的好处是可以更清晰地查看函数图像的细节。当我们把图形放大 10 倍时,函数曲线中每个点之间的距离也会相应地增大 10 倍,这使得图形更容易观察和分析。
|