Change how Disc Arc start and end points function

Avatar
  • updated
  • Under Consideration

The way that Disc arc start and end points function is a bit confusing to me. It seems that the values are interchangeable and will result in the same arc. This is not the behavior I would expect (and it is different than another vector shape plugin I have used). I would expect that reversing the values of AngleStart and AngleEnd would create the "inverse" arc. For example, I would like for the reversed values to result in these two arcs:

Image 118

Image 119

This is not the case however.


My game relies on these arcs representing a direction of rotation around a point. And it is very difficult to account for this representation in the code with the way it is currently generating the arc. It would be much easier if I could represent a clockwise or counter-clockwise rotation simply by reversing the start and end values.

If there is some better way to calculate this for myself then that would also be appreciated.

Thanks.

Reporting a bug? please specify Unity version:
Reporting a bug? please specify Shapes version:
Reporting a bug? please specify Render Pipeline:
Avatar
Tyler Owen

I was finally able to account for this using math prior to assigning the values, but it still seems like something that would be valuable to add as a feature.

Avatar
Freya Holmér creator
  • Under Consideration

this would have implications to everyone who is already using arcs, so I think it might be a little too late to change this as it would break a lot of existing projects

to clarify how it works in Shapes - arcs are always counter-clockwise and will start at the minimum value and end at the maximum value, regardless of which one you set as angle start and angle end

so for your case, the bottom one would be -90 to 180, and the top one can defined with -90 and -180

that said, I might still change it in some update ahead