AEC objects have the ability to display themselves differently in each viewport. When AEC objects are exploded into AutoCAD primitive entities, each display representation must create a different set of primitives. For each viewport, a new layer and a new block definition are created to hold all exploded entities. A block reference (INSERT) to this definition is also created and placed on the given layer. For the given viewport, all layers created for other viewports are then frozen so that only the graphics for the display representation that was originally visible remain visible.
For a given layout tab, the following block definitions are created:
AecObjExplode_LayoutName_Pspace_<number> containing AEC objects in paper space AecObjExplode_LayoutName_Vport_<VportHandle1> containing AEC objects from MVIEW 1 AecObjExplode_LayoutName_Vport_<VportHandle2> containing AEC objects from MVIEW 2… AecObjExplode_LayoutName_Vport_<VportHandleN>
LayoutName is the name of the specific layout tab, and VportHandle# is the unique AutoCAD entity handle for that specific viewport.
A layer is also created with the same names so that the blocks that do not apply to that viewport can be on a frozen layer, and thus not visible.
The “template” used to generate the block and layer names is stored in the Windows Registry under the key (note that the language code, shown as 409, will vary depending on your locale):
HKEY_CURRENT_USERSoftwareAutodeskAutoCADR17.0ACAD-5004:409ProfilesAutoCAD Architecture - ImperialDialogsAecObjExplode50-Options
You can change this template to another character string, but it must contain the “%1!s!” and similar format specifiers that are present. The format specifiers are replaced by the layout name and the viewport handle number in the final block and layer names.