SDF: trimmed "path segments" going in circles

hi all,

I want to do something like this but with SDFs: trimmed path segments going in circles. all moving with the same speed. most not use boolean sdf operators because performance!

first question: is it possible/feasable to create a polynom from my path shape and use it for domain distortion? If not, I would also be ok with a plain circle.


talking circles: polar domain repeat does not work for me since I need the objects to be able to move around the circle.

image
I could also revolve a 2d shape, but I need a way to cut it. I would like to sample from a 1d texture to kind of set a bool filter (in polar logic) when to draw and when not to draw the object.

image
I tried finding the “fOpRevolution” function to but could not, and this was where my journey ended.

happy for any insights!

// Revolve a 2D signed distance field in to a third dimension
// called as sdf(fOpRevolution(p, w))
float2 fOpRevolution(float3 p, float w )
{
	return float2( length(p.xz) - w, p.y );
}

sauce