I would like source curve to inherit the axis as the placement origin
I would also like use parameters to define the angle/number so that the fragment is spaced along the curve, joining end to end
I realise this is prob going into grasshopper territory which is fine but I find it much easier, as a noob, to understand how its done in Rhino first
I think the easiest approach would be to place your original line inside a Block. That way all instances(copies) get updated if one of them is changed. Then, you can use ArrayPolar to rotate them around a center.
array always takes the distance from the orientation curve. so in order to have that working as you want you would have to place the axis right on the circle. you can turn on history prior to that then move the initial instance up and down and scale till its fits it will autoupdate the array instances as you then will see.
but if you want it to join edge to edge precisely you might not get around using a different method. depending on what is more important, keeping the radius of the circle or the size of the shape.
you can use divide with as many segments you want to determine the size of one segment
another method is using flow, there you take the length of the circle make a straight line and copy the fragment onto it and array along that line then Scale 2d all the fragments to fit within that line and use Flow to flow along the circle option rigid i believe.