Geometry.DoesIntersect problem with CurtainWalls

Hey,
so i’m working on a script that picks up types of walls,ceilings,floors surrounding certain rooms in project. This is done by creating a solid that intersects with other geometry returning booleans (OOTB node). So far script has been working smoothly, returning good results, but i’m having hard time making CurtainWalls work properly with it.

So the method i’ve used previously was to just get geometry of walls by Element.Geometry node. This was returning some of the CurtainWalls elements reported not in the rooms they should’ve been reported. I’ve noticed that Element.Geometry returns empty list when CurtainWall is fed into it, and that may have been not filtered well later after intersection detection.

I’ve tried another approach, this time creating cuboids from BoundingBoxes of Walls ( I don’t have any angled walls thankfully). This creates quite big solid around CurtainWalls (I guess it takes into account the whole semi transparent blue area displayed in Revit), despite having CTW geometry supposedly intersecting with rooms geometry the DoesIntersect node returns some weird outcomes. As seen on pic below it returned True for intersection between these 2 solids - blue one is the CTW geometry, grey one is the room geometry…

edit: whole workspace screenshot

How about using temporary walls which has the same profile with selected curtain wall.
Replace with temporary walls in your graph and delete it after u get the result.(add a node for delete at the end of your graph)

Why not use the Roon.Boundaries node (Clockwork or Archilab) and get the elements around the room ? Seems to pick up curtain wall as well.

I must agree I did omit using this node. Anyway - thanks I will try and test this solution, it’s been a good practice doing it with only OOTB nodes nevertheless:)

EDIT: i did a quick check on this node, and sadly it doesn’t “catch” most of the walls existing in links

Hi,
I did not realize the walls are in a link - perhaps one of the nodes in BimorphNodes can be useful for this. Using only OOTB is great but sometimes there no other way but using a package.