Adding background adornment or highlighter?

I have a diagram in which an arbitrary number of nodes needs to be highlighted. However, I would like to have something similar to the highlighter used in this example Local View.

From a performance point of view, is there any difference between adding and removing a varying number of parts (such as a highlighter in the example above), and doing the same with an varying number of adornment objects (via addAdornment and removeAdornment)?
This would be done programatically.

I presume GoJS objects may be deleted just as plain JavaScript objects once they are removed from the model.


If you are programmatically calling Diagram.add or calling Part.addAdornment, there probably isn’t much performance difference between the two.

However, there can be a huge performance difference for selection or Tool Adornments, because those are virtualized. If you have 10000 Nodes in your Diagram but only 100 are visible in the viewport, then operations such as CommandHandler.selectAll will be fast because it only actually creates and shows all of the Adornments for the Nodes that are in the viewport.