Change wall location line before adding the wall so wall position changes in the beginning


I’m trying to get the walls that picked from the lines from Revit to get the right location line from the beginning.

The code in the upper group changes the location line to core face: interior after the second run. But the problem is that the walls don’t get the core face: interior location line from the beginning. So, the wall starts with wall center line the first run and when the walls are selected. And when the script runs for the second time the wall position doesn’t change but only the location line.

How can I make the wall location line change before adding the wall? So, the wall position will be correct before adding the wall. I know you can do it in Revit but how can we do it in Dynamo?

So basically, how can the code from the upper group run before the group downwards?

Not sure what your issue is, but it sounds like you are looking to create a wall by the face of the core rather than by the centerline. I am not sure this is exposed by the API.

I know you can offset the line by the distance from the centerline of the wall to the face of the core, effectively finding the wall’s centerline as if the face aligned.

Hi @deen86,

You can use the Wall.ByCurveAndLocation node from WombatDynamo package.
If I understand correctly, the lines are on the interior side of the walls.


Thank you so much. That was exactly what was needed.

You’re welcome.
Remember to mark the topic as solved if the post answers the issue.

1 Like

why the height has to be divided by 92902.8?

The custom node seems to have a small glitch with the height input. I don’t know what does 92902.8 refer to as unit but it seems to work (in metric units).

1 Like

Hi, I’m testing this node right now. Did exactly what you did in your example, but it throws an error. Do you have any idea what might be causing it?
(snapshot attached)

P.S. The Wall constructor in the API is an overloaded function. Do you know which input represents the location line when creating a new wall?


try to feed simple line, not from Revit.
Share Revit and Dyn files, we’ll try to fix it.
Just checked with model lines and Element.Curves. Works fine.

1 Like


There has probably been a change in the API for Revit 2021.
Try instead with the Wall ByCurveAndLevel node.
Wall ByCurveAndLevel

1 Like

tried it. also, changed the location line input.
Still doesn’t work…

Also, tried to convert lines to curves and vice versa . same result.
and here’s the .dyn file
Walls_LocationLine_test.dyn (15.6 KB)

thanks, Alban.
tried it now. it creates the walls, but still wouldn’t align them to the location line (uses center-line for location)
it only sets the “Location Line” parameter, while a need to actually offset the wall.

1 Like

Well, try to offset curve first with 1/2 wall width.

Is that how your node works? Cos as far as I understand, there’s no API method for creating a wall by an exterior/interior location line…
If I don’t find any other solution, I’ll go for the 1/2 width trick.

What Revit build are you using?

Can you copy-paste the full text of the error message too? Some stuff is being cut off.

Hey! Did you find a result for this?

I am facing the same issue here… thanks!

@garbozhu did you try? Change wall location line before adding the wall so wall position changes in the beginning - #10 by Alban_de_Chasteigner

I am having the same issue. Is there more advise on how to use this node so that the walls are created on either the interior or exterior face on the annotation/model line? My walls are created on the centre line, every time.

1 Like

Same here. I don’t think there’s any other option.