|View HTML Version||NestedMoveV1-2.html|
This program enables the user to move multiple selected objects nested within a block or xref (nested to any depth), without opening the xref source drawing.
Upon calling the program with nmove at the command-line, the user is continuously prompted to select one or more objects nested within a block or xref to be moved. Similar to the standard AutoCAD move command, the user is then prompted to specify a base point & displacement for the move operation.
The program will then proceed to move the selected object within the parent block definition or xref source drawing, utilising an ObjectDBX interface should the xref source drawing be unopened in the current drawing session.
Upon moving the object: in the case of a block parent, the active drawing is regenerated to reflect the modification to the block definition across all block references in the drawing; for xrefs, the xref source drawing is saved and the xref is reloaded in the active drawing.
The program will account for the position, scale, rotation & orientation of the parent block or xref relative to the base point and displacement vector and will perform successfully under all UCS & View settings.
Please Note: The act of modifying objects within an xref source drawing involves saving the external drawing remotely - this action cannot be undone within the current drawing and any changes to the external drawing must be reset manually.
Note also that when saving drawings through ObjectDBX, drawing files will be saved to the highest version available and drawing file thumbnails will be lost until the next manual save.
Instructions for Running
Please refer to How to Run an AutoLISP Program.