OpenStudio adds the surface in the gbXML to the first adjacent space referenced and adds a reversed surface in the second adjacent space.
However, the first adjacent space referenced is on the 10th floor and the second is on the 11th floor. The vertices given are for a floor (outward normal is down) and it is classified as InteriorFloor. To me this is due to a flaw in gbXML usage, more description is in this any thoughts However, I am not sure that we are completely handling all the possible error cases.
Hi I assume you are exporting gbXML from Revit and importing into OpenStudio, is that correct? If so, which version of OpenStudio are you using? We added this code in version 1.4.0 and above to disregard the surface type specified in gbXML (which may be incorrect). I named my floors 1xxx for 1st floor spaces, 2xxx for 2nd floor spaces, etc., so it was easy for a code that reversed the AdjacentSpaceId's when the first referenced space was a lower number than the 2nd. You can write a code for this if you have a pattern in your space naming (eg. If you bring in the Revit model as a 3D DWG, turn off as much as possible before exporting from Revit.
Your code should look like below, referencing the top space before the bottom. Best method from Revit to Sketchup is to export the floor plan and elevations to DWG and bring those into ace all the elevations to the sides of the plan and rotate them and model it based on that. You could also link a SKP file to the Revit project, instead of importing it. There will be no need to change teh cartesianpoint order. As an alternative, you can use Trimble® SketchUp® to export a DWG file, and then import that DWG file into Revit. All you have to is change the order of the 's. As mentioned above, this is incorrect - the 11th floor space should be referenced first because Revit likes top spaces to be named first for some reason. Surfaces will switch types if you simply reverse the order of your cartesian (not coordinate) points.īUT, I just found an easier way to fix this due to your observations on how the spaces are referenced within the name (thanks! :) it was crucial to how I found this solution)Ģ) You noticed that the 10th floor space (181) was referenced before the 11th floor space (196). You can write a script to change this within the GBXML, see below:ġ) I noticed that the Polyloop CartesianPoint order for ceilings are listed in CCW order while floors are listed in CW order.
But don't worry! You will not have to delete spaces and re-create them in the correct order. The reversed ceiling surfaces would then be assigned to spaces created 2nd. In other words, it seems that Sketchup floors belong to spaces that were created first within Revit and these spaces need to be created from top down. Since you are encountering this error, I will guess that your 10th floor spaces were created before your 11th floor spaces. I've made several trials to test this issue and it seems that this Sketchup floor/ceiling error does not occur when spaces in Revit are created from the top floor to the bottom floor. I think I was able to find a pattern/solution by combining my observations with yours! I am encountering the exact same problem and trying to solve it as well.