VL.Skia Conic curves and GetFillPath bug

Found a small bug in Skia.
The GetFillPath operation sometimes returns incorrect results for Conic curves in SKPaths.
Probably because it’s misprocessing conic weights.

Could possibly be related to this bug?
https://groups.google.com/g/skia-discuss/c/zd80pmnF6hk

Not a show stopper for me, but dutifully reported in case someone else runs into it.

Skia_ConicWeightsNotRecognisedByGetFillPath.vl (22.2 KB)

Found another small possibly related bug

In rare setups Skia will not recognise if points to the right of circle center are contained inside a circular path. Only seems to affect certain positions and radius.

Circles are made from Conic verbs so could be related to first bug.

Skia_PointsNotRecognisedByCircleContainsCheck.vl (17.5 KB)

Hi Toby,

Regarding your first example (conic paths), I’ve checked the original Skia issue and the linked fiddle (Skia Fiddle). Try to set Res Scale of the GetFillPath to 4 or something, it works then good on my machine.

Regarding the second issue - if I change the Dir (direction) pin of the AddCircle to CounterClockwise then Contains works good for me, all points are green. It looks like, that the direction is important for Skia in this case.

Best,
Anton

Thanks for the update, I will try that!

Do you know what resScale actually does?
All the documentation I can find simply says increasing it increases precision but I don’t understand how or why.

Hi Toby,

yes, this is all Skia tells us about the resScale.
No more info.

https://api.skia.org/classSkPaint.html#a9a252159ba57877a58b718b3ce016473

Best,
Anton

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.