python二次开发bim软件_Github Python计算器开源项目 二次开发–增加函数图形

python+Qt 开发的计算器

原项目界面和功能如图所示:

64c026be1074f797b4b22d5d847ce89c.png

科学计算的内容基本都有,但按照项目的提示,想给函数显示图片,计算器直接退出,无任何提示。咨询无果,看源码。

在logic.py里面找到关于函数图形绘制的函数如下:

1fb98b9809fcc9f66422a68cffd774ff.png

try里面根本就没有绘制图形的语句。所以基本可以确定这个功能是不存在的。再查看本项目所有.py文件,也没有引用到matlibplot.pyplt。

本人决定增加这个功能,先确定技术路线:matlibplot.pyplt + tkinter弹窗显示,因为Qt还不是很熟悉,做起来麻烦不小。

需要做的大方向:增加一个专门画图.py文件,在上述的plott函数里,增加相关语句,进行具体选择,给出具体的画图指令。

需要画图的函数有如下8个,红框5个+黄框3个:

715d31be6af5dad55bff7c8861400a4b.png

先从sin函数开始...

一步一步尝试,做出如了这些图形:

5bde71cd4d39ce174f1ccf1e5fafc98a.png

按下Show  Graph键后:

80b511c852341c9d0f52520a52c13162.png

按Quit Graph键,退出画图界面,计算器还可以继续工作。比如继续画其他函数图形,或做计算。

按Exit Calculator键后,直接退出计算器程序。

其他的函数,图形如下:

cos函数:

875a809ed7f113e162a125c39b141ef7.png

tan函数:

2915e19f98b2fe37a04cbb80ab34f455.png

ln函数:

26e910eb0105cc0f15f3b5353e27eedd.png

sin-1函数:

c2d889324ea5bfbc2c9c13fb4b66ccf7.png

其余不再一一列出。

经验总结:

一、看懂源码最重要,拿来主义可以开拓眼界,但是是只有看懂源码,才能更好的利用和消化原项目。

二、现在动手比规划重要,实际上增加这个功能时候,是没有上面那些规划的。都是一点一滴修正和总结的。

三、class类继承真的很有用,减少不小代码量。先有个基础画图类,然后在此基础上,只要重写一个函数,可以画出任何图形。

四、细节决定成败,函数域、坐标轴范围、使用的计算函数,这里面的坑真多。

最后尽量解耦,原函数plott变成如下,看起来有点多,主要还是里面的坑多,需要分门别类。

8efd665dbb28dd37966c58a5b1e12bc4.png

对源代码改动基本就是方框所示,外加自己写的.py画图文件。

发表评论

评论已关闭。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值