so given that the way blockland and many other programs do 3d rotations (aka with
quaternions, the last four values in a getTransform) in order to get a solution one needs a bit more information regarding how this circle is oriented
is it always along the xy plane? or does it have some angle that makes one end point higher than the others?
the general approach is to vector cross the direction you need the object to face with a vector representing the direction that points "forward" on the static shape, and then calculate how much rotation around the vector cross is needed. however this can result in some gimballing of the shape if it ends up pointing downwards or such.