Hi everyone, I am trying to implement lv_arc with following design, but I am struggling with getting the required shape of Arc. I see that arc uses min(w, h) to draw rounded shape, while I need it to be a little elliptical.
Is there a way to do that with Arc or do I have to draw it manually?
Let me try to understand more what kind of visual you want to achieve with the arc.
Do you want the whole arc to be more flat or smashed? Something like this?
If so then I’m not sure if that is possible.
But if you want something similar to the following, then you can adjust the properties start/end angles of the arc and start/end angles of its background. Also set a bigger size.
The arc widget doesn’t use any elliptical math. It uses only circle math so it will always use the smallest side of the size that is set to determine what the radius of the “arc” should be…
With that knowledge you can “stitch” together multiple arc widgets in order to get the effect you are looking for. It is a rather complicated process because it will involve hiding and showing the handle/thumb when you cross from one arc to the next. It will also involve altering how LVGL handles click and drag events so when you cross one of those thresholds you can transfer the input into the next widget. It’s not going to be something that would be easy to do that’s for sure.