Compare list of points for match

Hello,

I’ve tried a variety of lacing and levels, but cant seem to get this right. Have searched through posts but I’m just not getting it.

Can anyone spot what I am doing wrong?
I have a list of curves, some of them will have the same start point/end point. I can see that there are matching locations, but the lists return false always.

Thank you, appreciate your assistance.

The == node is comparing values rather than elements, e.g. integers, doubles, strings, booleans, etc.

Try using List.Equals instead.

1 Like

Try this node out for geometry comparison: Dynamo Dictionary (dynamobim.com)

1 Like

Thank you. Both work great!

And, I feel like this should be simple, but how do I get the list of trues to filter out… Am I missing a step between ListFilterBool mask and the first list that feeds into it?

Also, perhaps there is a better way to do this? I am trying to get the lines which have an intersection point, Geometry.DoesIntersect works too, perhaps that is a better method, still struggling to get the end list of lines that have start and end point overlaps…

you can play around the level too, or use list.map

Your list inputs don’t match for the boolmask node. Currently the list input is 2 levels, 6 items, and the mask input is 3 levels 36 items.

This is because of the cross product lacing, that checks every value against every other value. In this case, you don’t care about the individual true/false for each check, only whether or not one of them is true, so you can use a node like ‘AnyTrue’. Or if you’re avoiding add-in packages for whatever reasons, a List.Contains true will accomplish the same thing. This should make the bool mask list 2 levels, 6 items, same as your input list.

Thanks for the detailed description, appreciate it, is working :slight_smile: