# Outline of wall

**URL:** <https://forum.dynamobim.com/t/outline-of-wall/96318>\
**Category:** Revit\
**Tags:** revit, dynamo\
**Created:** [December 12, 2023, 9:04am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318 "2023-12-12T09:04:31Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![bvs1982](https://avatars.discourse-cdn.com/v4/letter/b/43a26b/32.png) [@bvs1982](https://forum.dynamobim.com/u/bvs1982)\
**Post date:** [December 12, 2023, 9:04am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/1 "2023-12-12T09:04:31Z")

</div>

I am looking for a way to get the outline from (a) wall(s) ignoring any openings in the wall(s).  
I found / looked at some similar topic but couldn’t really find what i was looking for.  
Might be possible I missed it.  
For now i am looking at two approaches but i have a question for both of them.

_Question one_

![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/5/e/5ed3de9b16411cae8c0e1c9d76a67eb53ce8ac6d.png)

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/a/c/acfca670ae32525f3454cd26ead8cb3b8dc3604d.png).

Is it possible to pull those Surfaces to the same Plane?

_Question two_

How can i close (two) parallel lines at the end (so i end up with a closed rectangle)?

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/f/1/f1e5c5fe265b7409925d1e5f8cc073fe5415bd61.png)

**PS**  
It is for getting a building outline but (for now) i don’t wanna use like some of the solutions proposed  
in other topic (like Room Boundary Lines with a Room around the building).

