绘制函数图像的问题

TroubleShotting 2004-08-04 09:42:59
用户输入一个函数表达式,程序选择定义域内的x,并依次(用for语句实现)根据这个x求出y,最后根据(x,y)在屏幕上绘图.
但现在遇到两个问题:
1.会遇到这种情况:x1=10,y1=10;X2=11,y2=50.(斜率过大)
在这种情况下,(x1,y1)(x2,y2)两点间会出现断点。
2.绘制椭圆,双曲线等非映射函数时,有部分图像绘制不出来(x^2+y^2=1,只绘制x=(1-y^2)^0.5)

这些问题应该怎么解决呢
...全文
104 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzwu 2004-08-04
  • 打赏
  • 举报
回复
1.你可以把画图区的水平范围拉宽,比如放大10倍,然后在中间进行插值,点的跳跃就会减少.

例如[10,10]-[11,50]水平范围拉宽10倍后,变成[100,10],[110,50],在100-110间进行插值:

[100,10]-[101,14]-[102,18]-[103,22]-[104,26]-[105,30]-
-[106,34]-[107,38]-[108,42]-[109,46]-[110,50]

这样点就连续一些了.

2.你应该画两段曲线:

x = +(1-y^2)^0.5), 上半平面的曲线
x = -(1-y^2)^0.5), 下半平面的曲线

你也可以改为参数方程来画:
x=sin(t), y=cos(t), t =[0,2*Pi]


BlueSky2008 2004-08-04
  • 打赏
  • 举报
回复
1,只要根据两点画线,就行了。

33,027

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