
Engineering projects often require the highest possible accuracy. That’s one of the main reasons survey teams use Local Coordinate Systems (LCS). Because an LCS is designed for a small area—usually the project site—it helps minimize distortion and keeps your measurements as reliable as possible within that zone.
In this article you'll learn how to create a Local Coordinate System using the Point Mapping technique.
Overview
- Create a Local Coordinate System
- Understanding the Local Coordinate System
- Apply a Local Coordinate System to My Project
- Import and Export a Local Coordinate System
Create a Local Coordinate System
A local coordinate system is created by relating local measurements to known world coordinates at common control points. This relationship is typically stored in a Localization file, which may come from previous survey work or be created for a new site. In the VirtualSurveyor and TerrainCreator apps, this relationship is applied by matching geographic or projected coordinates with their corresponding local coordinates to define the local coordinate system.
To create a Local Coordinate System, you'll link:
- World coordinates from GPS/GNSS
- Local coordinates collected with a Total Station
The example illustration shows how these points are mapped to each other. The Point name associated with Latitude, Longitude, and Height (shown in red) to the Northing, Easting, and Elevation values (shown in blue). These matched points are then used in the VirtualSurveyor or TerrainCreator apps through Point Mapping to establish the local coordinate system.

1. Start Creating the Local Coordinate System
Both VirtualSurveyor and TerrainCreator apps provide a Point Mapping workflow that connects GNSS measurements to Total Station measurements. Using the setup wizard in Settings, you can create an LCS by manually entering points.
When you begin, you’ll choose the type of World Coordinate System you want to link to your local coordinates. Virtual Surveyor supports both Geographic and Projected coordinate systems. The steps below walk through creating an LCS using a Geographic coordinate system first, with notes on how the process differs when using a Projected system at the end of the article.
Create a Local Coordinate System Using a Geographic Coordinate System
Geographic coordinate systems use Latitude and Longitude, expressed in either Degrees, Minutes, and Seconds (DMS) or Decimal Degrees (DD).
To create an LCS from a Geographic system:
- Go to Settings → Local Coordinate Systems → Create New.
- Enter a name for the Local Coordinate System.
- Choose your measurement units: Metric, Imperial (United States), or Imperial (International).
- This determines the units used for the local coordinate conversion.
- Select Geographic as your coordinate system.
- Enter your Point Mapping data to link local coordinates to geographic coordinates.

2. Enter Control Points with Point Mapping
You can type coordinates manually or copy and paste values from a trusted source (such as WGS84 or published EPSG definitions).
- A minimum of three points is required to define the transformation.
- The software handles the calculations automatically — your role is to provide accurate matching point pairs.

Tips for Entering Geographic Coordinates
- Ensure there is a space between each coordinate component for both latitude and longitude.
- If no direction letter (N, S, E, W) is included:
- Latitude defaults to North
- Longitude defaults to East
- You may also use a minus sign to indicate South or West.
Alternative Option: Create a Local Coordinate System Using a Projected Coordinate System
Projected coordinate systems use X, Y, and Z values expressed in meters or imperial units and require a defined horizontal and vertical reference system.
The overall workflow is the same as for a Geographic system, with a few additional selections:
- Go to Settings → Local Coordinate Systems → Create New.
- Enter a name for the Local Coordinate System.
- Choose your measurement units: Metric, Imperial (United States), or Imperial (International).
- Select Projected as your coordinate system.
- This unlocks additional options.
- Select your Horizontal Coordinate System using an authority code (for example, EPSG).
- Select your Vertical Coordinate System using an authority code.
- Enter your Point Mapping data to link local coordinates to projected coordinates.

Point Mapping with Projected Data
When entering world coordinates for Projected data, make sure your Northern, Easting, and Elevation values are clearly defined and correctly paired to the matching local coordinates. 
3. Verify the Error Statistics
Because real-world points rarely algin perfectly, you’ll usually see small differences between the expected local position and the computed result. Those differences are summarized in the Error Statistics.
- Maximum XY Error: the largest horizontal differences among the control points
- RMSE XY: the typical horizontal difference across all points
- Maximum Z Error and RMSE Z: the same measures applied to elevation

