Query about Geometry.DoesIntersect node

Hi sirs,

Here are the information regarding my question.
Goal - To press the room information from a linked model to an active lighting fixture element parameter where they reside.
Reference - @GavinCrump youtube video “Linked Elements in a room using Dynamo”

I tried to replicate the graph but I am having problem as shown below. The Geometry.DoesIntersect node reports the wrong room. Up to now I am still checking any mistake I might have made. This output happened to all the points. I am not sure why it outputs the room information from the room in other levels.


Questions :

  1. Have anyone experience this also? (I think I made some mistake in the graph…)
  2. Are there alternative node I could use to intersect a point to linked room solids in dynamo?
  3. Are there other workflows I could do to accomplish my goal?

Thank you very much ^^

Hello @vbaac seems your models dont share origin…try with some transform…here is an exemple…

PS try to filter for unplaced rooms as well datashapes have a node for that there works on linked rooms and spaces…BUT my best advice is setup the project the right way,because that issue will continue to follow the rest of its life :wink:

1 Like

bro @sovitek ,

thank you for your detailed response ^^… I will try your recommendations…

hi bro @sovitek ,

just now I tried to translate the room geometries as per your example (by origin)… and the translated geometry shows that the rooms are in the same location as before… and over all, it still outputs the wrong room name…

BTW can the node “Geometry.DoesIntersect” detect a point inside a room geometry (say an element location point)? or does it require solid to solid intersection?

thank you ^^

1 Like

Yes bimorph have some nodes for that…im not sure what your issue is here…could you share a little piece of your rvt model and your rvt link…but again best setup the project the right way…this issue will continue in all models and 3rd part softvare :wink:

hi bro @sovitek ,

I really want to give you the partial file to solve the problem, but it is not easy to disect a large model T_T… I undestand I cannot get much help without the model in your hands ^^

anyway, are the coordinate systems shared via this button?

image

best regards…

Yes thats for shared coordinate…are your project setup in shared coordinates ? try tjeck origin match your linked model…could you share some dummy files with that issue then…

1 Like

You could share an image with all survey, base, origin point on…so i can see exacly what is wrong…here is an exemple when they dont share origin and in that case my graph should work…

But as you see it doesnt fix the issue it just transform the coordinates, so again i would set it up the right way…think in your case you need some relocate

Instead of modifying the files, you can transform the geometry by the transform of the link instance. It is an extra step, but an often necessary one as the likelihood of all project files always sharing an internal origin is pretty slim.

2 Likes

Yes…it can many times be an issue…but in best world :wink:

1 Like

but here is a way if you dont wanna relocate…



TRANSFORM ROOM FROM ARCH.dyn (28.9 KB)

1 Like

hi bro @sovitek ,

I am sorry for the late reply. Just got busy for a while.

Thank you so much for sharing your ideas regarding the problem. ^^… I recreated the graph from scratch following your workflow and my previous references. Some how it is working now ^^. I started to work from 1 room and a fixture inside it. I think the mistake why I get the wrong room name is from the level setting of a node.

I want to ask also,

  • is it necessary to filter out the unplaced rooms? (I have not encountered it before)
  • aside this, what can be done to rooms that was placed in revit, but dynamo did not create a solid from it? (see SS below) the problem is the node “doesintersect” will not be able to check for fixtures in this area.

Best Regards…

yes you will need filter out unplaced rooms…for the solid there doesnt work try get the rooms boundary curve and extrude this as solid or try get rooms lowest surface and use thickness…if that doesnt work try rebuild your boundary line so its closed…hope it help

1 Like

thank you for your help bro @sovitek ^^…

one more question… I tried to extrude the room boundary but the node says it cannot because it is an open curve. Is it possible to recreate the room boundary inside of dynamo w/c is comprised of around 400 small curves, and join them all into one?

Or the only way was to modify it in the architectural model?

Try to join the curves into a polycurve with a PolyCurve.ByJoinedCurves node. From there you can try to close a single small open gap with a PolyCurve.CloseWithLine node. If you have multiple gaps you will have to clean up the model - as with all computer programming garbage in results in garbage out.

2 Likes

yes here is an exemple…

But will say the same as here :wink:

Here is a reason why i like create spaces…just better control and then you dont need transform as well

1 Like

thank you for your help bros @sovitek & @jacob.small , I understand your point.

I will coordinate it to our architecture group for fixing ^^… I have read a little about making spaces from linked rooms in the MEP model… I will surely read more about it and try it sometime…

1 Like

Yes i would do the same…good old issue :wink:

1 Like