The core problem concerning the alignment of the objects along the extruded curves is that the extruded curves have no relation to the centered original curve.
So the answer to your specific problem is:
In words:
- Acquire the index of the points of the centered curve with
Capture Attribute
before extruding it.
- Using this index, transfer the position of the points of the center curve after the extrusion with
Transfer Attribute
and calculate a direction to the center (or pointing outward from the center).
- Use the node
Align Euler to Vector
to create a rotation from this direction, which you then transfer directly to your instances.
However, you will find that you will run into a problem with this setup if you greatly reduce the distribution of instances.
Because the resolution of the curve in your setup is linked to the distribution of the points for the instances, a low resolution will result in an incorrect rotation of the instances:
Therefore, you would have to separate the resolution of the curve from the number of points to be used for instantiation.
So I took the liberty to change some things and restructure this for Blender 3.2 and make some improvements:
- I added a Group Input called "Spacing" which controls the distribution of the objects to be instantiated.
- Further I renamed the Group Input "Resolution" to "Spline Resolution" and changed the behavior so that this value actually does what is usually done with curves with the value "Resolution": Splitting the segments. To achieve the above goal with the separation, this subdivision means the segments between the points where the objects are to be instantiated.
If you take a closer look, you will notice that with this setup the generated curves have become more independent from the points necessary for the instantiations and are more suitable for further processing.
The main thing, however, is that you don't have to visibly reduce the resolution of the curves to achieve a less dense distribution.
(Blender 3.2)