Wish For Rhino 6: BOM Generator

I would really like to see a ‘Bill of Materials Generator’ in Rhino 6. The Generator would basically take your work and generate a cost estimate for you based on your assigned materials and/or various pre-made objects you have input into your work (i.e. number of buttons for a shirt you want to create, or feet of steel piping and bolts, or number of light bulbs etc…).

so you would take a pipe shape you have created, assign to it the material ‘steel’ - and from this information the cost of steel piping would be generated in a ‘bill of materials’ for your work, from your assigned sources, from your own database or from various online vendors.

You could give an assignment to an object that does not look like what it is supposed to be. For example create a cube and give it the assignment, ‘Halco 6321 - 60 Watt - A19 - Frosted - 5,000 Life Hours - 510 Lumens - 130 Volt’ light bulb. Your hypothetical project calls for 100 of these light bulbs so you place the 100 cu bes where they belong in your project and the BOM Generator will create a cost estimate for you from this information. This saves time and lightens the load on your computer.

supplying cost estimates with work makes a lot of sense and makes the accountant happier. I believe this would be a great addition to the Rhino software package.

1 Like

You might look into some of the scripts Peter Harris ahs writen…He has one for BOM…It’s not as detailed as what you are looking for but it will export some info to excel. Here is a link.



Hey Justin, I agree a BOM feature would be a great way of keeping a accurate and detailed documentation of a projects parts and pieces. I make a lot of assemblies with sub assemblies and purchased and MP (manufactured parts). Sometimes its gets a little to much for the layer system to act as the BOM. In addition to a “object” or “parts” feature to build a BOM, a data collection system for the BOM would be great to calculate physical attribute like weight of parts and total weights would be great for shipping and even cost per the inputted “todays” cost of steel and so on. I’m sure this is obtainable, but understandably a little complex to program but would be a great feature none the less. With all of that said, it would be great to add a parametric element to the BOM generator as to allow the user to dictate and save the BOM based on different material and material thicknesses with out changing the model for a price and weight comparison.
Sorry I’m woffting on. HAHA


Yes I am looking forward to some kind of BOM generator for Rhino 6. A built in BOM well done could improve upon existing workflows. I really can’t believe it wasn’t already there, integrated or as an add-on. It is so obvious. Autodesks BOM generator software is not very good. They would really need to go beyond what autodesk is currently offering. Most of work in its design would be getting it connected to the vast databases of materials knowledge available on the internet. The user at this point in many cases may be able to just directly plug in existing pre-made parts (as everything made today has gone through some CAD package) and receive immediate cost data. one can kind of do this already, but an integrated system could make it a lot better. Retailers like Home depot may begin offering cad models for all of their products so builders can quickly snap in parts and lay out various possibilities.
Another thing that follows the BOM concept is a much better search tool for finding cad models. There are bazillions of models on the internet already, but what a chore finding them, often if you don’t know exactly what it is your looking for, good luck ever finding it. This really needs improvement.
probably everything I am interested in, has already been done, but what a needle in a haystack.

Another thing I would like to see in Rhino 6 to put to death its inherent performance problems is the inclusion of Point Cloud Data Modeling
. Using NURBS tools for editing purposes, point clouds would offer the ability to create models of enormous complexity throwing away all complaints about performance.

I did a rather long post asking for a block manager that would get us better part counts, if you want to have a look.

Wish For Rhino 7: BOM Generator


SetUserTexts, Export to CSV, Build a Table as needed from said CSV. An interface that allowed selection and formatting of the output table (layouts or model space) would be helpful and a nice base feature to have.


there is a way now. create your categories and attributes via grasshopper use elefront plugin and then just use save as csv export which will give you database of objects in the model with assigned attributes

Not working with RhinoMAC.

I need to generate accurate technical drawings not to feed external databases.

Something like this: Solidworks tutorial | insert Bill of Materials (BOM) into a Drawing in Solidworks, or like this Parts List: AutoCAD Mechanical 2013 seven years old tutorial, or like FUSION 360 Drawing - Exploded Drawing & BOM

Any major CAD program have support for BOM generation. Rhino is the only exception I do know not having this feature.

1 Like

Wikipedia about Bill Of Materials

1 Like

I wrote script that you can use if you want.
Unfortunatly there is no way to view grasshopper objects in layout view.
I tried to create a detail view with the same size like the BOM bounding box and zoom to it so that a preview of the BOM in the layout is possible but all that is very buggy and my interest to optimise all faides away.
Anyway maybe you can use it.

DataGrid_test.gh (12.2 KB)

1 Like

i generate similar BOM’s, the input is via a grasshopper query of attributes.

Thank you. I will test tomorrow and report back.


Is there a video demo on this somewhere? Thanks

Just had some time to test this definition. It is working great, however will be better to have some space between the text and the lines of the cells. Maybe the Python script can be customised to add an extra “padding” option?

Also, I just discovered this useful Python scripts: Page Layout Tools

They can generate a BOM straight on the Layouts. Very useful.

Hi, you might be interested in our plugin Marine Weight Schedule, which generates a Bill-Of-Masses and a Bill-Of-Materials.
It considers points, curves, surfaces, volumes, and blocks, with settings embedded in the layers’ names.
Video: https://discourse.mcneel.com/t/marine-weight-schedule-plugin-walkthough/120936
User Doc: https://wiki.tomkod.com/marineweightschedule
Webpage: Marine Weight Schedule – TomKod

We also have a plugin to insert tables/Spreadsheets in a Rhino document.