Compare List to other List (Grid Alignment)

revit
dynamo

#1

Hi,

Im having problems with comparing list to other List for Grid Alignment check.
also attached are the images and script itself.
My Goals Are as Follows:

  1. COMPARE CURRENT MODEL LIST TO LINK MODEL LIST AND CHECK FOR THE GRID ELEMENT THAT HAS BEEN DELETED ON THE CURRENT MODEL/LIST.

  2. COLOR THE DELETED GRID ELEMENTS OF THE LINK MODEL IN THE CURRENT VIEW.

Hope someone can help,

P.S.
sorry for my messy Graph/Nodes as I am new to this Dynamo.

GRID-ALIGNMENT_V01.dyn (69.5 KB)


#2

Considering it’s working fine when both values are of equal length, what would you wish to happen when they aren’t?


#3

Hi,

Thank you for the quick response.
if the List is not Equal, Goal is to identify the Deleted Grid from the link model and Color it in the Current View/Model and feed it in the new Node as per image below:


#4

Right, err, I’m not sure if I can really keep up with that. I mean specifically with the part that you encircled red.


#5

yes that’s the hard part for me, but maybe simple for other’s.
if someone can solve this, that would be a great help.
also this Graph/Nodes may be useful to others as well having the same issue.


#6

Making it work is not the issue, if you put in different lengths in that part what do you want out of it?


#7

Hi,

If it works with Different lengths, Goal is to identify the Deleted Grid from the link model and Color it in the Current View/Model and feed it in the new Node or Script as per image below:

Thank you,


#8

Why not just use a view filter? Linked grids = red, set links to underlay. If the grid exists, it will show on top of the link. If no grid exists, the red linked grid shows up.


The other obvious option is to copy/monitor grids.


#9

Hi,

thanks for the reply,
however view filter is easy for minimal/small number of Grids to compare,
in my case I have 288 atleast of Grids to Check.
The goal is to identify the discrepancy(Even the smallest value of shifted Grids,say 50mm or less difference) in one Click as listed in the image below:


Thank you,


#10

New, Deleted, and Shifted should be easy enough with geometry. In order to get MarkValue to work you would have to know which grids are supposed to align with each other - and since the whole point is to find changes in value you can’t just match up grids by grid name.

I know this isn’t a Dynamo solution but this is a pretty cool add-in that we’ve used a couple times.


It checks changes between model updates so assuming your grids match the master grid plan, you can see when the master plan changes and therefore where you need to make updates.


#11

Hi Nick,

When you say easy,
Can you show me how this works, if you dont mind
So i could get an idea/solve the problems im having.
I prefer using Dynamo as it is added in the Revit already. We dont have much of privileged to install new/free software, although we can but prepared not to.
Thank you for the suggestion BTW😁.


#12

If a linked grid doesn’t exist in your current grids it’s new. If a grid now longer shows up in the linked grids it was deleted. These two changes just require you to compare lists. For the rest of your grids (that exist in both models) you just check location/geometry - if they’re different, one shifted. Of course in my example I’m comparing grid names. If you also want to check for name changes (which to me is just a new grid) you would have to use a dictionary of some sort to compare equal values between grids.


#13

“Action speaks louder than words” as they say.
My point is Im having a hard time comparing it, thats the reason why i posted/ask some advice or guidance here. I tried and read some options but couldn’t solve it. COMPARING is the items that making this errors.


#14

I could say the same to you. Try some of the things I’ve suggest before asking for a working example. Use the grid geometry to look for overlap and missing/new grids. Try using another parameter as an identifier.

You cannot compare the grid elements themselves. They are different objects. What I’m saying is you need to find a way to compare similar values - either the grid name or another identifier that will remain constant.

Here I’m using NUMBER as an identifier for grids with different names. Once I have similar objects to compare I can look for what has changed.


#15

Thanks Nick,

I ran out of action to work on, thats when i asked for some other’s opinion. I will try this once i get back to the office, Anyhow for this Graph you’re only showing 2 task.
List of task i need to perform at the same time or in one click are : New, Deleted, shifted and changed Mark value without shifting locations.
3 items i’ve done so far but when I deleted 1or more grid in the current model and Re-Run the Algorithm/Graph this is when the error comes in( well not exactly an error but just providing different output whick is incorrect). What I observed is that in my Graph it only compare what’s the value in both(same)index, meaning when I deleted a grid/s
The Value of the index in the Current Model are not the
same as what is the value in the link Model.

I think i may have picture something out of your graph/Nodes used. However if you could bare with me and work this out, that would be a great help.
Happy weekend for me😁. Cycling day Tomorrow
Thank you Guys.
BrB.


#16

Why not use the copy monitor tool which is built into Revit?


#17

Hi Jacob,

That is actually our first option, but in our case
We do that on the first instance after that we remove the Monitoring as we receive revised Revit Model. Sometimes it happens more often. So our BIM manager suggested that we create something usefull to save time and coped up with a very tight deadline.


#18

Hi All,

Thank you for your Help.
I manage to make it work as per my goal.
change the node Element.Name to Element.ID