QWT API (中文) 7.0.1
Qt绘图库 - 中文API文档
载入中...
搜索中...
未找到
| Public 成员函数 | 所有成员列表
QwtPlotLayoutEngine类 参考

QwtPlot组件的布局引擎 更多...

#include <qwt_plot_layout_engine.h>

struct  Dimensions
 保存布局计算尺寸值的结构体 更多...
 
class  LayoutData
 布局计算数据结构 更多...
 

Public 成员函数

 QwtPlotLayoutEngine ()
 QwtPlotLayoutEngine的默认构造函数
 
QRectF layoutLegend (int plotLayoutOptions, const LayoutData::LegendData &legendData, const QRectF &rect, const QSize &legendHint) const
 在可用空间内计算图例矩形
 
QRectF alignLegend (const QSize &legendHint, const QRectF &canvasRect, const QRectF &legendRect) const
 相对于画布对齐图例矩形
 
void alignScales (int plotLayoutOptions, const LayoutData &layoutData, QRectF &canvasRect, QRectF scaleRect[QwtAxis::AxisPositions]) const
 将刻度矩形与画布对齐
 
void alignScalesToCanvas (int plotLayoutOptions, const LayoutData &layoutData, const QRectF &canvasRect, QRectF scaleRect[QwtAxis::AxisPositions]) const
 将刻度矩形对齐到画布边界
 
Dimensions layoutDimensions (int plotLayoutOptions, const LayoutData &layoutData, const QRectF &rect) const
 迭代计算QwtPlot的布局尺寸
 
void setSpacing (unsigned int spacing)
 设置间距值
 
unsigned int spacing () const
 获取间距值
 
void setAlignCanvas (int axisPos, bool on)
 设置画布对齐到特定轴位置的刻度
 
bool alignCanvas (int axisPos) const
 检查画布是否对齐到特定轴位置的刻度
 
void setCanvasMargin (int axisPos, int margin)
 设置特定轴位置的画布边距
 
int canvasMargin (int axisPos) const
 获取特定轴位置的画布边距
 
void setLegendPos (QwtPlot::LegendPosition pos)
 设置图例位置
 
QwtPlot::LegendPosition legendPos () const
 获取图例位置
 
void setLegendRatio (double ratio)
 设置图例比例
 
double legendRatio () const
 获取图例比例
 

详细描述

QwtPlot组件的布局引擎

构造及析构函数说明

◆ QwtPlotLayoutEngine()

QwtPlotLayoutEngine::QwtPlotLayoutEngine ( )

QwtPlotLayoutEngine的默认构造函数

成员函数说明

◆ alignCanvas()

bool QwtPlotLayoutEngine::alignCanvas ( int  axisPos) const

检查画布是否对齐到特定轴位置的刻度

◆ alignLegend()

QRectF QwtPlotLayoutEngine::alignLegend ( const QSize &  legendHint,
const QRectF &  canvasRect,
const QRectF &  legendRect 
) const

相对于画布对齐图例矩形

◆ alignScales()

void QwtPlotLayoutEngine::alignScales ( int  plotLayoutOptions,
const LayoutData layoutData,
QRectF &  canvasRect,
QRectF  scaleRect[QwtAxis::AxisPositions] 
) const

将刻度矩形与画布对齐

  1. 初始化骨干偏移量 (Backbone Offset) 首先计算每个轴的骨干偏移量,这个偏移量由以下几部分组成:
    • 如果不对齐画布到刻度,则加上画布边距
    • 如果不忽略框架,则加上画布内容边距
  1. 处理X轴和Y轴的相互影响 函数遍历所有轴位置,处理X轴和Y轴之间的相互空间影响:

对于X轴(水平轴): 检查左侧Y轴和右侧Y轴的影响 计算左右偏移量,考虑轴起始/结束距离和骨干偏移 调整X轴矩形位置,必要时调整画布矩形

对于Y轴(垂直轴): 检查底部X轴和顶部X轴的影响 计算上下偏移量,考虑轴起始/结束距离和骨干偏移 调整Y轴矩形位置,必要时调整画布矩形

当轴需要比可用空间更多的空间时,函数会调整画布矩形

在所有轴相互调整后,函数进行最终的对齐调整,确保轴与画布边缘正确对齐

◆ alignScalesToCanvas()

void QwtPlotLayoutEngine::alignScalesToCanvas ( int  plotLayoutOptions,
const LayoutData layoutData,
const QRectF &  canvasRect,
QRectF  scaleRect[QwtAxis::AxisPositions] 
) const

将刻度矩形对齐到画布边界

  1. 初始化骨干偏移量 (Backbone Offset) 首先计算每个轴的骨干偏移量,这个偏移量由以下几部分组成:
    • 如果不对齐画布到刻度,则加上画布边距
    • 如果不忽略框架,则加上画布内容边距
  1. 处理X轴和Y轴的相互影响 函数遍历所有轴位置,处理X轴和Y轴之间的相互空间影响:

对于X轴(水平轴): 检查左侧Y轴和右侧Y轴的影响 计算左右偏移量,考虑轴起始/结束距离和骨干偏移 调整X轴矩形位置,必要时调整画布矩形

对于Y轴(垂直轴): 检查底部X轴和顶部X轴的影响 计算上下偏移量,考虑轴起始/结束距离和骨干偏移 调整Y轴矩形位置,必要时调整画布矩形

在所有轴相互调整后,函数进行最终的对齐调整,确保轴与画布边缘正确对齐

◆ canvasMargin()

int QwtPlotLayoutEngine::canvasMargin ( int  axisPos) const

获取特定轴位置的画布边距

◆ layoutDimensions()

QwtPlotLayoutEngine::Dimensions QwtPlotLayoutEngine::layoutDimensions ( int  plotLayoutOptions,
const LayoutData layoutData,
const QRectF &  rect 
) const

迭代计算QwtPlot的布局尺寸

◆ layoutLegend()

QRectF QwtPlotLayoutEngine::layoutLegend ( int  plotLayoutOptions,
const LayoutData::LegendData legendData,
const QRectF &  rect,
const QSize &  legendHint 
) const

在可用空间内计算图例矩形

◆ legendPos()

QwtPlot::LegendPosition QwtPlotLayoutEngine::legendPos ( ) const

获取图例位置

◆ legendRatio()

double QwtPlotLayoutEngine::legendRatio ( ) const

获取图例比例

◆ setAlignCanvas()

void QwtPlotLayoutEngine::setAlignCanvas ( int  axisPos,
bool  on 
)

设置画布对齐到特定轴位置的刻度

◆ setCanvasMargin()

void QwtPlotLayoutEngine::setCanvasMargin ( int  axisPos,
int  margin 
)

设置特定轴位置的画布边距

◆ setLegendPos()

void QwtPlotLayoutEngine::setLegendPos ( QwtPlot::LegendPosition  pos)

设置图例位置

◆ setLegendRatio()

void QwtPlotLayoutEngine::setLegendRatio ( double  ratio)

设置图例比例

◆ setSpacing()

void QwtPlotLayoutEngine::setSpacing ( unsigned int  spacing)

设置间距值

◆ spacing()

unsigned int QwtPlotLayoutEngine::spacing ( ) const

获取间距值


该类的文档由以下文件生成: