- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
精品
精品
Qwt是一个基于LGPL版权协议的开源项目, 其目标是提供一组 2D的窗体库显示技术领
域的数据,数据源以浮点数组或范围的方式提供, 输出方式可以是Curves (曲线),Slider
(滚动条), Dials (圆盘),compasses (仪表盘)等等。 该工具库基于 Qt开发, 所
以也继承了 Qt的跨平台特性, 据原作者文档所说, 该项目在Qt-win/Qt-x11/Qt-embedded
(qvfb环境)上都测试过, 运行正常。 项目的主页在:/
在网上搜了一下, 发现关于qwt的中文资料实在很少, 基本上只有关于编译和安装的文章。
实际上经过笔者实践, Qwt的编译和运行实在乏善可陈, qmake;make就可以搞定,没什
么可memo的东西, 所以这篇文章将以扫盲为主, 介绍Qwt的feature。
当然按照正常的顺序, 我们还是从编译安装开始。 从svn服务器上下载最新代码:svn
co https://qwt.sv n.sourceforge. net/sv nroot/qwt/tru nk/qwt
进入qwt目录, 运行你电脑上qt4对应的qmake,再运行make编译。如笔者环境中是
$ cd qwt
$ export PATH=/usr/local/Trolltech/Qt-4.5.1/bi n/:$PATH
$ qmake
$ make
编译要花个几分钟的时间。 成功后在lib下会生成libqwt.so*文件,并且examples也参与编
译, 生成的binary在examples/bin下, 我们可以运行这些例子初步查看 qwt的功能。
$export LD_LIBRARY_PATH =$PWD/lib
$cd examples/bi n
$ ./simple
simple是qwt自带的例子中最简单的一个, 一共只有一百来行的代码, 实现了数学中的正 弦函数(sin())和余弦函数(cos())曲线。如下图:
这个例子里用到的核心类有四个 (以下内容是笔者的理解, 有可能有不对的地方, 请酌情
阅读):
QwtPlot
类似一个2D绘图的容器,里面可以放其他的 QwtPlotItem派生类对象,比如本例子中使 用的QwtPlotMarker等。(有点类似 Qt里的graphicsview的感觉。) 这个类负责控制绘图 数据的产生和传递, 并且绘制一个坐标轴。
QwtPlotMarker
标尺类,用于绘制刻度线。
QwtPlotCurve
曲线类, 用于绘制各种曲线。
QwtSy ntheticPoi ntData
比较奇怪, 这是个undocumented的类,估计不小心被作者遗漏了, 文档中没有提供该类
的说明,只能从源码中寻找答案了, 这一点很让人郁闷。 通过看code当中的注释和例子
代码,笔者的理解是该类负责产生数据, 它的作用是提供固定数量的浮点数的点, 点的
数量在构造类时传入。 获取数据时QwtPlotCurve类会调用该类的y()方法获取纵坐标。
设置坐标轴的参数程序的基本流程是:
设置坐标轴的参数
1初始化绘图容器,
// Set axes
setAxisTitle(xBottom, “ x - ” );
setAxisScale*Bottom , 0.0, 10.0;//横坐标从0到10, xBottom表示横坐标的方向从下往上
setAxisTitle(yLeft, “ y - ” );
setAxisScaley(Left, -1.0, 1.0); // 纵坐标- 1到 1,yLeft 表示纵坐标的方向从左到右
2、添加正弦余弦曲线
// Insert new curves
QwtPlotCurve *cSin = new QwtPlotCurve( ” y = sin(x) ” );
#if QT_VERSION = 0 X 040000 cSin-setRenderHint(QwtPlotItem::RenderAntialiased);
#endif
cSin-setPen(QPen(Qt::red));// 红色曲线 cSin-attach(this);
QwtPlotCurve *cCos = new QwtPlotCurve( ” y = cos(x) ” );
#if QT_VERSION = 0 X 040000 cCos-setRenderHint(QwtPlotItem::RenderAntialiased);
#endif
cCos-setPen(QPen(Qt::blue));// 蓝色曲线
cCos-attach(this);
3、设置曲线的数据内容
// Create sin and cos data cSin-setData(Fu
您可能关注的文档
- LM358恒流恒压原理.docx
- MBTI职业性格测试完整版全.docx
- MG-BZ-101-025《XX节能产品创新研发课题作业标准》V2.0.docx
- MOOC会计学原理第三章作业.docx
- MRC4齿轮机械加工工艺规程编制及工时定额计算工序卡片.doc.docx
- NDI聚氨脂控制弹簧在伸缩装置中的应用.docx
- NO.19非连续性文本阅读1.doc.docx
- O2O营销模式流程图.docx
- office2003和2007共存不冲突的解决方案.docx
- OVMLZM型冷铸锚具主要尺寸参数表.docx
- 2025及未来5年中国金属废料市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国铝推拉窗市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国EVA热压眼镜盒市场数据分析及竞争策略研究报告.docx
- 2026及未来5年中国泡沫消防车市场数据分析及竞争策略研究报告.docx
- 2026及未来5年中国指针式收音机市场数据分析及竞争策略研究报告.docx
- 2026及未来5年中国液晶裸眼三维立体显示屏市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国城市消防综合应用系统市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国绿防滑碳钢电工钳市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国冷却塔材料市场数据分析及竞争策略研究报告.docx
- 2026及未来5年中国车牌号码自动识别系统市场数据分析及竞争策略研究报告.docx
最近下载
- 2020年第37届高中物理竞赛力学专题练习39题(带详解).docx VIP
- 全文可编辑-东华科技-市场前景及投资研究报告-出海远航.ppt VIP
- 2018CPXY-J406 ZJF免拆模板现浇混凝土复合保温系统.docx VIP
- 《富致秘录》中源线建仓法(陈雅山 著 王明森 点校).pdf VIP
- 2025年29490-2023企业知识产权合规管理体系内部审核检查表 .pdf
- 华东师大版九年级数学上册期末测试卷(4套)(有答案).pdf VIP
- 2024CPXY-S58 HX雨水控制及利用设施选用与安装.docx VIP
- IT专用模板-XX部门软件工程师月度绩效考核表.xls VIP
- 2024CPXY-J498 禹途石墨烯预制沟槽地暖系统.docx VIP
- 2025年湖南省怀化市中考英语试卷真题(含答案解析).docx
原创力文档


文档评论(0)