This really depends on how your family is built, but… My belief is that the info you seek can be found with a combination of the two points and the directions. Let’s say P1 is an input and P2 is the output.

Worst case, assuming the directions are vectors, it could be done like this:

T* ake the distance between the two points

- Divide that distance by two.
- Translate the first point by that distance along the associated direction.
- Get the distance from the translated point and point two.
- If it now less than the divided distance return 0, otherwise return 1.
- Use a List.ShiftIndicies to move the point Paris by those values. Your points should now be in ‘input-output’ sequence.

If the directions are a value like ‘in’ or ‘out’ you can use a List.SortByKey node and be completely finished.

No matter what that value is, watch your list levels and lacing carefully.