Reproject Component

 The Reproject Component dialog is accessed in the Component pane by clicking the coordinate system picker button for the component.

 

Use Reproject Component for three purposes:

 

 

The Reproject Component command in the Component pane launches the Reproject Component dialog.   This dialog is used to change the projection of an image or drawing that already has had the initial coordinate system set correctly.  Initial coordinate systems are either set automatically upon import or are manually assigned, if necessary, using the Assign Initial Coordinate System command.

 

If the coordinate system read out in the Component pane uses red text then the initial coordinate system has not yet been assigned and the Reproject Component command will be disabled. To enable the Reproject Component command we must first use Assign Initial Coordinate System to specify the initial coordinate system.

 

To change the projection of an image or drawing:

 

  1. Open the image or drawing.

  2. In the Component pane press the coordinate system picker button and choose Reproject Component.

  3. Press the coordinate system picker to choose the new coordinate system desired.  This allows a quick pick from the listed favorites or choosing More... to launch the full Coordinate System dialog that allows a choice of thousands of systems.

  4. If the Conversion picker button is enabled, click to choose a Conversion method other than default, if desired.

  5. When reprojecting an image, specify Local scales and other options if Auto settings are not desired.

  6. In the Reproject Component dialog choose how the new coordinate system will be applied:

 

See the Example: Change Projection of an Image topic for a step-by-step example.

Reprojection Changes Drawings, and Creates New Images

The  Reproject Component process changes the coordinate numbers within the component into numbers computed for a new coordinate system, and also updates the projection assigned to the component.  The dialog appears with drawing and image windows but does not appear with map windows, since map windows are just viewports into the layers they display and do not themselves contain any data.  To change the projection used by a map window, we use the Map Projection dialog.  See the discussion in the Projections topic.

 

For drawings, changing the projection changes the coordinate numbers embedded in the drawing's geometry, but does not change the number of objects or the number of vertices in each object.  After reprojecting a drawing, the table for the drawing will still have the same number of rows.  For images, changing the projection will change the number of pixels to interpolate coverage by pixels over the new shape of the image in the new coordinate system.  After reprojecting an image, the table holding tiles for the image will in most cases have a different number of rows.

 

Because the number of pixels and thus tiles will change when reprojecting an image, the action button in the Reproject Component dialog for an image is always an Add Component operation, to create a new table and image in the new projection form.  See the Reprojection Creates a New Image topic for why reprojecting an image changes the number of pixels.

Drawings and Images

Choosing Reproject Component in the Component pane launches the Reproject Component dialog.  The dialog shows the current coordinate system in use and allows us to specify a new coordinate system to be used.    When launched to reproject a drawing, the dialog allows choice of a new coordinate system and a conversion method:

 

 

Reprojecting an image necessarily changes the size of the image, so the dialog provides controls to manage that process.  

 

 

 

Current

The current coordinate system used by this component.

New

The new coordinate system into which this component's data should be reprojected.

Click to choose the new coordinate system desired.  This allows a quick pick from the listed favorite coordinate systems  or choosing More... to launch the full Coordinate System dialog that allows a choice of thousands of systems.

Conversion

The conversion method used.  Depending on the Current coordinate system in use and the New coordinate system desired, choices other than default

Click to choose a different conversion method.  Only enabled when there are choices other than default going from the Current system to the New system specified.

Local scales

For images: The local scale transformation to apply to X and Y values, which has the effect of setting the size of pixels.  The Auto checkbox sets local scales to values that produce an image with roughly the same number of pixels in X and Y extents.   Uncheck the Auto checkbox to enable a custom choice.

 

In addition to controlling the size of resultant images when re-projecting an image, the Local scales control also allows resizing images within the same coordinate system, by altering the pixel size.  

 

For example, an image might have 10 pixels per degree and thus a Local scale X of 0.1 would be used in degree-based coordinate systems, such as Latitude / Longitude.  

 

See the Coordinate System Metrics topic.

Local offsets

For images: Absolute values to add or to subtract in the X and Y directions, in effect setting the position of the image origin (lower left corner).  The Auto checkbox sets the image origin so that the coordinate of the pixel in the left bottom corner of the image is 0, 0.  Uncheck the default Auto checkbox to enable a custom choice.

 

