Duplicate Entries in Symbol Manager
So I'm building a symbol that is built up of other symbols (for example, a table with a few items on it, where the items are already symbols).
I'm aware that you shouldn't nest actual symbols within each other, and so if I want to do that I have to Explode them first. I've gone ahead and set the "Explode Symbols on Placement" option inside the Options for the sub-symbols. As far as I can tell, that works fine. When I place the symbol (say a plate) onto the table, and then run the LIST command, I can see that instead of a "plate" symbol I have exploded polygons within the table. All good.
However! Once I go back to look at the symbol manager, I see that the Plate symbol definition has been copied...there are now two copies of Plate and if I delete one, they both go. I also see duplicate symbols in the symbol explorer.
And as I add plates onto new table symbols, they get copied again!
Am I doing something wrong here? I was under the impression that I could place symbols inside of others as long as they were exploded, but its getting unwieldy pretty fast.
Comments
Hi!
There's a lot of people more qualified to answer than me :) but it still piqued my interest..
I'm aware that you shouldn't nest actual symbols within each other, and so if I want to do that I have to Explode them first. I've gone ahead and set the "Explode Symbols on Placement" option inside the Options for the sub-symbols. As far as I can tell, that works fine. When I place the symbol (say a plate) onto the table, and then run the LIST command, I can see that instead of a "plate" symbol I have exploded polygons within the table. All good.
Are you doing this while drawing the actual symbol? Or when drawing on a map? If it's the former, I assume this doesn't happen if you "manually" explode the symbol, would that be correct?
It's never occured to me to place a self-exploding symbol into another symbol (but then again, it's not like I've made a ton of catalogues).
Hi! I'm doing this while drawing the actual table symbol. Drawing the objects directly onto the map causes no issues.
So I'm a fool who hasn't tried manually exploding the symbols :P I placed the self-exploder, looked at the output of the LIST command, saw no symbol references from within the "table" symbol, and thought I was all good. I'll give manual explosion a shot and report back.
I need to open this in a debugger and walk the drawing list to confirm this, but this is what I suspect happens:
Symbol definitions are kind of a separate drawing, and when you edit a symbol, the editor locks you down to the insides of that symbol definition, with no access to outside resources.
So, when you place your self-exploding symbol into the editor window, there doesn't exist a definition for it there. And even if a symbol is set to explode on placement, it is still placed as a symbol, causing the symbol definition to be copied into the definition of your symbol. The symbol itself is exploded, but the definition is still there.
Now, when you exit the symbol editor and go back to the drawing, suddenly everything is available again, leaving you with 2 definitions of the same symbol, one in the main drawing, and one inside the definition of your table.
So, how to deal with this. Many ways really, choose one of them:
@Monsen thanks so much for the insight, that seems to be exactly what's happening. And your solutions look good, too.
For me, in general I'm going to go with option 2 and try to always remember to delete the symbol from the definition's sub-catalog before closing the definition.
If I forget, then it looks like the catalogs merge so I won't be able to go back and delete them from there later. That's no huge deal, since I do have option 1 still available.
Again, thanks!