ladybug-tools / spider

:spider_web: 3D interactive analysis in your browser mostly written around the Three.js JavaScript library
http://www.ladybug.tools/spider
44 stars 15 forks source link

Update 2017-10-11 ~ Build Well R9.1 #40

Closed theo-armour closed 6 years ago

theo-armour commented 6 years ago

@ladybug-tools/spiders

image

Full Screen: Build Well R9.1

I was about to give up on getting walls with openings into Open Stdio, but finally things began to fall into place. There's still overhangs and fins to be added which should not be difficult. And another horror still to be completed is building orientation.

The main thing is that the gbXML file is starting to look clean. And we can start to explore what further data can be added by algorithm.

Change Log

mdengusiak commented 6 years ago

Hi, we slowly getting there :) I tried to test export but it dose not work for me. Nothing happens when I click it here image

can we add units image

site settings does not work image

theo-armour commented 6 years ago

I tried to test export but it dose not work for me. Nothing happens when I click it here

My bad. I wrote the blog post and the forgot to push the new build. Silly me. ;-)

R9.1 should save OK.

can we add units

Currently the core of the script is unitless. The issues is that the menus do some validating - and currently the validating numbers are more suited to feet/inches. There has to be a way to reconfigure the menus on the fly.

But now you make me think about: one of the tricks about this script is that it's easy to create new menus. So we could have menus for m/mm, cm or ft/in and be able to switch between them. Which also means menus in different languages.

site settings does not work

oops! I forget to copy the page.

Should be back in R9.2 - which I am pushing now.

bwelle commented 6 years ago

@theo-armour

The adjacent buildings tab seems broken. None of the inputs when change effect visualization. First time I've seen this. Reminder, main building shouldn't appear here as default, and should be able to be modified by inputs in adjacent building screen.

Actually, I see none of the inputs anywhere in Build Well change the geometry. This an update issue?

bwelle commented 6 years ago

Wait, I just launched again and now they do work. Strange. thoughts?

bwelle commented 6 years ago

Integration of Building Settings fields into main shapes...

Are you able to wire in Anton's changes? You currently have them in Building Settings, yet inactive. Facade A, B, C, and D should really be N, S, E, and W, calculated as the building is rotated with parameter orientation. I think I mentioned before, the # of faces does not matter. All faces, whether there are 4 or 40 will all be binned into N, S, E, and W.

North = 316 deg-44deg East = 45 deg-134deg South = 135deg-226deg West = 227 deg-316deg

So rather than WWR in current Box and L tabs, you could put WWR N, WWR E, WWR S, and WWR W. You can also add a field for Fin Depth and Overhang Depth by orientation to main tab. That's in Anton's code too.

bwelle commented 6 years ago

@theo-armour Change Perimeter Depth default to 10 so core zone is valid based on rest of defaults.

bwelle commented 6 years ago

@theo-armour gbXML export seems to work for me. Not sure why not in above comments.

bwelle commented 6 years ago

@theo-armour I still like the unitless approach, but I think you will need an IP/SI version of the tabs (or a field for each shape) since the gbXML export needs to know the units. If the user doesn't specify in the tab, you won't know if they are thinking metric or IP.

bwelle commented 6 years ago

@theo-armour

Working on equations spreadsheet now as you requested.

bwelle commented 6 years ago

@theo-armour I'm looking at the gbXML export from Build Well for the L-Shape. Some comments/recommendations...

Windows, walls, and shading all appear correct (except for overhangs not coming in).

There is an issue with how you define floors and roofs. Right now you have two big rectangles for both roof and floor. Since we are not including the "Space Boundary" definitions in the gbXML files, this will cause a problem for us. The roof should be split up into the same number of segments as zones. Meaning, there should be a separate roof object for each zone. So 7 roofs for L, and 5 roofs for Box. Each with the x and y coordinates those of the space footprint, but at the Floor Height z height. Would this take much work to fix? It makes debugging OS geometry definitions much easier, and prevents 2 "roofs" from covering one zone, like what happens now for the core zone. So the surface names would be Roof.1, Roof.2, etc. and Slab.1, Slab.2, etc. for both floors and roofs, then the surfacetype have the detailed object description, like I see you already have in gbXML file.