Smaller values indicate a more reliable Local Coordinate System and better alignment across your project data. Small errors are normal and expected, but larger values are a sign that something may need a closer look. In those cases, starting with the point that shows the largest error is often the quickest way to identify input mistakes or inconsistencies.
While creating the Local Coordinate System, you can adjust point inputs and immediately see the error statistics update. Once the Local Coordinate System is created, it becomes fixed and can’t be edited.
4. Save the Local Coordinate System
Click Finish to finalize your Local Coordinate System.
What Happens When You Save
The Local Coordinate System becomes final. An LCS is defined by transformation parameters that act as the reference frame for your entire project. Editing those parameters after creation would effectively shift, rotate, or scale all linked project data (such as drone photo positions and mapped control points). That can invalidate alignments and reduce accuracy.
If you need changes, the best approach is to create a new LCS, then decide whether to keep or delete the old one.
Where the Local Coordinate System is Stored
All local coordinate systems you create are saved to your My Virtual Surveyor ID, are available anywhere you sign in, and can be reused with other projects.
Reuse and Sharing Options
You can export the LCS as a .vscs file that can be shared and imported by other users.
Understanding the Local Coordinate System
Bounding Box of a Local Coordinate System
Every Local Coordinate System is valid only within a limited area called its bounding box that is determined by the coordinates of your World Coordinate System. Inside this region, the transformation between world and local coordinates is well-defined and accurate. The bounding box is defined in World Coordinates, and it determines where the LCS can be safely used.
Note on Scale Factors
VirtualSurveyor does not apply a scale factor inside an LCS in order to avoid making mistakes. A scale factor typically doesn’t come with a clearly defined “valid region,” which makes it difficult to know where it applies correctly. Using a bounded LCS keeps the valid area explicit and predictable, so accuracy doesn’t vary unpredictably across the site.
Apply a Local Coordinate System to My Project
After you create an LCS in TerrainCreator, it becomes available in both TerrainCreator and VirtualSurveyor.
Just like any other coordinate system, you can set it as your Project Coordinate System. TerrainCreator can then reproject drone photo coordinates into their correct positions within the LCS—as long as the data falls within the bounding box and the horizontal and vertical components are properly defined.
Additional notes about an LCS:
- You can export it to .kml because it contains a complete projection definition.
- When the coordinate system is undefined, the software will ask to define it.
- It includes a bounding box, just like other coordinate systems (only smaller by design).
Steps to Set Up a New Project with a Local Coordinate System
After you add drone photos in TerrainCreator, you’ll be prompted to choose a Project Coordinate System:
- TerrainCreator will attempt to recognize the Local Coordinate System and autofill horizontal and vertical datums based on photo metadata.
- If it doesn’t autofill, you can search for and select the Local Coordinate System for the Horizontal datum, and the Vertical datum will apply automatically from the same local system.
- Click OK to load the photos and continue with photogrammetry.

Steps to Reproject to a Local Coordinate System
With your dataset open in VirtualSurveyor:
- Click the Project Coordinate System in the Status Bar.
- Search for the Local Coordinate System you created in Settings and select it.
- Click OK.
- Your project is reprojected to the selected Local Coordinate System.
Import and Export a Local Coordinate System
You can share Local Coordinate Systems with teammates or other VirtualSurveyor users by exporting and importing them in the VirtualSurveyor or TerrainCreator apps.
- The import/export localization file format is .vscs
- Other localization file formats are not directly supported

Other Localization Files
Localization information is often delivered in a variety of formats such as PDF, CSV, JXL, or XML. While these formats can’t be imported directly into the VirtualSurveyor apps, they still contain the information needed to define a local coordinate system. In these cases, you can open the file, identify the shared control points, and manually enter the corresponding coordinates into the Point Mapping wizard to create a new Local Coordinate System.