Migrating to high precision
The ability to store coordinates in high precision was introduced with ArcGIS 9.2. Compared to low precision, high-precision storage allows you to store coordinates closer together while expanding the x-, y-, z-, and m-domains of the dataset.
Two things occur when you convert a spatial reference to high precision:
- The resolution value is reduced by a common divisor of the old value. For instance, if the old resolution value is 0.1, the new resolution value might be 0.05 or 0.025. This allows you to store coordinates closer together.
- The minimum and maximum values of the x,y spatial domain are expanded to cover the coordinate system's horizon. The coordinate system horizon is the valid area of use for a particular geographic or projected coordinate system. Often, the horizon reflects a mathematical limitation of the map projection.
Prior to ArcGIS 9.2, a feature class that included the entire earth could store features no closer than approximately 2 centimeters. Now you can store features as close as 10 nanometers, although it is not recommended that you use such small values.
To take advantage of these benefits, converting data to high precision is recommended in most cases. If you have to deliver data to clients who have not upgraded or you are satisfied with your existing situation, you do not need to convert your data to high precision. The data will continue to work in ArcGIS as it always has.
Converting to high precision does not affect existing coordinate values. This means that you can safely convert any type of data, including topologies, geometric networks, and versioned data.
There are two general ways you can convert data to high precision:
- Convert an existing geodatabase to high precision.
- Migrate data to a high-precision geodatabase.
Converting an existing geodatabase to high precision
This involves the following two steps:
- Upgrade the geodatabase to a 9.2 or later release geodatabase. You must upgrade, because geodatabases built with previous ArcGIS versions do not support storing data in high precision. Upgrading also allows you to take advantage of the other new capabilities of ArcGIS such as terrains, replication, and cartographic representations. Once a geodatabase is upgraded, older versions of ArcGIS will not be able to open the geodatabase. For this reason, you might want to make a copy of the geodatabase and upgrade the copy so you have both an original and an upgraded version. For information on the upgrading process, see Upgrading file and personal geodatabases or About upgrading ArcSDE geodatabases.
Once you have upgraded the geodatabase, it is considered high precision. Any new feature classes or feature datasets that you create will have a high-precision spatial reference. However, any existing data will still have low-precision spatial references, with their limitations in the spatial domains and resolutions.
- To convert existing data to high precision, use the Upgrade Spatial Reference geoprocessing tool, located in the Data Management Tools toolbox, Database toolset. It allows you to pick among several resolution values that will maintain the existing data's coordinates and relationships. When deciding on a resolution in this tool, keep in mind that increasingly smaller resolutions require more storage and will slow performance slightly.
You do not have to compress versioned data before starting the upgrade process. Neither upgrading the geodatabase nor upgrading the spatial reference will affect the coordinate values of your data. If you copy and paste versioned data to upgrade the spatial reference, only the currently connected version is copied. The output data will not be versioned.
Migrating data to a high precision geodatabase
Any low-precision data you import into a high-precision geodatabase automatically converts to high precision and is given a new default resolution value in the process. Because file geodatabases and geodatabases on ArcSDE database servers were not available prior to ArcGIS 9.2, they can only contain high-precision data. Whenever you migrate low-precision data into a file geodatabase or a geodatabase on an ArcSDE database server, this conversion always takes place.
You can use any method of importing to migrate low-precision data to a high-precision geodatabase:
- The Catalog tree Copy/Paste commands
- Export/Import an XML workspace document
- Import/Export geoprocessing tools
These methods provide the same default resolution for the output. To devise the new default resolution, ArcGIS uses 0.1 millimeters as a starting point and adjusts this for the coordinate system's unit of measure and to ensure a common divisor with the original resolution value.
The default resolution works well and is recommended in most cases. However, if fast performance and minimizing storage requirements are important for your application, you may want to choose a larger resolution when you migrate. Storing data at a larger resolution slightly improves performance and lowers storage requirements.
The copy/paste and export/import XML workspace document methods do not provide control over the resolution value when you migrate data. If you want to choose your own resolution, convert the data to high precision with the Upgrade Spatial Reference tool, choosing your own resolution in the process. Once the data is converted to high precision, you can import the data with the copy/paste or export/import XML workspace document method, which will preserve the resolution you chose.
The Import/Export geoprocessing tools provide control over the output resolution value because you can set the resolution in the geoprocessing environments before running these tools. When specifying a new resolution value, specify a resolution that is either the same as the current resolution or smaller. When choosing a smaller resolution, choose a value that divides evenly into the current resolution. For example, if your input resolution is .001 meters, you could specify a smaller resolution of .0005, .00025, or .0002, among others, since these values divide evenly into .001. Choosing a new resolution this way ensures coordinates are not affected by the conversion process. If for some reason you choose a smaller resolution value that does not divide evenly, coordinates will be modified slightly when you import. But even in this case, the amount of movement will be small enough that there will be no noticeable changes; all spatial analysis and processing results will be the same as before you migrated, and you will not need to make any changes to your data or application.
Specifying a resolution that is larger than the current resolution can generalize your data. Only specify a larger resolution when you're sure it is not going to adversely affect your application.
The Import/Export geoprocessing tools do not support migrating attribute domains, relationship classes, topologies, geometric networks, network datasets, and terrains. To migrate these to a default resolution that will be chosen for you, copy and paste the data. To choose your own resolution, use the Upgrade Spatial Reference tool before you copy and paste.
Creating a low-precision feature class or feature dataset
The easiest method is to use a pre-9.2 geodatabase that has not been through the upgrade process. You can create a new feature class or feature dataset with this geodatabase or import data into it.
If you have a pre-9.2 geodatabase that you have upgraded, the existing feature datasets and stand-alone feature classes are still low precision until you upgrade the spatial references. Because of this, you can create a new low-precision feature class within an existing low-precision feature dataset.
You cannot create low-precision, stand-alone feature classes nor feature datasets within a 9.2 geodatabase. Because file geodatabases and geodatabases on ArcSDE database servers were new for version 9.2, they can only contain high-precision feature classes and datasets.
You can determine the precision of a stand-alone feature class or feature dataset in the Catalog tree by right-clicking the feature class or dataset and clicking Properties. The data storage is shown on the General tab of the Properties dialog box.