Actually, I see you have "bw-surface-1" etc and "bw-opening-1", and "bw-shad-1" etc. So you are uniquely naming the surfaces. I'm wondering why once you import into OS, the opening names are maintained, but the other surfaces create an OS handle with a long string.

So in summary, what would make things easy for us is to make Walls (interior and exterior) Wall.1, Wall.2, etc., Windows would be Window.1, Window.2, etc., Shades would be Shading.1, Shading.2, etc, and Floors and Roofs would be Slab.1, Slab.2, Slab.3 etc., with the surfacetype specifiying if it's a Roof, SlabOnGrade, or Floor. Zones are Space.1, Space.2, etc.

I see OS shows the name not the surface ID. I wonder if we can add surface ID. I guess OS does what it does. Solution...make SurfaceID and Name the same in the gbXML file.

then it would be nice if we could get OS data window to show surfacetype. Not sure how.

theo-armour commented 6 years ago

@bwelle

gbXML export seems to work for me. Not sure why not in above comments.

'Control-Shift-R / Hard Reload' is your friend. You cache is full of old files - which often get called instead of newer files. Welcome to the issues of developing software faster than your browser can deal with.

Roofs

Can do but, wow, coding boredom here we come.

naming

can do

Are you able to wire in Anton's changes?

Will come in once the new menus start coming in.

I guess OS does what it does.

Yup. And remember that Dan Macumber built his code on top of my demos from 2014. You will note that his HUD looks just like mine. ;-)

then it would be nice if we could get OS data window to show surfacetype. Not sure how.

We can do this in gbXML viewer. ;-)


BTW, should I be thinking about resurrecting my OSM 3D file viewer?

bwelle commented 6 years ago

@theo-armour

Can do but, wow, coding boredom here we come.

Ok, let me discuss with Dan Macumber. The issue is this...most applications "split" a roof or floor surface to just the segment that bounds the space. They define this as Space Boundaries in gbXML file. Both Space Boundaries and Surfaces can be defined. Chien Si said we can ignore space boundaries for simplicity, which means, as is, we would have two roof objects bounding a single space in many cases. I didn't think OS API could support this to correct auto split the surfaces and assign multiple roof or floor objects bounding a single space (since Energy Plus, or the OSM, can't have this. The only definitions in the OSM correspond to space boundaries, i.e. surfaces that exactly bound a space. However, I'm not 100% on this, so let me ask Dan. If it can handle it the way it is, I won't ask you to trudge through coding boredom. If the gbXML API function doesn't like this, we will have to make this change. I'll get back to you on this.

Wait a minute, duh, let me just take the gbXML import as is and run it and see if the OSM is generated correctly and runs. I'll test that now.

Yup. And remember that Dan Macumber built his code on top of my demos from 2014. You will note that his HUD looks just like mine. ;-)

Aha, interesting. Well, I guess it doesn't really matter what the pop up shows in OS, we won't be viewing OSM files that way or gbXML. We are just using OS now to import and see what's working what's not. It would be nice to see this in gbXML viewer, for once we know we have down what works in OS, we would only use your viewer for visual checks.

BTW, should I be thinking about resurrecting my OSM 3D file viewer?

Maybe? Seems like OS keeps coming out with new releases so fast I don't know outdated your OSM viewer is. But yeah, when we ping OS API and convert gbXML file to OSM, it would be nice to view the OSM somewhere to make sure the surfaces were split properly from how we have the gbXML file defined currently.

bwelle commented 6 years ago

@theo-armour Reminder on non overhang/fin geometry, the angled interior walls connection core walls to perimeter walls are still not coming through. Though I'm sure you're well aware of that.:)

bwelle commented 6 years ago

@theo-armour Here is the equation spreadsheet. More details to follow.

mdengusiak commented 6 years ago

Hi, I tested again Building Export to gbXML in version Build Well R9.2 and it does not allow me. I am using Chrome and tested Windows 7/10 Pro. Does it work for you?

