.. index:: single: Modifying Objects Modifying Objects ================= Select one or more objects first, then apply a Modify command from the **Modify menu**, the **Modify ribbon tab**, or the keyboard. .. index:: single: Modify Commands Modify Commands --------------- .. list-table:: :header-rows: 1 :widths: 18 20 62 * - Command - Shortcut / Alias - Description * - **Erase** - Del · ``E`` - Deletes all selected objects. If no objects are selected, prompts "Select objects:" — pick objects then right-click to confirm or press Escape to cancel. * - **Move** - ``M`` - Enter a displacement as ``X,Y`` in the command line, or pick two reference points on the canvas. * - **Copy** - ``CO`` - Creates copies of selected objects. Enter displacement the same way as Move. * - **Rotate** - ``RO`` - Enter a rotation angle in degrees (positive = counter-clockwise). * - **Scale** - ``SC`` - Enter a uniform scale factor. Values > 1 enlarge; values < 1 shrink. * - **Offset** - ``O`` - Creates a parallel copy of an entity at a specified distance. Supports Line, Circle, Arc, XLine, Polyline, Ellipse, Spline, and Rectangle. The default distance is stored in ``OFFSETDIST``. Options: **T** = through point, **E** = erase source, **U** = undo. A phantom preview shows the offset entity while picking the side. * - **Mirror** - ``MI`` - Pick two points to define the mirror axis. Optionally delete the original. * - **Trim** - ``TR`` - Two-phase: select cutting edges (or type ``ALL``), then click objects to trim. Supports Line, Arc, Polyline, Ellipse, and Spline entities. * - **Extend** - ``EX`` - Two-phase: select boundary edges, then click the end of an entity to extend it. Supports Line, Arc, Polyline, Ellipse, and Spline entities. * - **Chamfer** - ``CHA`` - Pick two lines to chamfer. Use the ``D`` sub-option to set chamfer distances (``$CHAMFERA`` / ``$CHAMFERB``). The second distance defaults to the first. Zero distance trims to the intersection. * - **Fillet** - ``F`` - Pick two lines to fillet with an arc. Use the ``R`` sub-option to set the radius (``$FILLETRAD``). Zero radius trims to the intersection. * - **Explode** - (none) - Breaks compound objects into their component entities. Blocks are exploded into individual entities; multilines into separate lines; polyface meshes into individual 3D Face entities. * - **Break** - ``BR`` - Breaks an entity between two points. Pick the object (the pick point is the first break point), then "Specify second break point or [First point]:" — type ``F`` to re-pick the first point, or ``@`` to break at a single point with no gap. Lines, arcs and polylines split into two entities (or are shortened at an end); a circle becomes an arc; closed polylines become one open polyline. A single undo step restores everything. * - **Join** - ``J`` - Joins lines, arcs and polylines. Collinear touching lines merge into one line; touching arcs on the same circle merge into one arc; other touching chains merge into a polyline, preserving arc segments as true bulge (curved) segments. Reports "N object(s) joined into M." * - **Align** - ``AL`` - Aligns objects using one or two source/destination point pairs. The first pair translates; a second pair adds rotation (press Enter after the first pair to move only). Then prompts "Scale objects based on alignment points? [Yes/No] ". Objects picked as the destination reference are not affected. * - **Divide** - ``DIV`` - Places point entities dividing an entity into a specified number of equal segments (2–32767). Open entities get N−1 interior points; closed entities (circles, closed polylines) get N points. Works on lines, polylines, arcs, circles, ellipses, and splines. * - **Measure** - ``ME`` - Places point entities along an entity at a fixed interval, starting from the end nearest the pick point. The final partial segment is left as-is. Supports the same entity types as Divide. * - **Array** - ``ARR`` - Rectangular, polar or path array of the selected objects. Prompts "Enter array type [Rectangular/Polar/PAth] ". Rectangular: rows, columns, row/column spacing (negative spacing allowed). Polar: centre point, item count, angle to fill <360>, rotate items Yes/No. Path: pick a path entity, choose Divide (count) or Measure (spacing) placement, and whether to align items with the path. Creates plain copies. The alias is ``ARR`` because ``AR`` is used by the Arrow tool. * - **PEDIT** - ``PE`` - Edit a polyline: Close/Open, Join, Width, Edit vertex, Spline, Decurve, Reverse. Converts Lines, Arcs and Circles to polylines. Supports 2D and 3D polylines. .. note:: **FLATTEN** (project to Z = 0) lives under **Super Tools → Cleanup**, not Modify. See :doc:`../super_tools/02_cleanup`. .. index:: single: Mesh and Surface Conversion single: Mesh single: Surface Conversion Mesh and Surface Conversion --------------------------- .. list-table:: :header-rows: 1 :widths: 18 20 62 * - Command - Alias - Description * - **Mesh2Surface** - ``M2S`` - Converts a selected polyface mesh entity into a TIN surface. The mesh vertices become surface points and the mesh faces become TIN triangles. Prompts for a surface name (defaults to the mesh layer name). The original mesh entity is preserved. * - **Surface2Mesh** - ``S2M`` - Converts a TIN surface into a polyface mesh entity on the canvas. Prompts for the surface name (auto-selects if only one surface exists). The resulting mesh can be exported to DXF as a standard polyface mesh, exploded into 3D Faces, or moved/copied like any other drawing entity. .. index:: single: Clipboard Clipboard --------- IQcad supports clipboard operations for copying entities between drawings and between separate IQcad instances. Entities are serialised to the system clipboard as IQML (IQcad's XML format), so all entity types are preserved including civil objects, survey points, and their associated layers. .. list-table:: :header-rows: 1 :widths: 22 18 60 * - Command - Shortcut - Description * - **COPYCLIP** - Ctrl+C - Copies the selected entities to the clipboard from whichever tab is active (model or a layout). Associated layers and survey points are included automatically, along with the source space and drawing scale so a later paste can auto-scale. * - **CUT** - Ctrl+X - Copies the selected entities to the clipboard, then deletes them from the drawing, from whichever tab is active. Associated layers and survey points are included automatically, along with the source space and drawing scale so a later paste can auto-scale. * - **PASTECLIP** - Ctrl+V - Pastes clipboard contents onto whichever tab is active (model or a layout). A ghost of the entities follows the cursor; click (or type ``x,y``) to place them, Esc, a right-click, or pressing Enter on an empty command line cancels. Missing layers are created automatically. Civil point numbers are renumbered if they conflict with existing points in the target drawing. Pasting between model and a layout auto-scales by the drawing scale, so text and tables land at the size they plot at (e.g. a 1:500 drawing scales ×2 into paper mm). Viewports are never carried across the clipboard — copying leaves them out, so any other entities in the same selection paste normally and a viewport-only copy has nothing to paste. * - **PASTEORIG** - Ctrl+Shift+V - Pastes clipboard contents at their original coordinates instead of the cursor position. Same auto-scaling as **PASTECLIP**, but non-interactive. .. tip:: Because the clipboard uses the system clipboard, you can copy entities in one IQcad instance, switch to a completely separate IQcad window, and paste them there. .. index:: single: OSNAP in Edit Commands OSNAP in Edit Commands ---------------------- MOVE, COPY, ROTATE, SCALE, and OFFSET use OSNAP when picking reference points and destinations. During the object-selection phase of these commands, OSNAP is temporarily disabled so that snapping does not interfere with object picking. .. index:: single: Grips Grips ----- When objects are selected, **blue grip handles** appear at key points (endpoints, midpoints, centres). Drag a grip to move or reshape the object interactively without invoking a Modify command. .. index:: single: Undo and Redo single: Undo single: Redo Undo and Redo ------------- - **Ctrl+Z** — undo the last action. - **Ctrl+Y** — redo. The undo history is per-drawing and is preserved as long as the drawing tab remains open.