Get outer boundary faces from walls

Hi everyone,

I need some help to generate outer boundary surfaces for a set of walls.
The inputs are breps representing rectangular walls.These walls are cut by an intersection plane at a certain height.
Walls can be joined end-to-end or spaced with gaps (e.g., 20mm wide).
I need to create closed boundary surfaces on the outer faces of these walls. The boundaries must be formed by combining: the bottom outer edges of the wall breps and the intersection lines created where the plane cuts through the walls.
When gaps are present between the walls, the standard curve joining components fail to create a single continuous outer boundary.
Thanks in advance!

walls_boundary.gh (9.9 KB)

@Ivan11,

Some of us don’t have the plugins you’re using, so it’s best if you internalize your objects:

Yes, sure, here’s the corrected file!

walls_boundary_v2.gh (30.6 KB)

I see you want your “wall 3 end surface”, which is a ‘turn’ around the corner, before meeting “wall 2”, as part of wall 3, even if not co-planar.

However, how should you treat the corner condition(s) where “wall 1” meets “wall 6”, or “wall 5” meets “wall 4”? Please notify.

For that matter you can use convex hull, using your cut plane for the “Pl” input.

I have manually traced the desired surface over walls 1 and 2 (and wall 3 end surface).

walls_surface.3dm (83.4 KB)

I see—thanks.

Well, I guess I’m still left with part of the question.

'Seems like a simple problem, though you’d have to add specificity for desired corner conditions, especially if you wish to keep them ‘related’ to their parent wall(s).

Here’s something—it might give some insight but I don’t think it’s exactly what you’re seeking:
walls_boundary_v2.gh (46.6 KB)


The surfaces on the closed contour turned out exactly as needed! Now I’m trying to attach these surfaces to the parent walls, but something is going wrong:

Maybe try Trim Tree:

And (maybe?), since I don’t have your plug-in + I really don’t know what you’re doing—just making an assumption:

It works flawlessly for a contour with outer angles! But I added an inner angle, and something broke in the algorithm :worried:

walls_boundary_v3.gh (54.6 KB)

Probably because of the convex hull, which can’t account for that inner wall. Anyway, should be an easy fix BUT you forgot to internalize your objects again. Have I mentioned I don’t have your plugins? :face_holding_back_tears:

That’s strange.. I’m pretty sure I prepared the data:

walls_boundary_v4.gh (39.9 KB)

Thanks—maybe I had a lapsus mentis.

You could try something like this:
walls_boundary_v4.gh (41.8 KB)


The Tekla component requires a separate surface for each exterior wall face:

I implemented your new logic into the previous code, but I got a redundant segment:

walls_boundary_v3_mod.gh (40.5 KB)

Why you keep breaking my script haha

Jokes aside, I’m not sure what any of this means!

Tell the Tekla component I am a fool! I forgot to deconstruct the walls*:
walls_boundary_v4.gh (65.7 KB)

*This tells “all wall faces” to intersect with the “collision envelope”—though not all the faces will intersect, some shared edges will, therefore outputting (still valid) line data resulting from the brep|brep intersection; hence the cull component to keep only the closed regions.

Cheers

Everything works just wonderfully! Thank you so much for your help!