See the Coordinate System Metrics topic.

Tiles

For images:  Specify the pixel data type within tiles and the size of tiles.  The Auto checkbox sets the tile type and tile size to be the same as the original image.  Uncheck the default Auto checkbox to enable a custom choice.  

 

In addition to specifying the pixel data type and the tile size in resultant images when re-projecting an image, the Tiles control also allows changing the data type and tile size within the same coordinate system.  

 

For example, we can create a new image in the same coordinate system where the pixel data type has been changed from float32 to float64. and the tile size is 256 x 256 instead of 128 x 128.  

<Image size readout>

For images:  Reports the X by Y dimensions in pixels for the image about to be created, as well as the total size of the image's data in bytes. The exact size of image data in the storage will vary due to a number of factors, such as compression, visible / invisible masks, intermediate levels, and storage overhead, but the reported size is useful as an approximate estimate.

Allow parallel execution

If checked (default) the reprojection computation will use CPU parallelism in multiple threads on as many CPU cores as are available for faster performance.   Checking this box is equivalent to commanding THREADS SystemCpuCount() in SQL in templates that utilize parallelism.

Add Component / Update Component

Choose either the Update Component or Add Component setting by pulling down on the down arrow button, and then press to reproject.

 

  • Update Component - Available for drawings only.  Reprojects the drawing in-place without creating a new drawing and table.

 

  • Add Component - Available for both images and drawings.  Create a new component and its table as reprojected into the new coordinate system. Does not change the original component.

Edit Query

Click to open the Command Window pre-loaded with an SQL query which accomplishes the reprojection as specified and given the choice of Update Field or Add Component.

Close

Close the dialog

 

Choosing a New Coordinate System

 Click the coordinate system picker button to choose a new coordinate system.   The default favorites and any other favorites we have added will appear in a list, along with a More... option to launch the full  Coordinate System dialog.

 

 

(Favorites List)

A list of favorite coordinate systems.  Factory defaults are Pseudo-Mercator and Latitude / Longitude.  Add or delete favorites as desired.

More...

Launch the full Coordinate System dialog that allows a choice of thousands of systems.

Favorites

Add, delete, or modify favorite coordinate systems.

Copy

Copy the current coordinate system to the Windows Clipboard.

Paste

Paste a coordinate system from the Windows Clipboard.

Paste without Metrics

Paste a coordinate system from the Windows Clipboard, but do not paste any Coordinate System Metrics it may contain, pasting everything else.

 

See the Coordinate System topic for information on choosing a new coordinate system using the full Coordinate System dialog.

Using Copy and Paste to Reproject

We often want to reproject a component into exactly the same coordinate system used by some other component.  That is easy to do with Copy and Paste.   In what follows, the source component means the one with the coordinate system we want to copy, and the target component is the one we want to reproject.

 

 

In the Component pane for the source component, click the coordinate system picker button and choose Copy.  That copies the coordinate system in text form into the Windows Clipboard.  

 

Next, in the Component pane for the source component, click the coordinate system picker button and choose Reproject Component.  

 

 

Click the coordinate system picker button for the New component and choose Paste or Paste without Metrics, as desired.  

 

SRIDs from databases: When copying coordinate systems from components that reside within DBMS data sources, SRID:xxx definitions that only make sense in the context of a specific database are converted to JSON text representation prior to copying.  The JSON text is more broadly understandable and reusable in other settings.

 

Using Copy is also great way to get a text version of the coordinate system used by a component.  For example, we can paste it into a Comments component or into Notepad to have a text record of all details of the coordinate system in use.  If we want to compare two different coordinate systems that seem similar, we can Copy each of them and then Paste into a Comments component or into Notepad as ordinary text, to facilitate comparison of all details.

Conversion

Drawings and images are reprojected from a current coordinate system into a new coordinate system using mathematical formulae, called conversion methods, which vary depending upon the starting and ending coordinate systems.  Conversion methods also are called paths. In most cases of the millions of different starting and ending combination possible within Manifold, only a single, standard conversion method is available and is used by default.   In some cases, however, more than one conversion method can be used.

 

 The Conversion button allows us to choose a non-default conversion method, if available, for recalculating the reprojection from the Current to the New coordinate system.  If the current and new coordinate systems are the same, or if they are the same except for coordinate system metrics and/or axes ordering (XY or YX), the conversion path will be shown as default and cannot be altered.  In such cases a short description will appear stating why default is the only choice.

 

