Trim Surface and Replace with Window or Door

Hi all, I’m very new to Grasshopper and in need of your advice please.

I have defined a large commercial building/‘shed’ with variable roof type and bays, optional lean-tos and individual walls that can be added or removed.

I’m looking for a way to list all possible walls so that a user may select a wall to trim and replace with a custom sized window or door (basic rectangles are all that is needed). We will require the ability to add an unlimited number of windows and doors in Shapediver’s API.

I have attached the file and apologise if it burns your eyes! Any pointers would be gratefully received.

Portal (224.4 KB)


Try this! You can select each facade portion individually and add windows and/or doors.

Portal (240.6 KB)

Thank you so much - this will be a huge help!

Hi All,

A big thank you to P1rAt3b0y for your example - I have made some progress since, however a problem I’m having is making a window transparent when it is narrower than the wall surface it is placed on. Is there something I can add to rectify this, or should I try using Solid Difference?

I have attached the definition - window/door details are at the bottom. Many thanks in advance for any advice.

Portal (240.7 KB)

Hello @abbie.jane,

I understand your dilemma. Generally speaking, it is quite complex to come up with a flawless solution.
I’ve changed the script to solve your problem and it should now be able to produce windows larger than the wall itself. Windows higher than the wall or windows wider than the wall are possible.
However, windows higher and wider than the wall still produces funny errors. I guess that would be much more difficult to solve, but you could simply make the entire wall a window in that case.

Take a look at the file! I’ve annotated the changes.

Furthermore, you should tag me when you reply again, since I won’t be notified otherwise. You can tag people in your posts by simply putting an @ before their username, like I did above.

Happy holidays! (255.6 KB)

Hello @P1r4t3b0y

Thanks so much for your help (again!) and apologies for the delay in replying. This will definitely help for a large sliding door that covers the end of a building, e.g. aircraft hangar.

What I was having trouble doing was making a window/glass door that is smaller than the wall appear transparent. Any ideas would be much appreciated.

Hi @abbie.jane,

You’re welcome and thanks for replying! Don’t worry about the delay.
In order, to display geometry as transparent, simply hook it up to a Custom Display and plug in a Swatch component. By clicking on the color display of the Swatch component, a menu dialogue opens, where you can change the ARGB values. You can play with the alpha value to display your geometry as more or less transparent.

To baked geometry in Rhino, you have to assign a material that’s transparent. There are a couple of preset materials (e.g. glass, water, etc.) that make this pretty straightforward. These material settings are meant for rendering purposes.