bwelle commented 6 years ago

@mdengusiak Not for me yet. I just cut and past code for now. Even with control shift r doesn't work.

theo-armour commented 6 years ago

Hm. Checking....

On Fri, Oct 13, 2017 at 1:37 PM, bwelle notifications@github.com wrote:

@mdengusiak https://github.com/mdengusiak Not for me yet. I just cut and past code for now. Even with control shift r doesn't work.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ladybug-tools/spider/issues/40#issuecomment-336561152, or mute the thread https://github.com/notifications/unsubscribe-auth/AAhbKi7wkms2629y4DHTord68vxvJF-rks5sr8oagaJpZM4P2fIm .

bwelle commented 6 years ago

@theo-armour

Sorry, coding boredom looks necessary. Did some testing with API, it has trouble with multilple roof surfaces and floors per space. I'm afraid we will need the roof and floor split by space. Attached sample file generated from GreenSpaceLive

Here is the file what it would look like, pretty much like the rest of the test gbXML files on Github.

theo-armour commented 6 years ago

BTW, you must click 'getBuildingData' prior to saving. If gbXML text does not appear then there's nothing to save

On Fri, Oct 13, 2017 at 1:40 PM, Theo Armour theo@evereverland.net wrote:

Hm. Checking....

On Fri, Oct 13, 2017 at 1:37 PM, bwelle notifications@github.com wrote:

@mdengusiak https://github.com/mdengusiak Not for me yet. I just cut and past code for now. Even with control shift r doesn't work.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ladybug-tools/spider/issues/40#issuecomment-336561152, or mute the thread https://github.com/notifications/unsubscribe-auth/AAhbKi7wkms2629y4DHTord68vxvJF-rks5sr8oagaJpZM4P2fIm .

theo-armour commented 6 years ago

Rats. I have 9.2 exporting edited L shape with success on both Win10 and Chromebook CPUs

bwelle commented 6 years ago

Aha!!!! That was it.:)

bwelle commented 6 years ago

As I was up all night I'm running out of steam. I'll pick up the geometry stuff..equations etc. tomorrow. I have a cool new way of doing the parametrics that people will appreciate.:)

theo-armour commented 6 years ago

screenshot 2017-10-13 at 1 50 50 pm

Do you see something like this before saving?

theo-armour commented 6 years ago

@bwelle

I will add a note to the screen about need to do both steps

mdengusiak commented 6 years ago

No, I do not see this preview on screen. When I click nothing happen

image

theo-armour commented 6 years ago

@mdengusiak

Did you click on the 'getBuildingData' button prior to trying the 'Save...data...' button?

mdengusiak commented 6 years ago

Huuurey it works! THANKS A LOT - this is great!!!! image

  1. I tested now import to TAS and file from https://greenspacelive.com/site/building-generator/ and works well image
  2. I tested to import your file and is crushing on import ...there must be something simple that is missing...will look at this and let you know image
theo-armour commented 6 years ago

@mdengusiak

Currently, the adjacent buildings have have shade surfaceType and name only as fields.

Should we create a special zone for these surfaces?

michaldengusiak commented 6 years ago

I will check this and let you know. Would be possible to name spaces: Level_Number i.e. 00_100, 00_101...., 01_100, 01_101 Etc. I always Start with 100 as sorting is perfect in excel

theo-armour commented 6 years ago

@mdengusiak

Yes, we could generate a space (and zone) for each adjacent building. Would this help with creating better calculations downstream?

bwelle commented 6 years ago

Nope. Shading buildings can’t have zones. Just 5 shading surfaces for a box.

Get Outlook for iOShttps://aka.ms/o0ukef