In most cases, the conversion picker button will be disabled, since alternate conversion methods are generally defined for a limited set of combinations from Current to New coordinate system.    In most cases, only coordinate systems defined in the EPSG system will have conversion paths other than the default. Conversion paths that use NADCON 5, NADCON (including HARN and HPGN), and NTv2 transformations are available only between Current and New coordinate systems that are both specified using EPSG codes.

 

 

One such combination is reprojecting a component from a Current coordinate system of MGI (EPSG: 4312) to a New coordinate system of  ETRS89 (EPSG:4258).  Both of these coordinate systems are used in Austria.  For that conversion path, alternatives to the default conversion are available and the conversion picker button will be enabled.    

 

 We press the conversion picker button to launch the Conversion dialog, to see alternatives.

 

 

The Conversion dialog shows that for this particular path there are five options in addition to the default conversion method.  The numbers in the right hand column show the accuracy provided by the different conversion methods.  

 

 Conversion paths marked with a red message icon have been deprecated or otherwise are discouraged by the EPSG system.  In the illustration above, two of the options are marked with a red message icon to indicate they have been deprecated in the EPSG system.    

  

Tech tip:  Click on a conversion path in the list to see the definition of that conversion path in the lower panel of the dialog.  In the illustration above, we have clicked on one of the deprecated conversion paths to see the definition for that path.  We can see from the comments in the definition that it has been replaced by the EPSG 3914 conversion method.

 

The EPSG 3914 conversion method does not appear in the list because it is not a usable conversion path from the Current to New coordinate systems currently selected.   This is a fairly typical situation for deprecated paths, where the path was deprecated because it contained an error, for example, in the datums used..  When the error is corrected, the new path, with new EPSG number, is no longer applicable because one or both of the corrected datums are no longer the same as used in the Current or New coordinate systems.

 

 

We can click on the NTv2 method to see the grid file it uses.    

 

To use a particular method, we click on it to choose it and then we press OK.

 

 

The conversion method then appears in the Reproject Component dialog.  Pressing Update Component will reproject the component from the Current to the New coordinate system using the Conversion method specified.  If we change our minds and choose a different New coordinate system, choosing a different coordinate system for the New coordinate system will preserve whatever was the previously selected conversion path, if it is still available for the new Current to New pair.  

Grid Files and Conversion Methods

Manifold includes many transformation methods for converting one coordinate system into a different coordinate system.  Most such methods use mathematical formulae for the recalculation and do not need any other data.  However, three transformation methods,  NADCON 5, NADCON (including HARN and HPGN), and NTv2 transformations, in addition to mathematical formulae also use data files that provide parameters for specific areas.  Those data files are called grid files.

 

Most transformation methods convert a coordinate system based on whatever Earth ellipsoid is used within the source and target coordinate system.  However, the Earth is sufficiently lumpy that in many regions the smooth surface of an Earth ellipsoid does not model the actual surface of the Earth in that region with sufficient accuracy to allow coordinate system recalculations at the accuracy desired. In such regions, grid files containing an array of numbers that describe the uneven surface of the Earth in the region can be used with NADCON, NADCON 5, or NTv2 transformations to provide higher accuracy conversions from one coordinate system into a different coordinate system.  

 

Grid files contain numbers that describe the lumpy surface of the Earth in a specific region, so a grid file for one region cannot be used for a different region.   Grid files are also designed for use with a specific transformation type, either NADCON, NADCON 5, or NTv2.   Grid files created for use with NADCON transformations, for example, cannot be used with NTv2 transformations.   NADCON (also including HARN and HPGN) and NADCON 5 are used primarily in the United States.  Many countries outside the United States tend to use NTv2.   Manifold supports all three, NADCON 5, NADCON, and NTv2,  to enable use of all grids worldwide.

 

