update blobs

This commit is contained in:
2026-05-19 04:32:52 +02:00
parent 550630feaa
commit 76e55b01e4
3 changed files with 54 additions and 6 deletions
+25 -6
View File
@@ -14,6 +14,8 @@ Q_PROPERTY(BlobGroup* group READ group WRITE setGroup NOTIFY groupChanged)
Q_PROPERTY(qreal radius READ radius WRITE setRadius NOTIFY radiusChanged)
Q_PROPERTY(QMatrix4x4 deformMatrix READ deformMatrix NOTIFY deformMatrixChanged)
Q_PROPERTY(QMatrix4x4 rawDeformMatrix READ rawDeformMatrix NOTIFY rawDeformMatrixChanged)
Q_PROPERTY(qreal targetWidth READ targetWidth WRITE setTargetWidth NOTIFY targetWidthChanged)
Q_PROPERTY(qreal targetHeight READ targetHeight WRITE setTargetHeight NOTIFY targetHeightChanged)
friend class BlobGroup;
@@ -42,10 +44,23 @@ QMatrix4x4 rawDeformMatrix() const {
}
signals:
void groupChanged();
void radiusChanged();
void deformMatrixChanged();
void rawDeformMatrixChanged();
void groupChanged();
void radiusChanged();
void deformMatrixChanged();
void rawDeformMatrixChanged();
void targetWidthChanged();
void targetHeightChanged();
public:
qreal targetWidth() const {
return m_targetWidth;
}
void setTargetWidth(qreal w);
qreal targetHeight() const {
return m_targetHeight;
}
void setTargetHeight(qreal h);
protected:
void componentComplete() override;
@@ -84,8 +99,12 @@ QRectF m_localPaddedRect;
QVector<BlobRectData> m_cachedRects;
int m_cachedMyIndex = -2;
float m_pendingDx = 0;
float m_pendingDy = 0;
bool m_cachedHasInverted = false;
float m_pendingDy = 0;
qreal m_targetWidth = 0;
qreal m_targetHeight = 0;
qreal m_lastPolishTargetWidth = -1;
qreal m_lastPolishTargetHeight = -1;
bool m_cachedHasInverted = false;
float m_cachedInvertedRadius = 0;
float m_cachedInvertedOuter[4] = {};
float m_cachedInvertedInner[4] = {};