Rhino 6 BETA & THERM components issue

I am having issues with the THERM coments when I use Rhino 6.

I went back to the THERM Export Workflow example to trouble shoot. The example works fine in Rhino 5 but when I try to run it in Rhino BETA the Honeybee write THERM file component fails:

  1. Your simulation did not run correctly because of the following error:
    The geometry contains voids or overlapping regions. The edges surrounding these regions will be highlighted in red. You must fix this problem before simulating. Regenerating Boundary Conditions may correct this in some cases.The geometry contains overlapping regions. The edges surrounding these regions will be highlighted in red. You must fix this problem before simulating. ID(s): 12There are materials that lie outside of the Boundary ConditionsModel geometry and Boundary Conditions need to be properly defined before a calculation can be performed.

The geometry seems fine nothing is highlighted in red and it runs fine in Rhino 5.

Any ideas?
Thanks
Jonny

Hi @JonathanStory, The only difference that I can think of is different tolerance in documents otherwise the result should be identical.

@chris thoughts?

That warning is one that is generated by Therm so this means that it got past all of the Rhino-based checks inside the components without any issues. My guess is that it is related to the tolerance or units as @mostapha suggests. What tolerance and units are you using?

OK so it seems like I am missing something fairly simple, but can’t figure it out.
Which tolerance and units should I be checking?

The Rhino settings are the same between both versions.

But when I compare the .thmx files which are output it is clear there is a difference in the nuber of decimal places used.


Rhion 5 on left Rhino BETA on right.

Thanks
Jonny

@JonathanStory ,
This is very odd indeed. I’m trying to get a copy of Rhino 6 so that I can see this myself. It looks like the issue might actually be in the copy of ironPython that Rhino 6 is running since it’s adding all of these extra 0’s when we use the python round() function.

I was able to recreate the issue and it seems the issue is not with the tolerance. The order of vertices in all of the Rhino 6 polygons is reversed for some reason. This is going to take some time for me to investigate but I’ll try to have this addressed before the next release.

I just pushed a fix for this issue:


It’s a hacky solution but it gets the job done. So, if you sync with the github, the THERM workflow should now run without issues in Rhino 6.

When I re-write the THERM workflow for HB+, I’ll have to make sure that I am not as dependent on Rhinocommon.

Thanks for finding and reporting this issue @JonathanStory !