Many grids have been published by governments for use in various countries, regions, provinces, and even for local settings such as counties and even individual cities.  Grids are not always easy to find, so Manifold has assembled a collection of grids within a single file, the grids.dat file, which covers all grids known to the EPSG database.    The grids.dat file provides in compressed form over 170 grid files, in .gsb, .las, and .los format, plus NADCON 5 grids, for use in NADCON 5, NADCON (including HARN and HPGN), and NTv2 grid-based transformations.  Grid files are for Australia, Austria, Brazil, Canada, France, Germany, Ireland, Japan, Netherlands, New Zealand, Portugal, Spain, Switzerland, the United Kingdom, and the United States.

 

The grids.dat file is provided as a separate file since it is approximately 380 MB in size: if we are not working with projections in a country that uses grid transformations, we can skip downloading the file and keep our Manifold / Viewer installation significantly smaller.

 

 grids.dat file required - The option to use NADCON 5, NADCON (including HARN and HPGN), and NTv2 grid transformations, if applicable, will be available and can be used in the Conversion setting only if we have installed the optional grids.dat file or the equivalent required grids as individual files.  The grids.dat file may be downloaded for free from Manifold's Product Downloads web page, and may be used with either Manifold System or the free Manifold Viewer.

 

In addition to grids known to the EPSG system that are published within the grids.dat file, there are grids with such niche constituencies that they do not appear even in the exhaustive EPSG database.  Occasionally new grids pop up as local governments publish new grids.   When grid files are published in standard formats like .LAS / .LOS for NADCON and .GSB for NTv2,  Manifold can use those when they are placed in the ~\shared folder of our Manifold installation.

 

When we use a NADCON (including HARN and HPGN), NADCON 5, or NTv2 conversion method, Manifold searches for the required grid file by name, checking first within the grids.dat file if that has been installed.  Manifold also checks for individual grid files by name, using .LAS and .LOS extensions for NADCON grid files and .GSB extension for NTv2 grid files.   If an individual grid file is found using the name required by the chosen conversion path, Manifold will use that grid file instead of the version in the grids.dat file.   That allows us to use a newer or alternate version of a grid file that has been published within the grids.dat file.

 

When Manifold looks for required grid files, if the files are not found or if they cannot be loaded for any reason (such as lack of permissions, corrupted data, access prevented by an antivirus package, etc.), the transformation logs the name of the file that failed to load into the Log Window and returns NULL values for the coordinates.

 

Using individual grid files, that is, not using the collection within the grids.dat file, is also a way to save space.   If we only use NADCON, NADCON 5 or NTv2 transformations in one specific region that requires only a single grid file, if we have that grid file we can put it in the in the ~\shared folder of our Manifold installation and skip downloading the entire grids.dat file.     As a practical matter, a 380 MB file is no big deal in GIS, so most users will simply download the grids.dat file for the convenience of not having independently to find and to download individual grid files.

 

See the Product Downloads web page for download and installation instructions for the grids.dat file.

Changing the Size of Images

As discussed in the Reprojection Creates a New Image topic, reprojecting an image usually changes the size of an image by changing the size of its pixels.  The same internal, interpolation machinery that automatically resizes images during reprojection can also be used to change the size of an image without changing the coordinate system.

 

To change the size of an image, in the Reproject Component dialog, do not choose a New coordinate system, but simply uncheck the Auto box for Local scales and set the number of pixels in X and Y direction for the unit of measure.   The image size readout will show the result.  Press Add Component to resize.

 

To change the size of an image:

 

  1. Open the image.

  2. In the Component pane press the coordinate system picker button and choose Reproject Component.

  3. Do not change the New coordinate system.

  4. Uncheck the Auto box for Local scales.

  5. Specify Local scales values that produce the desired image size in the readout.

  6. Press Add Component to create a new image and table of the desired size.

 

See the Example: Change the Pixel Size of a Terrain Elevation Image topic for a step-by-step example and discussion.

 

Notes

What grids are in the grids.dat file? -  See the SQL Example: List Transformation Grids topic.

 

Grid files are cached - For better performance, Manifold caches any grid files used by coordinate transforms.  The cache is effectively unlimited in 64-bit Manifold, but limited to 16 MB in 32-bit Manifold.

 

