How to Create Models with Sloped Roofs in Dragonfly

Hi again @Charlie,
So, yes I have found out the problem and it seems that the geometries need to overlap a bit to perform the union! All good now! Thank you very much!

However, I have created the geometries but when I convert my Breps to HB model I get geometry inconsistencies (see screenshots below). As you can see my geometries have this shape but when converted to HB model they turned into these shapes. Any idea about this? Should I post it with a Honeybee tag?

Many thanks in advance.

Cheers,
Nasia.


Hi @Nasia_Apostolopoulou,

Are you trying to create HB models that have exactly the same geometry as your input image? Ie sloped roofs?

How are you converting your breps to HB model after the solid operation?

Cheers,
Charlie

Hi again @charlie.brooker ,

Many thanks for the quick response. Yes exactly. I am trying to create a HB model with sloped roofs like the ones in Breps. However, the geometry is converted to the one I show you.

So, I am following Chris tutorials in YouTube. Hence, first I am converting the BReps to Buildings with the DF Building from Solid component, then the dragonfly buildings I am converting them to a model with DF Model component and after that I am converting the dragonfly model to honeybee model with DF Model to Honeybee. For my energy simulation I am using the DF model and for visualization I am using the DF Model. Both of them convert my sloped geometry to some random boxes (see image below).

Thank you for your time.

Cheers,
Nasia.


Hi @Nasia_Apostolopoulou ,

I hope you don’t mind that I moved this part of the conversation to a new topic since this was different than the basic Grasshopper geometry question you initially asked.

You can see in the description of the Dragonfly Model Schema that all Room geometry in Dragonfly is represented with extruded floor plates. However, we added a component a few months ago called DF Apply Roof, which allows you to apply a sloped roof geometry to your Dragonfly buildings and the Room geometry of the top floor will automatically be projected onto this sloped roof when it is translated to a 3D format.

If you can upload or post a link to your model of buildings with sloped roofs there, I can put together a sample showing you how to use the new component.

1 Like

Hi @chris ,

Of course I do not mind moving it! So, this new component I don’t have it in my Dragonfly. Should I update my software? And if yes, will my previous files run succesfully?

Thank you for your time Chris.

Cheers,
Nasia

The new component is available with the LB Versioner, which gives you the latest development version of the plugin. We’re also about to release LBT 1.7, which will have it.

You would also need to know how to use the component on your model. If you upload the Rhino or Grasshopper geometry that you are using, I can put together a sample.

1 Like

I will do that, but first I updated the version to v1.6.92 with versioner and my files were not working. I got this error message. Any thought about it? :confused: 1. Solution exception: Failed to import ladybug_rhino: No module named ladybug_rhino.grasshopper

So, I installed that version with the installer .gh file. Now they work again but I don’t have this component.

Hi again @Chris,

I have managed to install the v1.7 (Thanks to Pollination! :smile: ). I am using gismo to import the geometry of footprints. However, I tried to use the DF Apply Roof component and I get this error when connecting the roof geometry. Any idea? The geometry of the roof I am creating it by taking the centre of the building footprint and extruding to this point the base.

Thanking you in advance for your time.

Cheers,
Nasia.

Hi @Nasia_Apostolopoulou ,

Glad that you got the latest version installed. As I said before, I’ll give you a sample Grasshopper file for how to use the “Assign Roof” component if you can post a link or upload a 3dm of the geometry that you are working from. Using that component correctly on a district-scale model requires some finesse with Grasshopper data trees, which I know are not the most intuitive and are much easier to explain with a sample file.

1 Like

RhinoGeometryBuildingsRoofs.3dm (486.0 KB)
Hi again @chris,

Many thanks for the reply. This is a 3dm file of a district I am using. If you could give me a sample on that would be perfect! :slight_smile:

Cheers,
Nasia.

Thanks, @Nasia_Apostolopoulou .

A couple of your building massing geometries did not form closed volumes with the sloped roof but, once I fixed this, you can see a full workflow for applying the sloped roofs here:


sloped_roof_residential.gh (91.5 KB)

1 Like

Hi @chris ,

Many thanks again for all the help you and your team are giving to! I have tried the file with my script and I get this error about some roof geometries.
Does this have to do with the error that you faced as well? And if yes, how could I start in order to correct it? Or any initial step would be very helpful!

Many thanks,
Nasia.

I have just realized that my screenshot hasn’t been uploaded. Here it is. Apologies for that.

@Nasia_Apostolopoulou ,

As the message says, there are overlaps across the roof geometries for each building. Remember that Dragonfly works by just projecting the 2D floor plate onto the sloped roof surfaces, . So when you have an overlap in the roof geometries in plan, a part of the room is being projected onto two surfaces and it’s ambiguous which of the two is the correct one.

So just make sure your roof geometries don’t overlap each other in Top view and you’ll be able to make the roof specification valid.

1 Like

Hi @chris

I am currently using this workflow in Dragonfly to create a sloped roof for the geometries I am simulating using the DF apply roof component. The roof forms accurately when I use Honeybee for individual buildings, but in Dragonfly, it does not represent correctly. The Dragonfly workflow works well for simple roofs but not for complex ones. Is there a way to accurately form the roof using the Dragonfly component, so it matches the original geometry? Please see the attached .dm file for an example of complex roof geometry, along with a JPEG file showing the output comparison between Dragonfly and Honeybee.

image


Ground_Truth.3dm

Regards,
Misbah

FYI, @Nasia_Apostolopoulou . I have made a lot of improvements to dragonfly roofs in the last 3 months. At this point, the overlaps in roof geometries are no longer considered invalid since we resolve all of this under the hood.

Thanks for the model @Misbah . It helped me make an improvement to the roof routine that I just integrated into the code base here:

So running the LB Versioner component and restarting Rhino should be able to give you something other than the flat roof. However, the main reason why the roofs of this Building weren’t translating well is that they are not planar. So they get triangulated upon conversion to Dragonfly objects and this is what you get when the successful roof translation happens:

If you want to actually simulate a clean model here, I suggest rebuilding this massing geometry in a way that makes it planar at the model tolerance you are using (1 mm). Or, if the geometry was created with some other model tolerance, you should be using that.

@chris

Thank you very much for your swift response. I was able to create the geometry I uploaded earlier using the latest update of the Ladybug Tools. However, the DF Apply Roof component is still not working for some specific geometries, and I am unable to place windows on certain buildings (e.g., Building 3 in the attached .dm file).

I am modeling a large number of buildings with different roof shapes, but it seems that the DF component works for some types of geometry and not others. I have attached examples of the geometries that are not working correctly.

Could you please advise on what I should do next?
Thanks,
Misbah

Hi @chris ,

I just wanted to follow up and see if you could help me with this.