[Plugin] Multitag extension for sketchup


The extension allow assign several tags/layers to group/component. And get flexible control to object visibility on complex models, such as houses, apartments with large engineering networks (water supply, electricity, etc.)

By default all selected tags use AND condition: so object will displayed only if all tags are enabled;

Extension also allow use OR condition between layers, grouping and combination AND and OR conditions

For sample: Each wall in house can be assigned at least to two layers “room1” and “room2” and be visible when one of “room” tags enabled or Furniture can belong to both tags “room” and “type”, for example “Chair” or “Table” and are displayed only when both layers are active

Download MultiTag-1.1.230903.rbz (build 1.1.230903)

previous releases
MultiTag-1.1.221216.rbz (build 1.1.221216)

Extension in WareHouse

1 Like

i’m getting an error:

Error: #<NameError: uninitialized constant ZZLab::MultiTagPlugin::Plugin::EXTENSION
Did you mean? Exception>
c:/users/…/appdata/roaming/sketchup/sketchup 2022/sketchup/plugins/plugin.rbe:68:in main' c:/users/.../appdata/roaming/sketchup/sketchup 2022/sketchup/plugins/plugin.rbe:87:in class:Plugin
c:/users/…/appdata/roaming/sketchup/sketchup 2022/sketchup/plugins/plugin.rbe:8:in <module:MultiTagPlugin>' c:/users/.../appdata/roaming/sketchup/sketchup 2022/sketchup/plugins/plugin.rbe:7:in module:ZZLab
c:/users/…/appdata/roaming/sketchup/sketchup 2022/sketchup/plugins/plugin.rbe:6:in <main>' SketchUp:in eval’

Thanks for issue. Was uploaded wrong package, after signing was incorrectly packed into .rbz :frowning:
Fixed package was uploaded.

1 Like

- added support negative expression using exclamation mark symbol “!” in formulas
Download plugin.rbz (build 1.1.221217)

1 Like

In what cases can be useful to use negation in formulas:

  1. Hide obviously hidden elements, for example, electrical boxes hidden behind plaster.
    And the reverse operation: show these objects when the “Plaster” layer is turned off,
    This gives a significant increase in model rendering and increases your productivity,
    since these objects are not drawn when they are not needed without necessary additional clicks to layers to hide this objects.

In addition, eliminates rendering defects in Sketchup with appearing edges, which is non aesthetically pleasing when editing, and irritated these strange edges that appearing when the model is moved away.

  1. To switch with one button/tag between the degree of used mesh details of the model.
    Often high details is required only when we start photo rendering and in normal model editing, high details is not needed, and reduce 3d mesh details gives a significant increase in rendering speed in Sketchup (FPS). Now we can switch using one click

Hi Langolier2021,
Could you please help in understanding how to use Formula OR and AND?
I tried to type in the formula but it seems not to work.
Also, does this plugin translate to Sketchup layout?
thank you
Screenshot 2023-04-23 114230



  • for the logical AND operation, you need to use the ampersand symbol &
  • for the logical operation OR you need to use the vertical line symbol - |

In your case the correct formula syntax is: P1_s1|P1_s2

Also, does this plugin translate to Sketchup layout?

Plugin is only for Sketchup, and Sketchup Layout is not supported.
For export 2D plans to Layout I use views in Sketchup

1 Like

Hi Langolier2021
The plugin seems to be exactly what I want: to be able to group items in a building by element and by storey.
However, I am unable to purchase as your website certificate has expired… are you still selling the plugin?
Additionally, when I first ran the plugin a pop-up loaded indicating that there may be a trial license available…?

Hello Jonathan_SOME,

However, I am unable to purchase as your website certificate has expired… are you still selling the plugin?

Sorry but was some problem on the hosting with certificate renewal. Issue fixed now

Additionally, when I first ran the plugin a pop-up loaded indicating that there may be a trial license available…?

Yes trial, 14 days is available without registration and any payment, just download and install and run the plugin.

1 Like

Thank you for the quick response! The trial is installed and functioning without any trouble :slight_smile:

As I am converting a template that has Tags set up by ‘Color by Tag’, something I note is that all the elements are then indicated in the MultiTag’s selected tag colour - it would seem that in order to distinguish visually between tags all the elements need to have materials added (by Tag), and ‘Color by Tag’ disabled…?

As I work by identifying elements by colour, I need a solution to transfer my Tag colours to all the faces of objects within that primary Tag setup… so now I’m looking for a plugin that will do that…

I understand you, but this task is not trivial.
In particular, when using components and nested components in components, if you reassign all edges, faces to a different material, this material will be displayed independently on which layers instances of this object assigned.
Well, there will be a problem with rendering (v-ray). Because the original materials will be lost

