PADT 0.041 - SketchUp "BIMmy" Dynamic Components - Part 01
First Some Explanations & "Gotchas"
This Blog has been mainly about explaining how BIM operates under-the-hood and in many cases, how I’d like to see it work. I’m sure I’ll probably lose a lot of readers who use other software, but my hopes is to illustrate some of the standard features of the Big Name BIM applications and how they can be applied to lesser software. Although SketchUp has certain dimensional advantages, you’ll see that there are quite a few “short-comings” you have to understand first.
I will just be taking what I’ve learned in my 40 years of CAD(D) and 10 years of BIM to find similar techniques which will work with SketchUp. I’ll be using the standard Pro application with no extensions. But first a very brief look at how some of this is done with the Big Name BIM applications.
Solids, Planes & Dimensions
Most of what happens in the Big Name applications when it comes to creating Content is the use of Solids, whose Faces are Locked to Planes whose positions are controlled by Parameter-based Dimensions. These Solids can be a variety of objects including Extrusions, Lathes, Paths, etc. Below is a simple Door Frame Extrusion showing the Planes and Dimensions:
As we’ve seen before, one of the best features of most BIM or BIM-like applications is that Components can have multiple versions built into them. Instead of selecting possibly hundreds of Parameters, these can be set under one Variation. These can include Parameters like Height, Width, Material, Product Code, etc. etc. etc. What I’m trying to demonstrate here is a method (and not the only method) for create similar functionality into applications without these features built-in. This will hopefully trigger some thought about how your own project could benefit for these type of Components.
Jumping into “Skippy”
But since SketchUp is a Face-based system which merely Groups Faces into Solids, we are going to have to take a different approach. I’m assuming you know a little bit of how that standard functions in SketchUp operate (or can figure it out) — if there’s anything I skip or needs further explanation, please let me know.
(Editor’s Comment: I’m a Windows user, but this should be pretty much the same on the Mac. However, Dynamic Component creation is only available in SketchUp Pro. Although it is a built-in Extension and should be available to all users, even if for a fee.)
First of all, let me explain my approach to tutorials. I hate tutorials which are merely “let’s build this particular type of object.” But what if that’s not my industry? I try to approach things more conceptually so that you can better see how they would be used in your particular application. And only farther down-the-road, use those techniques to create specific Items.
Let’s open SketchUp and take a look at what areas we need to focus on for this type of development. As a minimum, you should have “Entity Info”, “Components”, “Tags”, and “Outliner” open in your Tray. (Editor’s Note: The Trays in Windows used to “float” as they do on the Mac, but unfortunately we lost that feature so a docked Tray takes up a major portion of the screen.) If you’re using the Default Tray, these can be added by going to Window>Default Tray Menus.
For most of my work with Components, I like to keep the Entity Info and Outliner Trays Open. The other thing you’ll need to Open is the “Dynamic Components” Toolbar found under View>Toolbars.
As with all Toolbars, this one can be docked. Please don’t open the Dynamic Components Tools as of yet — one major “Gotcha” first.
Creating the First Component
Now all we want to do first is create a Component which is a 1"x1"x1" cube. (I’m using Imperial Units but this will work for Metric). You can create a 1"x1" Rectangle and then Push/Pull it up 1". Then Zoom in on it to get a better View.
Then Select all of the cube by Triple-clicking or using a Crossing. Right-Click and Select Make Component… and change the Component Definition to “Box01” and click Create. You notice the Name “Box01” now appears in the Definition box of Entity Info and appears in the Outliner.
In the Outliner, the Definition Name is set off using Greater and Less-Than Signs (“<>”). For this tutorial, we won’t deal with Instance Names. Now, Deselect the cube by clicking away from it or pressing Ctrl-T. Now bring up the Dynamic Component Menus “Component Attributes” and “Component Options” by click the appropriate icons in the Dynamic Component Toolbar.
Now Select the cube to see the first “Gotcha”. The Name and Attributes (currently there are none) appear in the Component Attributes Menu, but look at the Component Options Menu - nothing! It reads “Select one or more components to view their options.” The Component is already Selected. Even if you close this Menu, select the cube and then reopen the Component Options Menu, nothing will happen. This is a major frustration to creating Dynamic Components.
Here is the Workaround. Save the SketchUp “Skippy” file to whatever you desire and close the program. Reopen SketchUp and Open the file you just saved. Now before you Open the Dynamic Component Menus, select the cube and then open the Component Attribute and Options Menus. There should now be an image of the cube with the text “There are no option to choose on this component” below. This will be SOP from now on — anytime you are creating Dynamic Components always Select one of the Components and THEN open the Dynamic Component Menus.
Adding Your First Attribute
The Component Attributes Menu is where you will be spending most of your time. These Menus will not Dock, but they will Float outside the SketchUp Window and can be Minimized, Maximized, and Resized. If you click on the Plus Sign (“+”) to the left of the text “Add attribute”, the Menu with the possible Attributes will open. By default the Component Attributes Menu is set to enter a Custom Name, but you won’t see that option on menu unless you increase the Size vertically. This should really be Renamed “Create Custom Parameter” because that’s what you’re doing.
What we want to do in SketchUp is assign several Component Attributes under each of several Variations we’ve built into the Component. Enter the text “Variations” to replace “Enter Name” in the Custom Attribute box and hit “tab”.
The Attribute (OK, OK, I’ll use their name) is added under “Custom”, there’s a Minus Sign (“-”) to the left that can be used to delete the Attribute and arrow to the right for specifying Attribute Details. Click on this Arrow to bring up the Detail Menu. On this menu there are two Pull-Downs — one for Units where you have the options to change from a Decimal Number, Text, Inches, or Centimeters. The default is Text and we will leave that way for now.
The other Pull-Down is where all the “fun” is.
This Attribute Detail controls what the user will see (or not see) in the Component Options Menu. You have options for “Users cannot see this attribute.”, “Users can see this attribute.”, “Users can edit as a textbox.”, and “Users can select from a list”. Since we are going to be selecting Variations for our Component for a List of choices, it’s the later one we are going to use. When you select that option, there will be places to enter your assignments to the Attribute “Variations”. You will also have the option of Naming the Option and it’s value. If you click the Plus Sign (“+”) to “Add option”, you can enter the Options as shown:
If you now click the “Apply” button, that Menu will close and an Options Box labeled “Variations” is appear on the Component Option Menu. In the Component Attributes Menu, you will notice that the Attribute “Variations” is set to “1”.
If we were to use the Drop Down on the Component Option Menu for Variations we could set it to any of the three (3) options we’ve created. Be sure to hit the “Apply” button.
I’m running into the Email Limit, so I’m going to stop there. Next time we’ll see the kinds of things you can now Assign under these Variations using the “=choose” command.
Dave Edwards has been in the CAD/BIM industry as a manager, developer, consultant, speaker, and author for almost 40 years. He has had 80 magazine articles published, written 3 international newsletters, reviewed over 300 CAD/BIM applications and 3D modeled over 1 Billion dollars worth of architectural projects. He is available for professional alpha/beta testing, application feature consulting, technical documentation, seminar presentations, and voice overs.
Copyright © 2021 by Dave Edwards Consulting. All rights reserved.
All trademarks belong to their respective holders.
Translations and opinions expressed are not necessarily shared by Dave Edwards Consulting.
By accessing this newsletter in any manner, you agree to settle disputes within ten days of publication date by arbitration within the city limits of Montgomery, Alabama, United States with the arbitrator selected by an agent acting on behalf of Dave Edwards Consulting.