QPainterPathStroker 类

QPainterPathStroker 类用于为给定的 painter path 生成可填充的轮廓。 更多...

头文件 #include <QPainterPathStroker>
CMakefind_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmakeQT += gui

公共函数

QPainterPathStroker()
QPainterPathStroker(const QPen &pen)
~QPainterPathStroker()
Qt::PenCapStylecapStyle() const
QPainterPathcreateStroke(const QPainterPath &path) const
qrealcurveThreshold() const
qrealdashOffset() const
QList<qreal>dashPattern() const
Qt::PenJoinStylejoinStyle() const
qrealmiterLimit() const
voidsetCapStyle(Qt::PenCapStyle style)
voidsetCurveThreshold(qreal threshold)
voidsetDashOffset(qreal offset)
voidsetDashPattern(Qt::PenStyle style)
voidsetDashPattern(const QList<qreal> &dashPattern)
voidsetJoinStyle(Qt::PenJoinStyle style)
voidsetMiterLimit(qreal limit)
voidsetWidth(qreal width)
qrealwidth() const

详细描述

通过调用 createStroke() 函数,并传递一个给定的 QPainterPath 作为参数,创建一个新的 painter path 表示给定路径的轮廓。然后可以填充新生成的 painter path 以绘制原始 painter path 的轮廓。

您可以通过以下函数控制轮廓的各种设计方面(宽度、末端样式、连接样式和虚线样式)

setDashPattern() 函数接受 Qt::PenStyle 对象和表示模式的列表作为参数。

此外,您还可以使用 setCurveThreshold() 函数指定曲线的阈值,以控制绘制曲线时的颗粒度。默认阈值是一个良好的调整值(0.25),通常您不需要修改它。但是,您可以减少其值以使曲线外观更平滑。

您还可以使用setMiterLimit()函数来控制生成的轮廓的斜接限制。斜接限制描述了斜接接合可以扩展到每个接合多远。此限制以宽度为单位指定,因此像素级的斜接限制将是miterlimit * width。此值仅在接合样式为Qt::MiterJoin时使用。

createStroke()函数生成的绘图路径仅应用于绘制给定的绘图路径。否则可能会引起意外的行为。生成的轮廓还需要默认设置的Qt::WindingFill填充规则。

另请参阅 QPenQBrush

成员函数文档

QPainterPathStroker::QPainterPathStroker()

创建一个新的描边器。

[显式构造] QPainterPathStroker::QPainterPathStroker(const QPen &pen)

基于pen创建一个新的描边器。

[noexcept] QPainterPathStroker::~QPainterPathStroker()

销毁描边器。

Qt::PenCapStyle QPainterPathStroker::capStyle() const

返回生成的轮廓的端帽样式。

另请参阅 setCapStyle

QPainterPath QPainterPathStroker::createStroke(const QPainterPath &path) const

生成一个新的路径,表示给定path的轮廓。

轮廓的各种设计方面基于描边器的属性:width()、capStyle()、joinStyle()、dashPattern()、curveThreshold() 和 miterLimit()。

生成的路径仅应用于绘制给定的绘图路径。否则可能会引起意外的行为。生成的轮廓还需要默认设置的Qt::WindingFill填充规则。

qreal QPainterPathStroker::curveThreshold() const

返回生成的轮廓的曲线平坦化阈值。

另请参阅 setCurveThreshold

qreal QPainterPathStroker::dashOffset() const

返回生成的轮廓的虚线偏移量。

另请参阅 setDashOffset

QList<qreal> QPainterPathStroker::dashPattern() const

返回生成的轮廓的虚线模式。

另请参阅 setDashPattern

Qt::PenJoinStyle QPainterPathStroker::joinStyle() const

返回生成的轮廓的接合样式。

另请参阅 setJoinStyle

qreal QPainterPathStroker::miterLimit() const

返回生成的轮廓的斜接极限。

另请参阅 setMiterLimit().

void QPainterPathStroker::setCapStyle(Qt::PenCapStyle style)

将生成的轮廓的端点样式设置为样式。如果设置了虚线模式,则模式中的每个段都受端点样式的影响。

另请参阅 capStyle().

void QPainterPathStroker::setCurveThreshold(qreal threshold)

指定曲线平滑阈值,控制生成的轮廓的曲线绘制粒度。

默认阈值为调整良好的值(0.25),通常不需要修改它。然而,您可以减小其值以使曲线看起来更平滑。

另请参阅 curveThreshold().

void QPainterPathStroker::setDashOffset(qreal offset)

将生成的轮廓的虚线偏移设置为偏移

有关虚线偏移的说明,请参阅QPen::setDashOffset文档。

另请参阅 dashOffset().

void QPainterPathStroker::setDashPattern(Qt::PenStyle style)

将生成的轮廓的虚线模式设置为样式

另请参阅 dashPattern().

void QPainterPathStroker::setDashPattern(const QList<qreal> &dashPattern)

这是一个重载函数。

将生成的轮廓的虚线模式设置为虚线模式。此函数可以指定自定义虚线模式。

列表中的每个元素包含画笔中虚线及间隙的长度,从第一个元素的开头虚线开始,第二个元素的第一个间隙开始,并为每个后续的元素对交替虚线和间隙。

列表中的元素数目可以是奇数,此时当模式重复时,最后一个元素将扩展到第一个元素的长度。

void QPainterPathStroker::setJoinStyle(Qt::PenJoinStyle style)

将生成的轮廓的拐角样式设置为样式

另请参阅 joinStyle().

void QPainterPathStroker::setMiterLimit(qreal limit)

将生成的轮廓的斜接极限设置为限制

斜接极限描述了斜接只能在离每个连接多远的地方延伸。该限制是以当前设置的宽度为单位指定的。因此,像素级的斜接极限将是miterlimit * width

仅当连接样式为Qt::MiterJoin时使用此值。

另请参阅 miterLimit().

void QPainterPathStroker::setWidth(qreal width)

设置生成的轮廓画笔路径的宽度为 width

生成的轮廓将向外扩展大约 width 的 50%,以达到给定输入路径原始轮廓的两侧。

另请参阅 width 方法。

qreal QPainterPathStroker::width() const

返回生成的轮廓宽度。

另请参阅 setWidth 方法。

© 2024 The Qt Company Ltd. 本文档中的文档贡献包括其各自所有者的版权。本提供的文档根据自由软件基金会的发布,受 GNU 自由文档许可证 1.3 版本 的条款约束。Qt 及相关标志是 The Qt Company Ltd. 在芬兰及全球其他国家的商标。所有其他商标均为各自所有者的财产。