#### Version 2.0.0-beta released on 13.09.16 ####
Added major features:
- Axis tick and tick label generation was completely refactored and is now handled in the QCPAxisTicker class (also see QCPAxis::setTicker). Available ticker subclasses for special uses cases:
QCPAxisTicker, QCPAxisTickerFixed, QCPAxisTickerLog, QCPAxisTickerPi, QCPAxisTickerTime, QCPAxisTickerDateTime, QCPAxisTickerText
- Data container is now based on QCPDataContainer template for unified data interface and significantly improved memory footprint and better performance for common use-cases, especially data adding/removing.
- New data selection mechanism allows selection of single data points and data ranges for plottables. See special documentation page "data selection mechanism".
- Rubber band/selection rect for data point selection and axis zooming is now available, see documentation of QCustomPlot::setSelectionRectMode and QCPSelectionRect. For this purpose, the new default
layer "overlay" was introduced, which is now the top layer, and holds the QCustomPlot's QCPSelectionRect instance.
- Data sharing between plottables of the same type (see setData methods taking a QSharedPointer)
- OpenGL hardware acceleration is now available across all Qt versions (including Qt4) in a unified, simple interface, with QCustomPlot::setOpenGl
- QCPStatisticalBox can now display a series of statistical boxes instead of only a single one
- New QCPErrorBars plottable allows attaching error bars to any one-dimensional plottable (QCPGraph has thus lost its own error-bar capability)
- QCPColorMap now supports transparency via alpha in its color gradient stops, and via a dedicated cell-wise alpha map (see QCPColorMapData::setAlpha)
- Layers may now be individually replotted (QCPLayer::replot), if the mode (QCPLayer::setMode) is set to lmBuffered. Mutually adjacent lmLogical layers share a single paint buffer to save resources.
By default, the new topmost "overlay" layer which contains the selection rect is an lmBuffered layer. Updating the selection rect is thus very fast, independent of the plot contents.
- QCPLayerable (and thus practically all objects in QCP) now have virtual methods to receive mouse press/move/release/doubleclick/wheel events. Before, only QCPLayoutElement provided them.
this makes it much easier to subclass e.g. items and plottables to provide custom mouse interactions that were cumbersome and awkward with the simpler signal-based interface
Added minor features:
- High-DPI support for Qt versions 5.0 and up, using device pixel ratio detected by Qt (can be changed manually via QCustomPlot::setBufferDevicePixelRatio).
- QCPGraph and QCPCurve can now be configured to only display every n'th scatter symbol, see ::setScatterSkip() method
- QCPFinancial allows to define bar width in absolute pixels and axis rect ratio, instead of only in plot key coordinates (see QCPFinancial::setWidthType)
- Range dragging/zooming can now be configured to affect more than one axis per orientation (see new overloads of QCPAxisRect::setRangeDragAxes/setRangeZoomAxes)
- Added QCPTextElement (replaces QCPPlotTitle) for general texts in layouts. Provides clicked and doubleClicked signals, as replacement for the removed QCustomPlot::titleClicked/titleDoubleClicked
- Export functions (QCustomPlot::savePng etc.) now support specifying the resolution that will be written to the image file header. This improves operability with other tools which respect metadata.
- Replots can now be queued to the next event loop iteration with replot(QCP::rpQueuedReplot). This way you can successively ask for a replot at multiple code locations without causing redundant replots
- QCPAxisRect::zoom(...) allows to zoom to a specific rectangular region given in pixel coordinates, either affecting all axes or a specified subset of axes.
- QCPRange::bounded returns a bounded range, trying to preserve its size. Works with rangeChanged signal to limit the allowed range (see rangeChanged doc)
- Plottable rescaleValueAxis method (and getValueRange) now take parameter inKeyRange, which allows rescaling of the value axis only with respect to data in the currently visible key range
- plottableClick and plottableDoubleClick signals now carry the clicked data point index as second parameter
- Added QCPAxis::scaleRange overload without "center" argument, which scales around the current axis range center
- Added QCPRange::expand/expanded overloads which take only one double parameter
- Plottables addToLegend/removeFromLegend methods now have overloads that take any QCPLegend, to make working with non-default legends easier (legends that are not QCustomPlot::legend)
- Added QCPStatisticalBox::setWhiskerAntialiased to allow controlling antialiasing state of whiskers independently of quartile box/median line
- The virtual method QCPLayoutElement::layoutChanged() now allows subclasses to react on a move of the layout element between logical positions in the parent layout, or between layouts
- QCPMarginGroup::commonMargin is now virtual, to facilitate subclassing of QCPMarginGroup
- QCPGraph::getPreparedData is now virtual, and thus allows subclasses to easily generate own plotted data, e.g. on-the-fly.
- Added QCPRange qDebug stream operator
- QCPLayoutGrid (and thus QCPLegend) can now wrap rows or columns at specified row/column counts, see setFillOrder, setWrap and the new addElement overload which doesn't have row/column index
Bugfixes [Also backported to 1.3.2]:
- Fixed possible crash when having a QCPGraph with scatters only and a non-transparent main/fill brush of the graph
- Fixed QCPItemPixmap not updating internally cached scaled pixmap if new pixmap set with same scaled dimensions
- When using log axis scale and zooming out as far as possible (~1e-280..1e280), axis doesn't end up in (via mouse) unrecoverable range with strange axis ticks anymore
- Axis tick label algorithm for beautifully typeset powers now checks whether "e" in tick label is actually part of a number before converting the exponent to superscript
- Fixed QCustomPlot::moveLayer performing incorrect move and possible crash in certain situations
- Fixed possible crash on QCustomPlot destruction due to wrong QObject-hierarchy. Only occurs if a QCPAxisRect is removed from the normal QCustomPlot destruction hierarchy by taking it out of its layout
- Fixed possible freeze when data values become infinity after coord-to-pixel transformation (e.g. maximally zoomed out log axis), and line style is not solid (e.g. dashed) or phFastPolylines is disabled
- Fixed a few missing enums in meta type system, by unifying usage of Q_ENUMS, Q_FLAGS and Q_DECLARE_METATYPE
Bugfixes [Not in 1.3.2]:
- Fixed QCPItemLine/QCPItemStraightLine not being selectable when defining coords are many orders of magnitude (>1e8) larger than currently viewed range
- Fixed/worked around crash due to bug in QPainter::drawPixmap with very large negative x/y pixel coordinates, when drawing sparse pixmap scatters
- Fixed possible (but unlikely) int overflow in adaptive sampling algorithm, that could cause plot artifacts when using extremely sparse data (with respect to current key axis range).
- Fixed QCPBarsGroup bug which caused stPlotCoords spacing to be wrong with vertical key axes
- A QCPBars axis rescale in the main window constructor (i.e. without well-defined plot size) now falls back to a datapoint-tight rescaling instead of doing nothing (because bar width can't be determined)
- Improved QCPBars stacking when using bars with very large keys and key separation at limit of double precision
Summary of backward incompatible changes:
Plottable related:
- Removed QCustomPlot::addPlottable, not needed anymore as plottables now automatically register in their constructor
- Removed QCustomPlot::addItem, not needed anymore as items now automatically register in their constructor
- QCPAbstr
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
A_fancy_qt_class_library_qtcanpool.zip (2000个子文件)
configure.ac 5KB
Makefile.am 3KB
Makefile.am 1KB
qrinput.c 36KB
qrenc.c 35KB
test_qrencode.c 29KB
test_qrinput.c 26KB
qrencode.c 19KB
decoder.c 18KB
view_qrcode.c 15KB
qrspec.c 14KB
process_stub_unix.c 13KB
test_split.c 12KB
test_monkey.c 12KB
test_mask.c 9KB
test_qrspec.c 8KB
rscode.c 8KB
process_stub_win.c 7KB
split.c 7KB
mask.c 7KB
test_bitstream.c 6KB
mqrspec.c 6KB
common.c 5KB
bitstream.c 4KB
test_mqrspec.c 4KB
mmask.c 4KB
rsecc.c 4KB
create_mqr_frame_pattern.c 4KB
create_frame_pattern.c 4KB
test_estimatebit.c 3KB
test_rs.c 3KB
datachunk.c 3KB
test_mmask.c 3KB
test_split_urls.c 2KB
pthread_qrencode.c 2KB
prof_qrencode.c 1KB
rsecc_decoder.c 1KB
ChangeLog 50KB
FindIconv.cmake 4KB
compile 4KB
configure 488KB
COPYING 26KB
qcustomplot.cpp 1.05MB
QtnRibbonPaintManager.cpp 177KB
QtnOfficePaintManager.cpp 155KB
editormanager.cpp 145KB
QtnOfficeStyle.cpp 115KB
QtnRibbonStyle.cpp 106KB
QtnRibbonBar.cpp 100KB
mainwindow.cpp 90KB
QtnOfficeFrameHelper_win.cpp 74KB
nrlicense.cpp 71KB
QtnRibbonCustomizeManager.cpp 63KB
QtnRibbonCustomizePage.cpp 63KB
documentmanager.cpp 60KB
qtcprocess.cpp 59KB
pluginmanager.cpp 59KB
differ.cpp 56KB
manhattanstyle.cpp 49KB
mainwindow.cpp 48KB
QtnRibbonControls.cpp 47KB
QtnRibbonGroup.cpp 45KB
QtnRibbonSystemPopupBar.cpp 44KB
QtnRibbonGallery.cpp 44KB
QtnCommonStyle.cpp 43KB
findtoolbar.cpp 41KB
aspects.cpp 41KB
QtnRibbonPage.cpp 39KB
QtnRibbonStyleDsgnPlugin.cpp 39KB
treemodel.cpp 36KB
test_optional.cpp 36KB
QtnOfficePopupWindow.cpp 35KB
outputpanemanager.cpp 35KB
mimeprovider.cpp 34KB
pluginspec.cpp 34KB
consoleprocess.cpp 34KB
QtnPopupHelpers.cpp 34KB
locatorwidget.cpp 33KB
editorview.cpp 33KB
QtnRibbonTabBar.cpp 33KB
fileutils.cpp 32KB
qtword.cpp 32KB
settingsaccessor.cpp 31KB
externaltoolconfig.cpp 31KB
wizard.cpp 31KB
main.cpp 30KB
main.cpp 30KB
progressmanager.cpp 29KB
fancytitlebar.cpp 29KB
searchresultwindow.cpp 28KB
mimetypesettings.cpp 28KB
filesearch.cpp 28KB
stylehelper.cpp 28KB
icore.cpp 26KB
synchronousprocess.cpp 26KB
settingsdialog.cpp 26KB
QtnRibbonBackstageView.cpp 26KB
mimedatabase.cpp 26KB
shortcutsettings.cpp 26KB
qtexcel.cpp 25KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
好家伙VCC
- 粉丝: 2334
- 资源: 9142
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【深度学习专栏】ch05配套资源
- LCD1602自留备用,侵权删
- 基于Python的申请信用评分卡模型分析项目源码 (高分项目)
- Multisim仿真可编程彩灯控制器电路设计及其实现-含详细步骤和代码
- 漂亮的收款打赏要饭网HTML页面源码.zip
- HTTP与HTTPS协议对比及其安全性分析
- 动力电极耳压边除毛刺机(sw17可编辑+工程图+BOM)全套技术资料100%好用.zip
- 中文学习系统:用户体验与界面设计
- Python绘制圣诞树:文本和图形实现
- 方型锂电池卷绕机sw14可编辑全套技术资料100%好用.zip
- 学生宿舍管理系统:集成技术与住宿服务优化
- 大一C语言项目实践-小游戏集成开发系统
- 使用HTML、CSS和JavaScript实现动态3D圣诞树效果
- 基于STM32单片机的激光雕刻机控制系统设计-含详细步骤和代码
- 工业机械手ABB CRB1100(step)全套技术资料100%好用.zip
- C++语言实现动态圣诞树绘制
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功