gpt4 book ai didi

c++ - 隐藏自定义 QwtSymbol 的边界矩形

转载 作者:太空宇宙 更新时间:2023-11-04 12:34:06 25 4
gpt4 key购买 nike

我有一个派生自 QwtSymbol 的类,符号类型是像素图。在像素图上,我画了一个省略号,但是,当带有自定义符号的曲线与另一条曲线(带有标准符号)发生碰撞时,自定义符号会剪切另一条曲线的符号区域。

自定义符号仅在与边界矩形碰撞的地方剪裁其他符号。

CSymbol::CSymbol()
: QwtSymbol(QwtSymbol::Pixmap)
, ellipsis(142, 142, 142)
{
QPixmap pixmap(QIcon(":/App/Resources/Ellipsis.png").pixmap(QSize(12, 12)));
QPainter* painter = new QPainter(&pixmap);
QwtPainter qwtPainter;

QPen pen(ellipsis);
pen.setWidth(1);

painter->setRenderHint(QPainter::Antialiasing);
painter->setClipping(false);
painter->setPen(pen);
auto size = QRectF(1, 1, 10, 10);
qwtPainter.drawEllipse(painter, size);
painter->end();
setPixmap(pixmap);
setPinPoint(QPoint(0, 0), true);

如何隐藏自定义符号的边界矩形,使其不剪裁覆盖的东西?

最佳答案

解决方案非常简单,我只是对输入像素图应用了 alpha 混合,然后绘制了省略号。

关于c++ - 隐藏自定义 QwtSymbol 的边界矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57221641/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com