Synonyms -  Cartographers favor the term projection while programmers seem to prefer coordinate system.  This documentation uses the two terms interchangeably, with the term projection tending to be used more in GIS or display contexts and the term coordinate system tending to be used more when discussing programming, SQL or standards.

 

Using Auto with Local scales when reprojecting images - The Auto checkbox sets local scales to values that produce an image with roughly the same number of pixels by X and Y.  If we reproject an image without making any changes to the dialog, using Auto with the same coordinate system for New as the Current system, the resulting image might not have exactly the same number of pixels as the original image due to two rounding effects made by the Auto checkbox: First, the exact scales are rounded to two digits, with a scale of 1.31923 ft becoming 1.3 ft.  Second, if the rounded X and Y local scales differ by less than 25%, they are made the same as the smaller value, to make pixels square.

 

Conversions between the "same" coordinate systems - In general, there is no point picking a conversion method between coordinate systems that have different names but which have identically the same parameters.  An exception is when coordinate systems have identical parameters but different EPSG codes, where the EPSG database may provide for more than one conversion path between coordinate systems, in which case Manifold will allow selecting any of the different EPSG conversion methods.  The EPSG database contains a fair number of such cases.

 

Failing safe - The Reproject Component dialog checks all parameters prior to performing the reprojection, or generating a query that will attempt to perform the reprojection.   The reprojection fails (does not occur) if the reprojection cannot succeed due to an impossible combination of parameters in the coordinate systems or other errors.

 

Maximum reprojected image size - The maximum size of an image created by the Reproject Component dialog is 16 terapixels, that is, no more than 16,000,000,000,000 pixels.  Attempting to produce an image with more than 16 terapixels will fail.  Given the limitation on .map file sizes this is more a theoretical limit.

See Also

Component Pane

 

Coordinates

 

Projections

 

Assign Initial Coordinate System

 

Repair Initial Coordinate System

 

Map Projection

 

Coordinate System

 

Coordinate System Metrics

 

Base Coordinate System

 

Favorite Coordinate Systems

 

Favorite Base Coordinate Systems

 

Reprojection Creates a New Image - Why changing the projection of an image creates a new image.

 

Example: Detecting and Correcting a Wrong Projection - A lengthy example exploring projection dialogs and a classic projection problem.  We save a drawing into projected shapefiles and then show on import how a projection can be quickly and easily checked and corrected if it is wrong.

 

SQL Example: List Transformation Grids - In this example we use a few snippets of easy SQL to list NTv2 and NADCON transformation grids that are available within the grids.dat compressed collection of transformation grid files.   Grid transformation files can be used when creating custom base coordinate systems, for NADCON / HARN / HPGN and NTv2 high accuracy transformations that use grid files.

 

About Coordinate Systems

 

Projections Tutorial

 

Latitude and Longitude are Not Enough

 

Example: Convert a 0 to 360 Degree Projection - We often encounter data, both images and drawings, using latitude and longitude degrees that appears to be in Latitude / Longitude projection but which has longitude values from 0 degrees to 360 degrees and latitude values from 0 degrees to 180 degrees, instead of the usual arrangement of -180 degrees to 180 degrees for longitude centered on the Prime Meridian, and -90 degrees to 90 degrees for latitude centered on the Equator.  This example shows how to utilize such data by assigning the correct projection.

 

Example: Assign Initial Coordinate System - Use the Component pane to manually assign an initial coordinate system when importing from a format that does not specify the coordinate system.

 

Example: Reproject a Drawing - An essential example on changing the projection of a drawing, either within the drawing itself, or by changing the projection of a map window that shows the drawing and on the fly reprojects the drawing for display.

 

Example: Change Projection of an Image - Use the Reproject Component command to change the projection of an image, raster data showing terrain elevations in a region of Florida, from Latitude / Longitude to Orthographic centered on Florida.

 

Example: Adding a Favorite Coordinate System - Step by step example showing how to add a frequently used coordinate system to the Favorites system.

 

Example: Change the Pixel Size of a Terrain Elevation Image - Use the Reproject Component dialog to change the pixel size of a terrain elevation image, reducing the total number of pixels used.  This process is also called resampling.