How Feasible is a Dynamo Script for Checking Wheelchair Turning Radius?

Hi everyone,

I’m completely lost on how to start a Dynamo script to check wheelchair turning radius compliance in a Revit model. The goal is to verify if spaces meet the minimum 750mm radius (1500mm diameter) required for accessibility.

My idea (but I don’t know how to implement it) is to:

Identify key locations (e.g., in front of doors, intersections, and open areas).
Generate circles to represent the turning radius.
Detect intersections with walls, furniture, or other obstructions.
Visually highlight non-compliant areas in Revit.
I have no idea how to structure this in Dynamo or if it’s even feasible without using Python or external tools. Could someone guide me on where to start? Are there specific nodes or workflows that would work best for this?

Sounds doable, but I think the radius rules I am used to are a bit different.

When I have done this in the past it’s usually been easiest to take the room’s floor surface, remove any obstructions, and then offset that surface’ perimeter curve loops into the surface by the radius of the circle. Take the outermost loop and patch that into a surface, and trim the surface with the offset loops. If that works (meaning the surface has a area) your space is accessible. If there is no space left over then your room in inaccessible.

There are exceptions - a room in which the circle is perfectly inscribed would result in an invalid offset - but generally you can identify which spaces are set and which need review.

If you need to draw the circle, you can create a point on any of the inset loops and draw a circle there on.

Thanks for the explanation! The floor surface and offset approach makes sense.

How would you handle removing obstructions in Dynamo? Would filtering furniture by category work? Also, do you use Curve.Offset for perimeter adjustments, or is there a better method for irregular rooms?

Lastly, could you recommend any videos or tutorials to better understand this workflow? A visual guide would really help.

Appreciate your help!

First it is get the elements, which I think is what you’re after. All elements of category likely works best - could also do all elements in view though. Hard part is narrowing down ‘what to include’ as in my experience furniture doesn’t always count as an obstruction (i.e. the desk chair does not count) but in some cases it does (the reception desk).

PolyCurve.OffsetMany was built with this in mind.

Nope - not something I have seen built as a demo, but it is a good intermediate difficulty workflow as the level of conceptual difficulty is fairly low but you’ll need to know those concepts to apply them.

Run the entirety of the primer from start to the end of the Revit chapter (and further if you would like), skipping nothing to get your head around stuff. There is also the Dynamo Office Hours YouTube series which covers some of the more difficult concepts in some detail, and a bunch more ‘intro’ tutorials out there. When you’re ready give it a shot on paper first - write each step end to end. After that move to using nodes. If you get stuck post here and include your graph and a sample Revit model.