Have you ever loaded two files into ArcGIS with different projections yet they still lined up? I am guessing all of you will say yes as this is one of ArcGIS’ best features, albeit it rather seamless and hidden. The automated feature that lines up these various spatial layers is called, projecting (or re-projecting) on the fly, and will be the focus of this month’s Geospatial Frequently Asked Question (G-FAQ). Similar to the last few months of the G-FAQ, I will start off with a short explanation of the topic followed by a tutorial video.
In this G-FAQ, we will focus on answering the following set of core questions:
What is projecting on the fly and how does it line up my spatial layers? When might projecting on the fly fail? Are there any special considerations to working with datasets that have been projected on the fly?
In the distant past, ArcGIS did not have the ability to line up spatial layers, including vectors and rasters, that were loaded if their projections differed. When I say that spatial layers with different projections would not line up, here is an example. If you loaded a color raster image file with a WGS84 datum and geographic coordinates; then loaded a parcel layer from the same location with a WGS84 datum but UTM coordinates, the vector file would not appear over top the raster imagery. Rather, the two files would look to occupy different geographic spaces even though they are indeed from the same location. While I am not 100% sure when on the fly projections were added, they have been a part of the software since version 9.0 at least.
So then, projecting data on the fly is a feature that is rather seamlessly done by ArcGIS where by the data frame of your current session assumes the projection of the first file you load. In the example above then, since we loaded the raster imagery first, the data frame would assume a geographic WGS84 projection. And then when the second file is loaded, it is automatically re-projected from UTM WGS84 to match the Geographic WGS84 projection of the data frame and the first spatial file. This on the fly projection continues as more and more spatial layers are loaded into the same ArcGIS session. It is important to note that files transformed on the fly are done so in memory only so that the original file remains unaffected.
On the fly projections only work when each of the spatial layers has metadata defining the datum and coordinate system (i.e. its projection, see this past GFAQ for more details on this topic). Returning to the example above, if the first layer we loaded, i.e. the raster, was not projected (see the link above to determine if a dataset is projected), then the data frame would not assume any projection. And similarly, if the second spatial file we loaded was not projected but the first layer was, then on the fly projection would fail and the layers would not line up.
While on the fly projections are a huge time saver, there are some points that need to be considered so as to avoid errors:
- Loading projected layers in a different order can cause slightly different alignment (or misalignment) as well as change the look and feel of the session as the data frame assumes the first projection and then reprojects subsequent layers to this.
- In some cases, ArcGIS will make assumptions about a spatial layer even if it is missing projection metadata. This is often the case with geographic coordinates whereby Arc will assume a WGS84 datum which may or may not be correct.
- If a subsequent file is loaded with a datum that does not match that of the data frame, ArcGIS will throw up a warning that a geographic transformation (see this GFAQ for more details on transformations) is required and will typically choose the best option. It is important to note that the mathematics required for this geographic transformation are only an approximation for processing speed. If a precise transformation is required, you will need to use the toolbox functions Project (for vectors) or Project Raster to change the actual source file.
- You can check the Data Frame properties to determine what on the fly projection has been set by right-clicking on Layers in the Table of Contents.
- On the fly projections should only be used for visual display of data. You should never make area or distance calculations off of on the fly reprojected data given the mathematical approximations stated above. If you need to make these calculations, you should reproject all of the source files into the same projection with the toolbox functions mentioned above.
Now that we have set the stage for on the fly projections, it is time to spend a few minutes on a visual review of this topic in the video tutorial you will find here.
This seven minute or so tutorial video explains many of the points made above (plus a few additional quirks) but in a visual fashion. Hopefully you will see and hear a few tidbits you did not know before!
Do you have an idea for a future G-FAQ? If so, let me know by email at firstname.lastname@example.org.
Find Out More About This Topic Here
- Harvard University – Why Don’t My Layers Line Up?
- Hunter College – What is a Datum Transformation?
- Rice University – Introduction to Coordinate Systems and Projections
- Texas A&M University – Lab Assignment 04: Map Projections
Brock Adam McCarty