[WallCurvesFloorPlan\_WIP.dyn](https://forum.dynamobim.com/uploads/short-url/c2VgI9FYdHcxhsJRE84crSUUsOn.dyn) (83.4 KB)

---

<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:** [December 12, 2023, 9:25am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/2 "2023-12-12T09:25:22Z")

</div>

> [@bvs1982](#):
>
> It is for getting a building outline but (for now) i don’t wanna use like some of the solutions proposed  
> in other topic (like Room Boundary Lines with a Room around the building).

Best to use the location line then, as it is one geometry operation to read and offset by 1/2 the walls thickness.

Creating the Room Separation lines and room before rolling back is another option. You could also look into this class of the Revit API to simplify which elements you select or build the solid.

---

<div class="post-metadata">

**Author:** ![bvs1982](https://avatars.discourse-cdn.com/v4/letter/b/43a26b/32.png) [@bvs1982](https://forum.dynamobim.com/u/bvs1982)\
**Post date:** [December 12, 2023, 9:32am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/3 "2023-12-12T09:32:23Z")

</div>

> [@jacob.small](#):
>
> Creating the Room Separation lines and room before rolling back is another option.

For now i really want to stay a way from Room Separation Lines.

> Best to use the location line then, as it is one geometry operation to read and offset by 1/2 the walls thickness.

I figured that much, but i kinda need the two parallel lines to be closed at the end  
so i end up with a closed rectangle.

And for question 1. Is it possible to pull those surfaces to the same plane though?

---

<div class="post-metadata">

**Author:** ![christian.stan](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/christian.stan/32/166296_2.png) [@christian.stan](https://forum.dynamobim.com/u/christian.stan)\
**Post date:** [December 12, 2023, 10:05am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/4 "2023-12-12T10:05:25Z")

</div>

hi, here is a potential lead

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/9/f/9f3bb6032ffa2f317d7cea291dd0ff5e042c2253.jpeg)

cordially  
christian.stan

---

<div class="post-metadata">

**Author:** ![Kai](https://avatars.discourse-cdn.com/v4/letter/k/cc9497/32.png) [@Kai](https://forum.dynamobim.com/u/Kai)\
**Post date:** [December 13, 2023, 8:57am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/5 "2023-12-13T08:57:43Z")

</div>

Hi @bvs1982 Could you not grab the tops of walls and move them down by there unconnected height?

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/e/3/e317659a2e7d9be6f9395a8d3213c24a08a2ba00.png)  
 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/3/8/380a845784e760a45209e0448491d4dcd8ed5c2f.png)

---

<div class="post-metadata">

**Author:** ![bvs1982](https://avatars.discourse-cdn.com/v4/letter/b/43a26b/32.png) [@bvs1982](https://forum.dynamobim.com/u/bvs1982)\
**Post date:** [December 13, 2023, 9:11am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/6 "2023-12-13T09:11:14Z")

</div>

@Kai

I was thinking the same, but i wanna explore some possibilities in case i can’t use one  
of them (in a project) for whatever reason.

---

<div class="post-metadata">

**Author:** ![sovitek](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/sovitek/32/116237_2.png) [@sovitek](https://forum.dynamobim.com/u/sovitek)\
**Post date:** [December 13, 2023, 9:37am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/7 "2023-12-13T09:37:16Z")

</div>

Hi @bvs1982 not sure if it could help but you can get the wall gweometry without holes/inserts with element.geometry + from clockwork

 ![Skærmbillede 2023-12-13 103328](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/f/9/f98ae55ecbbc4b877d99b2f12e37c1160e016896.png)

---

<div class="post-metadata">

**Author:** ![bvs1982](https://avatars.discourse-cdn.com/v4/letter/b/43a26b/32.png) [@bvs1982](https://forum.dynamobim.com/u/bvs1982)\
**Post date:** [December 13, 2023, 9:56am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/8 "2023-12-13T09:56:52Z")

</div>

![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/3/5/354235e2db00342ae7cb61aeb7de2d0a9ff960ab.png)  
 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/3/8/3885e66c7baf6b59cc2fc6567fb165eddd802de2.png)

This 👆 anwered this 👇 for me. Thanks you for that! ❤ @Kai

> Is it possible to pull those surfaces to the same plane though?

---

<div class="post-metadata">

**Author:** ![bvs1982](https://avatars.discourse-cdn.com/v4/letter/b/43a26b/32.png) [@bvs1982](https://forum.dynamobim.com/u/bvs1982)\
**Post date:** [December 13, 2023, 10:13am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/9 "2023-12-13T10:13:32Z")

</div>

Also thanks @sovitek! Didn’t know about this node.  
Also keep this in mind. This one only doesn’t work when `Edit Profile` is used on a wall.  
But great addition none the less!

Last one to try out is @christian.stan suggestion / method.

---

<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:** [December 13, 2023, 10:16am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/10 "2023-12-13T10:16:46Z")

</div>

Likely less complex to pull the location of the walls, offset by 1/2 of the types thickness and -1/2 of the types thickness, and lift between the two curves.

It won’t account for wall joins, but neither will projecting surfaces, which also have difficulties around non-planar top openings when using Transpose. [This](https://dictionary.dynamobim.com/#/Geometry/Curve/Action/PullOntoPlane) method (using the perimeter curves as a PolyCurve) should square that away, though it will be a trade off for speed.

---

<div class="post-metadata">

**Author:** ![sovitek](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/sovitek/32/116237_2.png) [@sovitek](https://forum.dynamobim.com/u/sovitek)\
**Post date:** [December 13, 2023, 10:20am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/11 "2023-12-13T10:20:20Z")

</div>

allright havent test so much 😉 i guees then i would go what Jacob suggest

---

<div class="post-metadata">

**Author:** ![bvs1982](https://avatars.discourse-cdn.com/v4/letter/b/43a26b/32.png) [@bvs1982](https://forum.dynamobim.com/u/bvs1982)\
**Post date:** [December 13, 2023, 10:26am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/12 "2023-12-13T10:26:45Z")

</div>

> [@sovitek](#):
>
> allright havent test so much 😉

No worries. Any help is appreciated! I’ll don’t mind doing the testing 😄.

> i guess then i would go what Jacob suggest

Also gonna try that. Just wanna try some option and then see what works best for me.

Thanks for all the help thus far people!

---

<div class="post-metadata">

**Author:** ![bvs1982](https://avatars.discourse-cdn.com/v4/letter/b/43a26b/32.png) [@bvs1982](https://forum.dynamobim.com/u/bvs1982)\
**Post date:** [December 13, 2023, 11:06am UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/13 "2023-12-13T11:06:22Z")

</div>

> [@jacob.small](#):
>
> and lift between the two curves

Like @christian.stan example or is there another way to ‘lift’?

Or is this the node that does that?

![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/b/6/b6ba68ed5e850f8a165ce62d3868f9b92a10ee17.png)

Answered my own question. Apparently it doesn’t. Test / try first ask question later 🙈.

> [@christian.stan](#):
>
> hi, here is a potential lead

This is more than a lead!

---

<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:** [December 13, 2023, 1:12pm UTC](https://forum.dynamobim.com/t/outline-of-wall/96318/14 "2023-12-13T13:12:35Z")

</div>

> [@bvs1982](#):
>
> Like @christian.stan example or is there another way to ‘lift’?

Sorry a meant ‘loft’, but autocorrect pushed to lift on my new phone. Loft is now preferred in my dictionary though so hopefully it won’t happen again. 🙂

That is the node, but likely your data structure going into it isn’t correct.

From Element.GetLocation you should use a Curve.Offset node with the location curve as the curve input and that value set to @L1. The distance value for now can be `[-1,1];` (or larger if you are in mm for project units). From there you should have a list of pairs of of curves. These can loft into a surface at the wall’s location line (not necessarily planar, but you can now move them to a common elevation as needed via the translate method shown before).