From: Theo Armour notifications@github.com Sent: Friday, October 13, 2017 5:36:22 PM To: ladybug-tools/spider Cc: Welle, Benjamin; Mention Subject: Re: [ladybug-tools/spider] Update 2017-10-11 ~ Build Well R9.1 (#40)

@mdengusiakhttps://github.com/mdengusiak

Yes, we could generate a space (and zone) for each adjacent building. Would this help with creating better calculations downstream?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/ladybug-tools/spider/issues/40#issuecomment-336583327, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AbaYGkASJDFGY5ZjK26-M1q6HiDoMVo8ks5sr-XmgaJpZM4P2fIm.

theo-armour commented 6 years ago

@bwelle

On a complex thread like this one, it's usually a good idea to review the entire thread.

@chiensiTB We are talking about our shade surfaceTypes in gbXML files creating unrecoverable errors in FZK and what to do about them. We need good suggestions about how to bring shade surfaces into the file in a proper manner. Any thoughts?

bwelle commented 6 years ago

@theo-armour

Here are some clear issues I see with the Build Well gbXML for a box building with overhangs...

  1. First, for adjacent buildings, you don't need to export the ground floor as a shading object. It serves no purpose. And as I mentioned before, zones can't be made for adjacent buildings.

  2. You don't have zones/space defined correctly. Each space/zone here needs to have 6 bounding surfaces...4 walls, a roof, and a floor. Since you don't split the roof into 5 separate surfaces, when you click on the roof surface, you see it is only assigned to Space.4 and nothing else. Space.1, Space.2, Space.3, and Space. 5 have no roof assigned. That's the first problem.

  3. Second problem, same as above for the floor. The entire floor needs to split into 5 surfaces, each referencing a specific zone, otherwise you have what you have now...The floor only bounding Space.5.

  4. You are missing the diagonal walls, 4 of them. These are required to appropriate bound each space. Generate those interior walls, then assign the to the appropriate spaces.

  5. Please add rectangular geometry prior to the planar geometry for each surface. We need downstrearm. This snipped looks like this.

  6. Remember, which zone you call Space.1 (zone.1), or your case bw-zone-1/bw-space-1 must match a certain convention. It can't be random. The the starting footprint position (rotation=0), space/zone 1 is always the lower center zone. The rest are named clockwise ending with the core zone. We need this convention to match up to our zone/space numbers and assigned space names in the Web GUI.

  7. When you get to the second level you have "Space zoneIdRef="bw-zone-1" id="bw-space-8" buildingStoreyIdRef="bw-story-2" conditionType="HeatedAndCooled"Name>space 8". This zoneIdRef is incorrect. It should be zoneIdRef="bw-zone-8"

  8. At the end of the file you have "Zone id="bw-zone-1"Name>zone 1NameDescriptionlengthfront/Descriptio/Zone" for all the zones. I think this is redundant and unnecessary.

  9. I do see that the overhangs are not being exported. I'm not sure why. Looking into it. Start with the above issues and maybe magically the overhangs appear.:)

mdengusiak commented 6 years ago

@theo-armour Bwelle is correct I was referring to the main building and zones naming strategy. Context building just shades

theo-armour commented 6 years ago

@bwelle @mdengusiak

I thought the FZK errors were due issues with shade type surfaces.

I am in the process of preparing a file with all that I know about gbXML. As you may surmise, it is not a long file. ;-)

This brings up a more important point. At this stage, particularly in a fast project like this, bug reports are not that useful. The developer usually already know most of the bugs and in the process of fixing them or doing something fun so they don't even begin to exist or whatever.

The main thing that is needed is guidance as to what are the right things to be doing.

For example. I would be delighted to see full examples of a space, a zone and a storey that you feel we should start with. Examples for different surfaces would be nice too. No, a link to a file that has all of these is not needed. A good, single, valid example of the basic needs would be great. Later, examples of fully features elements will happen too.

Of course, if you cannot do something essential or there is a real crash, then please do report.

But let's look at it another way: suppose you have been coding hard, you fix a ton of things, and you add a bunch of great new features. And all you get back is bug reports: bummer.

Things to consider:

But let's look at it another, another way:

There's nothing sadder than writing something and there's nobody there.

So send in those bug reports faster miles an hour!

;-)

written at 2:30 am

mdengusiak commented 6 years ago

@theo-armour please make sure you have a rest and not overworked your self... take a day or two to relax. It is the last thing we would like to see you exhausted ;) we need you!