The word "Block" refering to component instance or group?


#1

The other day I read an article where the phrase “block” was used for either a group or a component instance. I almost absolutely certain this was in the official documentation, SketchUp blog or perhaps even in the UI of an extension made by the SketchUp team (such as Dynamic Components) but I just can’t remember where. Has anyone else seen this use of this word?

I very often find myself writing “group/component” both when commenting my own code and when documenting my extensions. A phrase that refers to both could be quite useful. I’ve sometimes used the phrase “instance” for code comments and variable names since the API method for adding both groups and component instances is called add_instance. However the SketchUp UI refers to both components and groups simply as Components (View > Component Edit, Model Info > Components > Component Axes). Technically a group is a component but the phrase usually refers to a component that is not a group.

Is there any preferred term to use when you explicitly mean both groups and components?


#2

In CAD a ‘Block’ is pretty much like a SUp ‘Component’.
Indeed if you import a CAD file containing a Block it will they appear as a Component-Instance in the SKP, and a Definition in the Component-Browser.
CAD also has the concept of a ‘Group’, although that is not quite the same thing as SUp’s.

I often use the word ‘Container’ to mean a SUp Group OR Component.

You are right in that a Group is just a different kind of Component - it doesn’t appear in the Component-Browser and if copied and subsequently edited SUp automatically makes it unique - unlike a Component which can have multiple Instances of the same Definition.
The API offers a few different methods for Groups compared to ComponentInstances, but they both have a Definition within the Model’s Definitions Collection.
A Group’s name is user-editable in Entity Info [its name is akin to an Instance name, it’s Definition name is not easily edited]: a Component’s Definition name AND its Instance name are both easily editable in Entity Info.

Incidentally, an Image is also another kind of special Component Definition: its entities-context containing just one rectangular face that has a textured material applied to it. It has limited access for the user [e.g. editing], but can of course be exploded into a vanilla face, and the material is then added to the Model’s Material’s Collection.


#3

Fredo6 coined the term “Grouponent” years ago, and the term still enters my mind every time I’m working with groups and instances in code.


#4

I’m familiar with the term block from Rhino but have never seen it in an SU context. Container seems like a more explanatory term.

Actually the material is in the Materials collection object all the time but doesn’t show up in the UI before the image is exploded, similar to how groups’ definitions are in the Definitions collection but not exposed in the component browser. ThomThom made a plugin that makes images transparent by changing the alpha property of the Material object. The API is full of surprises :stuck_out_tongue: .

Grouponent is a lovely term :stuck_out_tongue: . I’ll start using it internally in comments and variable names. Maybe it’s a bit too obscure to expose to users in the UI and documentation though.


#5

I prefer using the term container for my own documentation.

Grouponent is cute but in my opinion does not have the same world wide understanding as does container.