Cross Product Lacing and Sublists

Hello everyone,

Although I am not at work the following issue still keeps nagging me. As I do not have Dynamo near me I though I would please you with my drawing skills ;). Please see pictures below.

I am trying to find if two lines intersect. I have two lists of lines: one list of horizontal lines and one list of vertical lines. I know for a fact that a few lines WILL intersect. These will be filtered out using a boolean function.

The situation as mentioned above works fine in Dynamo, see first image below. However, this describes only the ground level. Let’s say I have three levels? See second image. In this case i have two lists comprised of three SUBLISTS each containing the lines (each list is a level). I have tried using List.Combine with the node Geometry.DoesIntersect as f(x) but this does not work as I expected. How can I get the results that I want?


Hi René,

Replication guides seem to be the solution : (this is for dynamo 0.9.2 … I know some enhancements have been made on the most recent builds for list combinations, but I havent been able to try it yet)

Thank you for your reply, Mostafa! I know nothing about such scripts, could you elaborate on this code script? What is going on inside? <a1><2>? b<1>? Also, as I do not know how to interpret it, does it make use of cross product lacing?

Finally, do you (or anyone) also have a ‘node-solution’ instead of designscript? I find it important to learn from your solutions, and for now I am focused on dynamo nodes.

Again, thanks for your trouble!

Here’s an article that helped me a lot while i was trying to wrap my head around replication guides :

I hope it helps you

I’ve also written (Valid at the time in Dynamo 0.8) an introductory guide on DesignScript and Replication Guides (Just scroll down) at the following link:

Gem topic!
If we operate with room boundaries, especially.

How can we get Geometry.DoesIntersect for this case?
(if i make list of repeated item for second list, i can’t get result of previous topic due one more level depth). The structure of needed result is in Intersection.FindIntersections node.


@Vladimir See if this works

This might explain the concept better …