Friday 27 January 2012

Calculate Occupancy Load

***Update - 04/06/2013 : This app is packaged into BOLT-ONS so will not be updated as a standalone app anymore. Please use BOLT-ONS instead to access this command in Revit 2014, which supports ROOM and AREA objects.


This query has come up many times on the forums and elsewhere. Currently, in Revit you can calculate occupancy load in schedule using calculated value and schedule it but you CAN NOT show that calculated value in room tag.

If you want to get calculated occupancy load value in room tag then you either (A) copy calculated value manully in another shared parameter or (B)write an API tool to do it for you. I chose to go down the option (B).

Please download the plugin from the following link.

NOTE: In order to use this plugin you will have to add "Occupancy Load Factor (as area type)" and "Occupancy Load (as integer type)" shared parameters to your project file and assign them to Room object as Instance. Also, calculated occupany load value is not dynamically linked with other values so if you change room size or occupany load factor then you will have to rerun this tool to update occupancy load value. Please read Readme.txt file contained in the zip file for more information.


**DOWNLOAD - Revit 2012**
**DOWNLOAD - Revit 2013**
** Currently this plugin works with Revit ROOM object only.**

30 comments:

  1. Very cool!!
    Does it work for Areas too? Or just Rooms?

    ReplyDelete
  2. Thanks for your comments.
    Currently it only works for ROOM object. I would try and add AREA object functionality too.
    R

    ReplyDelete
    Replies
    1. Outstanding! I installed the plug-in and it works great. However, it would be very helpful if you could make a release which addresses areas instead of room objects. At least the code that I work with is based on groupings of rooms or areas. In attempt to use it for areas, I assigned the parameters to area objects, but it did not recognize it. Any help would be great!

      Delete
  3. Rahul,

    This looks awesome! Could be very useful.

    However, I noticed one aspect of the add-in that you might want to revisit. When faced with a fractional result for the Occupant Load, the add-in tool relies on default Revit behavior regarding integers – if the fraction is less than .5, it rounds down; if it is more than .5, it rounds up. For occupant loads, we are typically required to round up if there is any fraction, no matter how small.

    For example, say you had a 379 square meter room and the Occupant Load Factor is 3 square feet per occupant. The calculated Occupant Load is 126.3333 people – Revit will round that down to the next closest integer, 126, but code wants it to be rounded up to 127.

    Can your add-in be easily adjusted to always round fractional results up?

    Great stuff, thanks for sharing,

    Brian Ericsson

    ReplyDelete
  4. How do you do decimal values?

    ReplyDelete
  5. Brian,
    Thanks for your comments. That makes sense. I will update the plugin to round up.

    Admin,
    Currently the plugin works as Brian explains in his comments with regards to decimal values.

    ReplyDelete
  6. The plugin has been updated to round up values. Thanks Brian for raising this.

    ReplyDelete
  7. Rahul,

    Wow! That was quick. So, more food for thought -- code allows for the subtraction of fixed equipment and casework from the room area (because people can't occupy space that the fixed equipment does). Would it be possible to refine your add-in so that it could subtract out those values and generate a "code-net" area? I could see that you might need a Shared Parameter that is applied to Casework and Specialty Equipment, or any other category of object, that reports the object's "code-subtractible" area, and then have the occupancy tool subtract those values from the Room area to report a "code-net" area...

    Thanks again,

    Brian

    ReplyDelete
  8. Thanks Brian for this. I sure we can achieve this but will take some time.
    R

    ReplyDelete
  9. I must have done something wrong. I followed your "read me" file to the letter - Revit opened fine - so the add-in is in place and finding the dll file without a problem. I created and loaded the shared parameters into my project. I made a bunch of rooms, assigned them all "Occupancy Load Factor"s and then ran the add-in. Nothing happened. I then tried opening your sample project and tried modifying the occupancy load factor and re-ran the add-in - it didn't modify the occupancy load. I tried exporting your shared paramaters into my project (in case I wrote their names wrong somehow) and I still got nothing from the execution of the add-in. Any ideas?

    ReplyDelete
  10. Noah,

    Please check that the occupancyload2012.dll file is not unblocked. Click on the file on and go to property. If you see Unblock button (appx right bottom) then just untick it and it should be fine.

    ReplyDelete
  11. THANK YOU!!! I have been working on this idea, on and off, in my office for the past year or two. Your "add-in" is terrific. you've made my day (possibly my whole year).

    ReplyDelete
  12. Will this work for 2013 or will you have it added to the "Exchange" site for Revit Apps?

    ReplyDelete
  13. Revit 2013 version has been added on this page as well as under Download section.

    ReplyDelete
  14. I would love some input on a rounding issue I am coming up against. As a quick example, I have several individual values that I want to cummulate the totals of into one value. For simplicity, let's say I have five values, 3.52, 3.01, 3.01, 3.77, 3.52. If you add them together you get 16.83, and round at the end you get 17. This value of 17 is the correct value (think multiple occupancies exiting through a single door and you need to figure out if the door is wide enough). If you use the integer method, it will round to 4, 3, 3, 4, 4 respectively before adding resulting in a total value of 18. If you use the roundup(value) method each value becomes 4 thus resulting in a total of 20. I know I could just create a single area that encompasses all the spaces, but then i have to manage both the individual areas and the aggregated area for the same space. multiply this out over a 7 story 400 unit, plus retail, plus amenity space mixed use project and it gets nuts. Please help...

    ReplyDelete
  15. Hi Devin,
    As you described, could you not add the values and then round them so you get the final values rounded up? Maybe if you ellaborate bit more then I can help you with it. You could email (link on the bottom right side) me a sample revit file so that I can see what you are trying to achieve.
    Thanks

    ReplyDelete
  16. Is there a way to use this plug in without step 3 in the read me text?

    "3. Open OccupancyLoadRevit2012.addin and change assembly path for Command in C:\Revit\Addin\2012\OccupancyLoadRevit2012.dll "

    I don't have a way to open the .addin file and edit

    ReplyDelete
  17. Sara,

    You don't need special software to edit this file. You can open this file in Notepad and edit the line.

    Hope this helps.

    ReplyDelete
    Replies
    1. Wonderful! This plug-in is great! Thank you so much!

      Delete
  18. This works great!

    Great work.Can this be done with Piping?
    Say for you have a flow divided by a factor and the resulting flow displaying in a tag?

    Thanks
    Hein

    ReplyDelete
  19. Hi Hein,

    Yes, this can be easily done. Send me a direct message with your sample Revit file and Shared parameter loaded.

    ReplyDelete
  20. Will this plug-in be updated for Revit 2014?

    ReplyDelete
  21. Yes I will be updating all plugins for 2014.

    ReplyDelete
  22. Can I link your API to a key schedule I have created? The key schedule is taken from the occupancy type table in the 2012 IBC, and makes short work of providing the occupancy load factor.

    ReplyDelete
  23. Rahul,

    I noticed that the examples noted above are employing the metric system. will the plug-in work the same with Imperial units?

    ReplyDelete
  24. Hi Andre,
    Yes, the plug-in should work for imperial units too. Let me know if it doesn't work.

    ReplyDelete
  25. All,

    This app is packaged into BOLT-ONS 2014 so will not be updated as a stand alone app anymore. Please visit http://revitstickynotes.blogspot.co.uk/p/bolt-ons.html for more details. In Revit 2014 version, it supports ROOM and AREA objects.

    ReplyDelete
  26. I have checked the responses here, and have not run across the same situation, so I'm asking directly: having problems with Revit not recognizing your plugin/addin for the Occupancy scheduling. (In fact, had the exact same problem both at home and on work computers: get a message like "Revit cannot run the external application "BOLT_ONS". Contact the provider for assistance. blah blah blah"
    Computer at home is Revit 2014 Architecture, under Win 8.1; work computer is Revit 2014 Bldg Design Suite running Win 7. Both gave same error msg.
    I purposefully put your .dll file in the same subdirectory as you had listed in your .addin file, but I am going to go back and double-check. Seems unlikely I could have made the same error in both installs. (In fact, put it in a different subdirectory at home and changed the .addin file to reflect that path.) Thanks for any insight you can give. ycharleyy@gmail.com

    ReplyDelete
  27. Although great plug in, there is something fundamentally wrong with the tag.

    It simply does not show the results of occupancy load and OLF.

    Do you use some soft of custom shared parameter ?

    ReplyDelete
  28. Although great plug in, there is something fundamentally wrong with the tag.

    It simply does not show the results of occupancy load and OLF.

    Do you use some soft of custom shared parameter ?

    ReplyDelete