Midpane blind in HoneyBee-Grasshopper

I wanna simulate a midpane blind in honeybee, but Honeybee just know internal and external blind.
i’ll appreciate you if helping me.
thanks a lot

Hi Massome, It should be an easy change to support midpane binds but since Chris has initially implemented this I just leave it to him to reply to your question: https://github.com/mostaphaRoudsari/Honeybee/issues/234

Hi Masoome,

Hi Masoome,

I should have seen that you had started a discussion before posting to the group.

Since that posting, I have realized that, by mid-plane blinds, you meant blinds in between two panes of glass. I have spent an hour just now trying to work in the capability of this within the typical shades workflow that I set up but the issue is a lot larger than I have realized. In order to run blinds between two panes of glass through E+, you have to set up a construction that contains a “WindowMaterial:Blind:EquivalentLayer” in the window construction. Accordingly, to integrate this into HB now, I have to create a whole new material type of Blind:EquivalentLayer and I will have to find some other way of allowing people to set the shading control when they create this material. How urgent is your need for blinds between glass and would it be possible for you to just pot-process your IDF with the IDFEditor for the time being?


Hey Chris,

Thank you for looking into this. Can Masoome just uses a panel to generate the WindowMaterial:Blind:EquivalentLayer and then apply it to HBFenSrf? I haven’t looked at your code for this particular case but if you are following general Honeybee’s style then, in theory, this approach should work?



It is not that easy since Masoome needs to both create this WindowMaterial:Blind:EquivalentLayer and put a Shading Control object into the IDF to say when the blinds are pulled. This shading control must be applied to the EPFenSrf that has the blind layer in it. I am not so sure of the best way to implement this since our traditional method of simply making the material will not solve the whole issue of writing both the shading control object and the material layer into the IDF.

Let me know if you have any suggestions on how you might want it implemented.


Hi Chris, Thank you for explanation. I will take a closer look later and get back to you if I have a simple solution for this but based on what you mention here we need extra changes to take care of this new object.

Hi Chris

I wanna assess the effect of between glass blind on the cooling and lighting load simultaneously and owing to the result of E+ lighting is inaccurate, I choose HB.

Unfortunately it’s force and should do it in these days. I’m lookinf for a suitabe software for my work.

Best regards


Hi Chris,

My apologies. You are right. I get confused with a previous discussion where importing IDF files don’t take the shading control.

Saying that, correct me again if i’m wrong, now that you mention this, i don’t think midplane blinds is a different animal (it is an animal but not so different). In the ShadingControl section you can choose the BetweenGlassShade for the blinds. Your ShadeGenerator allows only interior/exterior, but the midpane can be implemented. It is true that if your window construction is not well defined weird things can happen … but the possibility is there.

BTW, this is how DesignBuilder does it.

Thanks for proving me wrong :slight_smile:



I originally tried to respond to this issue by editing my ZoneShades component to accommodate mid-plane blinds but I was not successful. This is because, when you do just interior or exterior blinds, the glazing construction does not need to include the blind material. All that I need to write into the IDF is the blind material and the ShadingControl object and I leave the window construction alone. For the mid-plane blind, I would need to edit the whole window construction inside the component, which is difficult to do.

An idea just popped into my mind, perhaps if the user inputs a full window construction for the blind material, I can have the component recognize it as an mid-plane blind construction and only write the shading control object into the IDF. Does this sound like a good way to implement it? Most of the other inputs of the ZoneShades component would have to go blank and the geometry preview of what the shades look like would be blank because the user would define the angle and width of the shades in the material layer component. But you would be able to use the component to assign the schedule.

Let me know if this sounds good and, if so, I will try to implement it soon.


I asked about the problem of different slat angles and the same result. The problem is that the blind is on the equivalent layer but the glazing material and the gas material aren’t. So if the glazing and the gas are defined on equivalent layer, it’ll be work. But I don’t know how to define them on the equivalent layer.

Hi Chris,

That sounds good … but complicated. I’m not sure if this will be the “final” solution for the shading and shading control. Sounds more like a temporary one. If so, i’m not sure you like/want to do that.

In the meantime, i’ve just get an answer from the helpdesk regarding the issue qith the equivalent materials. It reads so:

You must use Construction:WindowEquivalentLayer with all *EquivalentLayer materials. The problem with the dropdown lists in IDF Editor has been corrected. For now, you need to paste or type in the material names.

So as we suspected there is a bug, but not a big one on their side. We just need to use the Equivalent definitions all the way and not just with the blinds.

I tried to put this together (see attached, red group with ??? marks), but get an error that says:

  1. layer_1 is not a valid material name/definition.
    Create the material first and try again.

So, i think it will be easier to implement this new Construction type … is it?


SimpleEnergySimulationBase_Blinds_AY.gh (516 KB)

Indeed Masoome. See my previous reply. Let’s wait for Mostapha/Chris’s response on this one.

Somehow i see a coming up solution.


Abraham and Masoome, I need your help to know what we can do to get this to work. Is it working right now? Do we need to implement something to Honeybee? If it is not so much work then I might be able to do it during the coming Holidays. Can you please summarize where we are with this issue?


Hi Mostapha,

In my opinion the “easiest” way is to create a new Construction type (Construction:WindowEquivalentLayer) in HB. If you see above the response from the Helpdesk you need this type to use all the “Equivalent” materials. For now, since we can write in a Panel the definitions (as Chris started, and i put together all the definitions in my last attachment) we only need the gate to be able to use them. In this file you can see the definitions, but they are not written in the IDF and/or assigned to the geometry.

Chris’s proposal seems to me a bit more difficult to implement … but maybe i’m wrong. You two know better.

Makes any sense?


Hi Mostapha,
As Abraham says, Since the blind and window should have same kind of construction type, We should define the rest of window materials on “*:EquivalentLayer objects” to have a correct answer.


Ineed to download this file.but i cant.please help me

Older discussions are automatically ported to this discourse site but links to downloads don’t work. For those older discussions, you can easily just search for the discussion topic on the old site:

In this case, you will find the link to the file that you wish to download here: