ZW3D Base
Home > ZW3D Object Level > Clean File
Article Title Clean File

Invoked by Tools (Object Level)

When this command is executed, ZW3D traverses each root object in the active file (e.g. part, sheet, plan) tagging each object it runs into. All objects that are not touched by the traversal are assumed to be "leaked" and are deleted. A leaked object is a sub-object that is not referenced by any root object.  It is assumed that an unreferenced sub-object should have been deleted but was not.  

Leaked objects can cause problems in undo-redo, particularly when you have manually deleted a session file. They've also been caused by problems cleaning up after an aborted history regen.

Due to a few nuances of cleaning files, it is possible that the "clean" command could delete a valid sub-object. Therefore, this command should not be used casually. It should only be used to "repair" files that seem to have a definite problem -- files that are inordinately large.  Before concluding that a file is "inordinately" large, one should consider whether the file has "StartData" and "State" features, which store a lot of "invisible" data.

It should also be noted that session files are the repository for undo-redo data that will grow in relation to the number of undo-redo steps utilized and the size of the objects that are being undone/redone. This data is cleaned up when the file is archived. If the "Session" file is tampered with, ZW3D may be unable to properly cleanup the undo-redo data in an archived file. In this case, the Clean File command is the only way to get rid of the old data.

A recommended procedure for using this command would be to backup the original file, execute the command and then ensure that root objects in the "clean" file regenerate/recalculate okay before replacing the original file with the "clean" file.