Also you can use same trick as with nested Groups

Group1 - assigned tags using MultiTag
- Nested Group2 - assigned to one colored Tag

but in editing need to clicking twice (again), to open target group/component :slight_smile:
and no need to broke model with reassign materials to edges

release 1.1.230903:

  • added command to menu for reload visibility state,
    which can be broken in some cases (for sample: component reloaded from file)
  • automatic updating of the visibility on all scenes when their visibility changes
  • fix updating of the visibility on the Scenes: the status of object hiding changed to set via Hidden.
    Also stop use technical tag “Multitag Hidden” which was used to hide objects in earlier releases.


Hi @Langolier2021

I’ve tried your plugin as I really like the potential for organization and visualization it offers, however I can’t get used to the way we have to assign tags.

I hope I’m able to explain the feature request I have. I think it’s rather simple but I don’t know how to easily explain it.

The way you have set it feels unnatural and not inline with the function of the plugin. You have to select an object and activate all tags you want it to have and then save those. That way implies that if you want to tag several components/groups at the same time, the selection must be carefully curated so that all objects have common tags.

Using the locking feature facilitates this a bit, as you can start from a set of tags inherited from another object, change the ones you need and save it.

However, the most intuitive way, or at least the one I’d expected, would be to pick a lot of objects, and assign them a single tag. If I’d do this for several different selections I could keep adding tags to the selection without overriding previously existing sets of tags.

As you have now, a mistake in the selection overrides all tags and ruins previous work. It also implies that we have to carefully think which order to select objects and forces you to almost go through each object at least once.

Imagine the following workflow:

  • I have 2 floors, a slab for each floor, several walls for each floor and a roof
  • Your plugin has two extra buttons for assigning tags - one is add tag, the other is remove tag.
  • Select all slabs and assign a slab tag
  • Select all walls and assign a walls tag.
  • Selet all slabs and walls from 1st floor and assign the 1st floor tag
  • Select all remaining walls and slabs and assign the 2nd floor tag.
  • Then select the topmost slab and assign the roof tag.
  • As a mistake might have happened and the final slab can’t be the 2nd floor and roof at the same time you select it and remove the roof tag.

This is a much faster workflow as it allows less thinking and a lot faster selection of objects to tag at once. Adding or removing tags, each at a time, is less prone for errors.

Saving with the disk implies that you are sure that the object you are tagging must feature several tags at once.

Assigning or removing a tag at a time, only requires you to know if the selection of objects you have should feature that tag or not so it’s much easier to check.

Imagine this:

  • I can tag all windows of the project, no matter where they are located or what material they have.
  • I can tag all objects from first floor no matter if they are windows, walls, cabinets, slabs, furniture or what not.

In the end a window is a window and some of them are in the first floor as well as the other objects of the first floor.

The same example but using the workflow you have right now, requires you to:

  • Tag a window, in the first floor, made of aluminum, with double glazing.
  • Double check that everything is right
  • Save

In the end you’ll have the same result, but you had to check at once that all properties were right from the start.

Also, if one extra tag is created, it would be very easy to select which objects should have it, select them and simply assign them to the tag. The process wouldn’t require a doublec check. It would be immediate.

So, could you consider a way for us to do this kind of tagging?

If I correctly understand you, you a say about tool for mass assign tags.

Copying tags, tag presets, assigning via the mouse cursor (as was implemented in Sketchup 2023, in addition to selecting from a list) - yes, the plugin does not offer this.

The projects (indoor room design) where I used a multi-tag, from scratch, I spent about 2-3 hours: for create a hierarchy of tags and assign tags to elements. And after the initial tag setup, I not have any needs to mass assign tags, and I’m open assign dialog quite rarely

therefore (due to the small costs for the initial multitagging objects in the project), I generally did not consider any quick tagging as a feature of the plugin; my focus was concentrated on how to control the visibility of objects in scenes, and not on how to conveniently and quickly assign tags. But overall I agree that fast tagging would be nice to have.

1 Like

Hi, thanks for your reply. The tagging and untagging of objects is, in my opinion, a huge factor on the implementation of your plugin in our standard workflow. As soon as the project progresses and we need more people to be envolver with it, we might want to be able to display a lot of different aspects of the project.

We might start by having floors, slabs, walls, windows and doors, but eventually we will end up having structures, concrete, steel, piping, mechanical, avac, furniture, etc.

If we can easily add and remove objects to tags, in batch, and import other people’s tags to the model, we might need or want to be able to quickly organize a lot of info.

I don’t think it’s realistic to think that a complex project is manageable only with a few tags and assigning them only in the current way.

However, your multi tag system, if batch selection and tagging would be possible, would be the best way to deal with those complex projects.

1 Like