Wall length incorrect when walls are joined

Greetings,

I’m trying to figure out a way to get the correct wall length once it has attached to a wall. I need to do this since it it gives out incorrect length and hence an incorrect area calculation when walls are joined. Also is there a workaround in dynamo to solve this issue.
Please refer to the screen shot to just a better understand of what i mean.

The location curve of the wall is used for its length, not its geometry. There’s not a good way of doing this, other than obtaining the internal and external face and determining from there what the length is (e.g. if the wall is angled, the internal and external faces are going to be different lengths, so how long is the wall?).

3 Likes

That’s a good point Thomas. This had not come to my mind. However, currently im dealing with Straight walls and I keep getting wrong length for the BOQ. Is there any workaround what you have for this issue?
Thanks!

Assuming you very basic geometry due to the note about all walls being orthogonal to each other, one of these will likely get what you are after.

Find the best fit line through the points at the base of the wall
This will multiply the unconnected height by the length of a best fit line at the base of the wall. Note that the openings of windows and doors are not subtracted from the resulting area.

  1. Pull the solid from the element with an Element.Solids, and union the result into a single solid per element.
  2. Get the vertices of the solid and convert to points.
  3. Group and sort the vertices by their Z component rounded off to a reasonable degree of precision say 3 digits (Point.Z, Math.Round, List.GroupByKey and List.SortByKey nodes), and take the first (lowest) group of points out of the list (List.FirstItem).
  4. Draw a line through all the points using a Line.ByBestFotThroughPoints node, and pull the length of that.
  5. Get the wall’s unconnected height parameter value and multiply it by the length of the curve.

Extrude the location line and intersect it with the solid
Accounts for windows and doors but will likely be slower due to the geometry intersection.

  1. Get the location of the wall
  2. Get the wall’s unconnected height parameter value
  3. Extrude the location curve by the unconnected height
  4. Get the solids of the wall and union them into a single solid.
  5. Intersect the solid with the extruded surface.

Hello, with some delay, I stumbled across node by chance typing wrong in search (Element.GetActualLocation), and saw its power.



Cordially
christian.stan

2 Likes