Commit Graph

21 Commits

Author SHA1 Message Date
Uwe Rathmann bc066c8103 QskArcRenderer using the normal vector of the tangents for expanding
the arc to the desired thickness. This matches the result of what
QPainter::drawArc does. However our implementation is much
simpler as we do not convert the arc into a sequence of
bezier curves finally running into code that has to deal with
random QPainterPath element lists.
2024-05-30 19:06:02 +02:00
Uwe Rathmann 16c9ea2161 Squashed commit of the following:
commit 319abafb0d
Author: Uwe Rathmann <Uwe.Rathmann@tigertal.de>
Date:   Tue May 21 16:08:40 2024 +0200

    bad shadowColor check fixed
2024-05-21 17:00:13 +02:00
Uwe Rathmann f6845c709c QskArcRenderer - work in progress, QskArcRenderNode added 2024-05-14 17:03:03 +02:00
Uwe Rathmann 511db2650e copyright notice generalised 2024-01-17 14:31:45 +01:00
Uwe Rathmann e63b064f5a QskArcShadowNode introduced ( kudos to Rick ) 2024-01-06 15:05:30 +01:00
Uwe Rathmann 64db2d0117 code moved from QskArcRenderer to QskArcMetrics 2023-04-19 12:16:40 +02:00
Uwe Rathmann 3210242276 using "unstretched" conic gradients 2023-04-17 17:29:47 +02:00
Uwe Rathmann 785cb33739 QskArcNode supports borders now 2023-04-17 10:54:44 +02:00
Uwe Rathmann 328e6a9e6f QskArcNode as composite of fill/border nodes 2023-04-14 12:44:49 +02:00
Uwe Rathmann 73dd618626 working on arcs 2023-04-14 09:47:10 +02:00
Uwe Rathmann 45a1bc3564 QskArcNode is a QskShapeNode now.
The performance of the previous implementation was simply horrible,
when drawing an arc with a small span angle. The size of the corresponding full circle
is huge and the previous implementation always created an image/texture with
that size.

However the final implementation is supposed to create vertex lists
- like what the box renderer does. So this code will also not stay forever.
2023-04-12 12:19:26 +02:00
Uwe Rathmann 7ddae671e2 API of classes dealing with arcs improved 2023-04-11 13:04:10 +02:00
Uwe Rathmann 9e583166ff BSD-3-Clause license 2023-04-06 09:23:37 +02:00
Uwe Rathmann 7e36893d1c compiler warnings fixed 2023-04-04 08:49:11 +02:00
Uwe Rathmann 6fef215310 using QskGradient::hash 2022-10-14 17:13:33 +02:00
Uwe Rathmann 54b55c0324 default graphic pipeline without native OpenGL calls.
code is QRHI compiant now
2022-06-02 16:02:42 +02:00
Uwe Rathmann e1a58f84ee QskPaintedNode improved 2022-06-01 16:57:57 +02:00
Uwe Rathmann 55d5f99575 introducing QskHashValue to work around Qt5/6 incompatibilities 2022-03-25 10:28:06 +01:00
Uwe Rathmann b89fa86b67 using qAsConst 2022-03-24 10:39:33 +01:00
Uwe Rathmann ca2cdf7663 beautified 2021-12-23 19:05:59 +01:00
Peter Hartmann b89621a3d4
Iot dashboard arc rendering (#134)
* add QskArcNode and QskArcRenderer

* IOT example: Use QskArcNode instead of own arc node

* move some functionality to the arc renderer

* add QskArcMetrics

* add methods to QskSkinlet

* remove circular bar graph node

We can now use updateArcNode() and don't need our own method.

* support linear gradients in the arc renderer

* clean up

* incorporate Uwe's changes

* add overloads for updateArcNode() when the angles are set dynamically

The angles don't always come from the style, so we need overloads
in QskSkinlet to set them dynamically.
2021-10-20 07:50:25 +02:00