How to return the original curve from intersected curve


I am working on the clash detection between wall and pipe. As you see below, there are 193 Pipes and 66 Walls in the project which generate 197 clashes point. The node I use is “curve.solidinstection”

The difficulty I met is I do not know how to return instersected curve is come from which original curve?
This is because I would like to get every individual pipe size from clashed point. It seems (or I dont know the way) to return the correspond curve to find the pipe size.

It would be great if you can help me. Thanks!

I think you can use Geometry.DoesIntersect and then List.FilterByBoolMask.

Do I have to use corss product for lacing? It would generate more than 12000 results, which my computer easily breaks down

yes, you have to use cross product or set the list level, 12000 bool results is not very heavy…