Assigning pre-defined attributes to a new component


Is there any way that one can assign a pre-determined set of attributes to a new component in sketchup?

For example, I am creating an elemental estimate model for a building. This is what I would like to do:

Step one: Create a component called concrete strip footings. I will attach all relevant attributes to this, such as cost per m3 of concrete/ strength of concrete etc.

Step 2: Make a copy of the above mentioned attribute and “paste in place”

Step 3: Make the copied attribute “Unique” and assign a new set of pre-determined attributes to it. These attributes would be for excavations/ cost per m3/ risk of collapse to sides of trenches etc.

This kind of functionality would save lots of time if it were possible.

not a 100% certain what you are trying to achieve but…

perhaps you could swap the copied strip footing with another which has the desired attributes.

To create swap-able object, which updates to current overall sizes, one wraps the component in another, pass the data through, but for LenX,lenZ,lenY, pass the current(“lenx”),current(“leny”) ,current(“lenz”) or a fixed measure of such …
the attached example file contains two components that need to be saved (right click context menu) on each to an appropriate folder, then alter them and swap (right click context menu -dynamic -swap) with the saved definitions

some component design pointers…
the components are metric and there is a required conversion in the formula of 2.54 which is not needed for USA inches when using the current.

if you need to swap components with different parent names, then use the generic “parent” in lieu of the parent name which in this example both have “concrete strip”

I guess once you have established a typical attribute list, you could swap the child and geometry to save rebuilds, work

another idea is to have all the attributes in one component and have different saved reports in the new report writer

concrete.skp (55.7 KB)

Hi Thanks

Kinda difficult to explain what I want to achieve here. Basically I want to create a component library of all typical building elements such as strip footing, brick wall, floor slab, window etc. I plan to attach as much information to these components as possible in the form of attributes.

Then in future when I need to cost a building, I will simply select the appropriate component form my library and start modeling with it. This will save me time because I dont need to re-create components including attributes for each new building project.

However, the problem come in as follows:

Say I select the strip footing component from my library, and I use it in my model. It takes time to edit it and make it suite the building outline /shape. The next thing i would like to do is select a component called “formwork to strip footing” from my library. Obviously the formwork to the strip footing will have the exact same shape/ outline as the strip footing component that I already spent time creating.

I would simply want to make a copy of the strip footing component/ paste in place / make unique and then assign the "formwork"component attributes.

Im glad to say that I did figure out a way to do this.

What I do now is simply import the “Formwork” component from my library into the model. Then I select edit component and paste an exploded copy of the strip footing component inside it. In this way I am able to retain the "Pre-created"formwork attribute from the library and I save the effort of having to re-model the shape of the strip footing.

Thanks. Hope this can help some other users

One more thing,

Is it possible to create an attribute to report the length, area and volume of the strip footing accurately even if the shape of the strip footing is not rectangular or square?

See attached example:

I created two components:

  1. Strip footing volume (Correct)
  2. Strip footing volume (InCorrect)

The attribute for “1” calculates the volume correctly as 1.5m3.
However, the volume in “2” does not get calculated correctly.

Can this be fixed.?Sketchup 2016 Volume attribute problem.skp (116.0 KB)

I believe you may have created the second volume by paste, thus it requires a (right click, dynamic component),redraw done manually. Or you can force this update to happen by changing a different attribute within the component.

I note the added volume has a different depth, so the volume will still be incorrect based on the depth measure. So this idea only works on objects with same depth

personally I believe your idea has merit and is worth pursuing.

Hi Thanks

It would be really great if the sketchup team could develop this functionality. I dont have any programming skills , however, it seems like it should be possible. I currently use specialized quantity surveying software called Dimx that can calculate the volume/ surface area/wall area/perimeter & count for any component. All this information can be generated for a single component with varying heights.

If sketchup could allow users to include volume/ surface area/wall area/perimeter/& count in the attributes list, then a quantity surveyor could produce a bill of quantities in just a few clicks by generating a report of the predefined building component attributes.

Attached is an example of what I am trying to do:
Quantity surveying model trial.skp (526.6 KB)

However, there is a problem in that the quantities in the excel report are not reflecting correctly (See image attached). All quantities in the report = 1. However, the Amount for each line item is correct. What is causing this?


Wow, I see the quantities are correct in the report file you attached. However, I tried generating the report again on my side and included all attributes. My quantities are still not appearing correctly. What could be the reason ?

How did you generate .html report? mine saves as .csvQuantity surveying model (1.8 KB)


there are a few bugs/problems with the on line report writer. If you go off line and do the report you will get the same choices and results as Denis.

In your Dynamic Component you have named an attribute as Quantity, this is in conflict with the on line version which uses quantity as a variable to count the number of component instances, Plus the on-line version reports volume in cubic inches…a known problem.

Suggest you use an alternative for Quantity and report the volume as an attribute until the bug is fixed

If you are interested I can help you create a VBA routine to make a cleaner report in excel from the data collected, As each has a custom and perhaps private documentation work flow you may private message me to do this

1 Like

@pcmoor, your observation and the workaround for the QUANTITY attribute in the DC is correct. I will log a bug for investigation.

Trying to understand this… is it anything like ?

And volumes should work - we just pushed an update yesterday. Is this what you were looking for earlier: