ModelChecker / ModificationTracker


I would like to know if there is anyway to put a tolerance to this nodes because i would like to see the changes of more od 5cm and not the small changes on the walls.

Anybody knows if there is a way to do this?

Thanks a lot!!

I presume you are talking about the DataShapes node?
This node is just comparing the two geometry objects and seeing if they are equal to each other. Same same.

geomtest.append(getvertices(eA) == getvertices(eB))

You could write a node that does what you are looking for, but it would be substantially different than what is in DataShapes. You would need to figure out what difference is acceptable for different objects and in what way.

You can look at the code behind DataShapes.

Yes im trying to do this with the data-shapes node, i know nothing python so i think i have no other soluton :sweat:

Assuming you just want to check element positions, a pretty lazy method would be:

  • Get all elements you want to compare in the host model
  • Reference all elements in the linked document with the same Id
  • Get the elements’ bounding box, and that boxes cuboid, then that cuboids centroid
  • Check the distances between the centroids, if more than 5cm then you know it moved

It’s a bit lazy as the centroid isn’t always an indicator if an element has moved overall, as it could have rotated about its centrepoint which wouldn’t register as a change. It wouldn’t represent some elements well who don’t have a logical centroid also such as curved walls, rooms etc.

The method probably needs Python when dealing with larger element sets. I’ve attached a little sample of how it might look using BiMorph nodes only for 1 node. Python would help, but probably isn’t required.

Compare.dyn (47.4 KB)
Before model.rvt (1.4 MB)
After model.rvt (1.5 MB)


Amazing solution!!! thanks a lot i will use something like this!

Thnaks a LOT!!

1 Like

There’s a series of node in the Data-Shapes package to do exactly that


They wanted a tolerance for deviation, mentioned in first post. I think data shapes uses vertices so not sure a tolerance is workable in this manner, easily at least?

someone would say why to do that if BIM360 does it with a simple click and gives an Excel report by element ID hehe, thanks very useful

1 Like

Well my company is not paying for BIM360 so i have to find others solutions. We use a différent server than BIM360.
But i agree is the same thing. In my cade i nees to see changes of more than 5cm and even with BIM360 is not possible.