# Finding the distance between rooms within a model

**URL:** <https://forum.dynamobim.com/t/finding-the-distance-between-rooms-within-a-model/113576>\
**Category:** Revit\
**Tags:** dynamo\
**Created:** [January 5, 2026, 11:58am UTC](https://forum.dynamobim.com/t/finding-the-distance-between-rooms-within-a-model/113576 "2026-01-05T11:58:43Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![TRUSSElleA](https://avatars.discourse-cdn.com/v4/letter/t/74df32/32.png) [@TRUSSElleA](https://forum.dynamobim.com/u/TRUSSElleA)\
**Post date:** [January 5, 2026, 11:58am UTC](https://forum.dynamobim.com/t/finding-the-distance-between-rooms-within-a-model/113576/1 "2026-01-05T11:58:43Z")

</div>

I am trying to find the path distance between, selected rooms (toilets) within a builing, is it possible to find the distance between these points and then any other point within the building. This is to check that all toilets are within 40m of anywhere on each floors. Would you then have to do this for each level individually or can it be done as one. If this is possible what is the best way of doing it?

---

<div class="post-metadata">

**Author:** ![jacob.small](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/jacob.small/32/161030_2.png) [@jacob.small](https://forum.dynamobim.com/u/jacob.small)\
**Post date:** [January 5, 2026, 12:19pm UTC](https://forum.dynamobim.com/t/finding-the-distance-between-rooms-within-a-model/113576/2 "2026-01-05T12:19:22Z")

</div>

Yes, this is doable. Look into the VASA package to do so. For a ‘how to’ check out the comprehensive guide which is available on YoutTube.

You can do level by level, or the entire model in one go.

Basic process will be as follows:

1. Get all geometry which defines a walkable surface or obstruction as solids (this will be a bit slow for larger data sets)
2. Union the solids into a single solid (this will be quite slow for larger data sets - you may want to reduce the scope of the analysis to ‘what you see in a view’ accordingly)
3. Convert the single solid to a voxel model (now you’re into VASA - voxel model by geometry)
4. Convert the voxel model to a path model (analysis portion of the VASA library)
5. Get the ‘toilet’ points (not sure if you mean doors, the toilet fixture, or the room, but all report a point)
6. Shift the points up by 1 voxel height (defined as part of step 3)
7. Build a distance field with a maximum distance of 40m for each point
8. Extract the reachable voxels from the distance fields
9. Union the reachable voxel models into a single voxel model
10. Extract the traversable voxels from the path model (step 4)
11. Subtract the reachable voxel model from the traversable voxel model
12. Display the remaining voxels - these areas are not within 40m of a toilet point
13. Dispaly the reachable voxels - these areas are within 40m of a toilet point

Give it a shot and see where you get.

---

<div class="post-metadata">

**Author:** ![Andrew\_Hannell](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/andrew_hannell/32/103315_2.png) [@Andrew\_Hannell](https://forum.dynamobim.com/u/Andrew_Hannell)\
**Post date:** [January 5, 2026, 1:12pm UTC](https://forum.dynamobim.com/t/finding-the-distance-between-rooms-within-a-model/113576/3 "2026-01-05T13:12:44Z")

</div>

@TRUSSElleA

an alternative approach would be to **reduce** your model into a network or topological graph representing nodes (rooms and toilets) and the paths (connections) between them.

Think of an ants nest with nodes and all the possible paths between them.

Then use the Dynamo Topologic package (refer this from a fellow Aussie @GavinNicholls[https://youtu.be/uHvcHXku\_ys](https://youtu.be/uHvcHXku_ys))

Google Dijkstra’s algorithm if you want to understand how it works

Voxelising an entire model (that is what VASA does) can be very computationally intensive.
