.. index:: single: AEC Survey Points AEC Survey Points ================= An AEC Survey Point is a full civil survey marker storing a complete set of survey attributes alongside its drawing position. Place with **Civil › Points › Civil Point** or the ribbon button, then fill in the properties in the Object Inspector. Properties ---------- .. list-table:: :header-rows: 1 :widths: 25 75 * - Property - Description * - **PointNumber** - Numeric survey ID. Used as the primary key in the database and displayed as the point label. * - **PointName** - Descriptive name. * - **Northing / Easting** - World coordinates. Moving the marker on the canvas automatically updates Northing and Easting, and vice versa. * - **Elevation** - Z value stored with the point. * - **RawDescription** - Survey field code (e.g. ``EP``, ``BM``, ``CL``). * - **FullDescription** - Expanded description used in reports and exports. * - **PointGroup** - Assigns the point to a named group. * - **LockPoint** - Prevents the point from being moved accidentally. * - **PointStyleName** - Selects a named point style from the library. .. index:: single: Point Style Library Point Style Library ------------------- Named point styles control the marker shape and label appearance. Nine built-in presets are always available: .. list-table:: :header-rows: 1 :widths: 25 30 45 * - Style - Default marker - Label * - Standard - Dot - Name and elevation * - Benchmark - Circle with cross, yellow - Name, elevation and description * - Control Point - Triangle with dot, red - Name, elevation and number * - GPS Rover - Square with cross, green - Name, elevation, northing and easting * - Iron Rod - Cross, cyan - Name and elevation * - Detailed Points - Dot, cyan - Elevation with ``El:`` prefix * - Spot Elevation Cross - Small cross - From the surface's spot elevation label style * - Spot Elevation Dot - Small dot - Elevation value only * - Empty - Hidden - Hidden Edit or add styles via **Format › Point Style…** (**Ctrl+Shift+D**). .. index:: single: Importing Survey Points from CSV Importing Survey Points from CSV --------------------------------- Open the **Point Manager** (**Civil › Points › Point Manager…**) and click the **Import** button on its toolbar to open the CSV import dialog. .. code-block:: text ┌────────────────────────────────────────────────────────┐ │ File: [path/to/file.csv ] [...] │ │ Format: [Auto-detect (by column count) ▼] │ │ ☐ Skip first line (header row) │ │ Point group: [optional group name ] │ │ Preview (first 5 lines): │ │ ┌──────────────────────────────────────────────────┐ │ │ │ 1,538345.123,4872341.456,412.5,BM-001 │ │ │ └──────────────────────────────────────────────────┘ │ │ Imported 25 points successfully. [Import] [Cancel] │ └────────────────────────────────────────────────────────┘ **Supported formats:** .. list-table:: :header-rows: 1 :widths: 40 60 * - Format - Column order * - Auto-detect (by column count) - Detects automatically from the number of columns. * - P, N, E, Z, Desc - PointNumber, Northing, Easting, Elevation, Description * - N, E, Z, Desc - Northing, Easting, Elevation, Description * - N, E, Z - Northing, Easting, Elevation * - P, E, N, Z, Desc - PointNumber, Easting, Northing, Elevation, Description * - E, N, Z, Desc - Easting, Northing, Elevation, Description * - E, N, Z - Easting, Northing, Elevation Accepted file types: ``.csv``, ``.txt``, ``.pts``. Lines starting with ``#`` or ``;`` are treated as comments. Decimal separator is always ``.``. .. index:: single: Point Groups Point Groups ------------ Use **Civil › Points › Create Group…** and **Add to Group…** (or the Point Manager's group tabs) to organise points into named groups. .. code-block:: text ┌──────────────────┬──────────────────────────────────────┐ │ Groups │ Points in: GroupA (3) │ │ ┌────────────┐ │ ┌──────────────────────────────┐ │ │ │ GroupA (3) │ │ │ #1 N=538345.12 E=4872341 │ │ │ │ GroupB (1) │ │ └──────────────────────────────┘ │ │ └────────────┘ │ [Add Points...] [Remove Selected] │ │ [New][Rename] └──────────────────────────────────────┘ │ [Delete][Desc] └────────────────── [Close] - **New** — create a group. - **Rename / Description** — edit group metadata. - **Delete** — remove the group (points are not deleted). - **Add Points…** — opens a checklist of all database points; check to add. - **Remove Selected** — removes highlighted points from the group. **From the canvas:** Select civil points on screen, then either: - Run **ADDTOGROUP** (``ATG``) and pick or type a group name. - **Right-click** the selection — the context menu shows existing groups and a *New Group…* option for instant assignment. Other commands: **REMOVEFROMGROUP** (``RFG``) removes selected points from a group; **CREATEGROUP** (``CRG``) creates a group and lets you click points to add. .. index:: single: Converting AutoCAD Points Converting AutoCAD Points ~~~~~~~~~~~~~~~~~~~~~~~~~ The **CONVERTPOINTS** command (alias ``CPT``) converts standard AutoCAD point markers into AEC civil survey points. This is useful when importing DXF files that contain point entities with X/Y/Z coordinates but no civil metadata. **Workflow:** 1. Select one or more AutoCAD point entities on the canvas. 2. Type ``CONVERTPOINTS`` (or ``CPT``) in the command line. 3. Optionally enter a **group name** to assign all converted points to a point group. Press Enter to skip. 4. Choose whether to **delete the original point entities** after conversion (``Y`` / ``N``). Each converted point receives the next available point number and inherits its X/Y/Z coordinates from the original point entity. .. index:: single: Point Manager Point Manager ------------- The **Point Manager** is a spreadsheet-style window for viewing, editing, importing, and transforming survey points. Open it with **Civil › Points › Point Manager** or the ribbon button. .. code-block:: text ┌─────────────────────────────────────────────────────────────────┐ │ [Import][Export] | [Copy][Paste] | [Add][Delete] | [Renumber] │ │ [To Group][Ungroup][Lock] | [Translate][Rotate][Scale] │ │ [Swap E/N][Helmert] │ ├──────┬───────────┬───────────┬──────────┬──────────┬───────────┤ │ # │ Easting │ Northing │Elevation │ Raw Desc │ Full Desc │ ├──────┼───────────┼───────────┼──────────┼──────────┼───────────┤ │ 1 │ 612500.00 │4123000.00 │ 245.300 │ BNCHMRK │ Benchmark │ │ 2 │ 612510.50 │4123005.20 │ 246.100 │ EP │ Edge Pvmt │ │ ... │ ... │ ... │ ... │ ... │ ... │ ├──────┴───────────┴───────────┴──────────┴──────────┴───────────┤ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │All Points│ │ GroupA │ │ GroupB │ (sheet tabs) │ │ └──────────┘ └──────────┘ └──────────┘ │ └─────────────────────────────────────────────────────────────────┘ 25 points | Sheet: All Points | Total DB: 25 **Layout:** - **Toolbar** at the top with all operations. - **Grid** in the centre — 7 columns (#, Easting, Northing, Elevation, Raw Desc, Full Desc, Lock). All cells are editable; changes are applied immediately to the database and the canvas updates. - **Sheet tabs** at the bottom — "All Points" shows every point in the database. Each point group appears as its own tab, showing only the points in that group. - **Status bar** — current point count, active sheet name, total database count. .. index:: single: Toolbar Operations Toolbar Operations ~~~~~~~~~~~~~~~~~~ .. list-table:: :header-rows: 1 :widths: 20 80 * - Button - Description * - **Import** - Opens the CSV/TXT/PTS import dialog. Imported points are added to the database and appear on the canvas. * - **Import from Drawing** - Reads the point groups of another IQcad drawing (``.iqz`` or ``.ixml``) and lets you tick the groups to bring in. The first entry, **_All Points**, imports every point of the file whether grouped or not. Groups are created or merged by name. A point whose number is already used in this drawing gets the next free number above both drawings; the summary reports how many. * - **Export** - Opens the export dialog. If a group tab is active, only those points are exported; otherwise all points. Supports CSV and Excel (XLSX/ODS) formats. * - **Copy** - Copies the selected rows to the system clipboard as tab-separated text. Can be pasted into Excel, LibreOffice, or a text editor. * - **Paste** - Parses tab-separated text from the clipboard and creates new points in the database. **Only works on the "All Points" tab.** Expected columns: Number, Easting, Northing, Elevation, Description (optional). Header rows and duplicate point numbers are skipped automatically. Ideal for pasting data from Excel or LibreOffice Calc. * - **Add** - Creates a new point at (0, 0, 0) with the next available point number. Edit the coordinates in the grid afterwards. * - **Delete** - Deletes the selected points from the database and the canvas (with confirmation). * - **Renumber** - Opens the renumber dialog to reassign point numbers. * - **To Group** - Assigns selected points to a group (new or existing). A dialog asks for the group name. * - **Ungroup** - Removes selected points from the current group (only available on group tabs, not "All Points"). * - **Lock** - Toggles the Lock flag on selected points. Locked points cannot be moved accidentally on the canvas. * - **Translate** - Opens the Translate dialog — shifts selected points by dE, dN, dZ. * - **Rotate** - Opens the Rotate dialog — rotates selected points around a base point. * - **Scale** - Opens the Scale dialog — scales selected points from a base point. * - **Swap E/N** - Swaps the Easting and Northing values of selected points. * - **Helmert** - Opens the Helmert transformation dialog — 2D conformal transformation (translate + rotate + scale) fitted to control point pairs. .. index:: single: Sheet Tabs & Group Management single: Sheet Tabs single: Group Management Sheet Tabs & Group Management ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The tab bar at the bottom of the Point Manager shows one tab per group plus the "All Points" tab which always appears first. **Right-click a tab** to open the group context menu: - **New Group…** — create a named group. - **Rename Group…** — change the name (not available for "All Points"). - **Delete Group** — remove the group; points are not deleted from the database, only the group membership is removed. **Typical workflows:** 1. **Create a group from selected points:** select rows on "All Points", click **To Group**, type a name. 2. **Remove points from a group:** switch to the group tab, select rows, click **Ungroup**. 3. **Paste points from Excel:** copy rows in Excel (columns: Number, Easting, Northing, Elevation, Description), switch to "All Points" tab in the Point Manager, click **Paste**. 4. **Export a group:** switch to the group tab, click **Export**. 5. **Apply a coordinate transform:** select rows, click one of the transform buttons (Translate, Rotate, Scale, Swap E/N, Helmert). .. index:: single: Inline Editing Inline Editing ~~~~~~~~~~~~~~ Click any cell in the grid to edit it directly. Changes are committed when you press Enter or move to another cell. The following columns are editable: - **Easting, Northing, Elevation** — numeric coordinates. - **Raw Desc, Full Desc** — text descriptions. - **Lock** — type ``Yes`` or ``No`` (case-insensitive; also accepts ``True`` / ``False`` / ``1`` / ``0``). After editing, the canvas entity is updated immediately via ``UpdateSurveyPointsFromDB``. The point number column (#) is not editable from the grid — use the **Renumber** button instead.