Hawth's Analysis Tools for ArcGIS


 You are here: Home > Hawths Tools > Tools Descriptions & Help


Input: a point layer
Reference: any number of raster or polygon layers
Output: attributes are added to the original point layer

  • for polygon layers, the user can specify which fields will be acquired from the polygon attribute table and added to the point attribute table (for each polygon layer the user is prompted to select these fields before processing begins)
  • in the case of raster layers, numerous layers can be selected and provided that the Surpress Warnings and Ignore All Spatial Reference Difference options are checked, the program will process all of the raster layers automatically (convenient if the user wishes to do other things while the program runs)
  • in the case of raster layers with multiple bands, each band will be intersected consecutively and added to the point attribute table
  • the user is provided with a processing report that has warnings about any potential problems (e.g. points occurring outside of the bounds of a reference layer, etc)
  • in the event of a field name conflict, the user is prompted to supply a unique name for the new field
  • handles large rasters (>25M cells)
  • checks that the spatial references (projections) of the point and raster layers are the same, but also allows you to supress this check
  • allows a low memory (RAM) processing option for resource-limited computers


  • the intersect cannot be made automatic for multiple polygon layers (for each one, the user is prompted to identify the fields of interest before processing begins)
  • for polygon layers and a point layer containing numerous points, a Spatial Join is much faster (joins the polygon attribute table to the point attribute table, but does not create new fields in the point table)
  • only acquires the Value attribute from the raster

[Click for larger view]


Getting started. A point layer must be loaded into ArcMap in order to use this tool. If your point layer is an event theme and you are experiencing problems, try making it a shapefile and trying again (right click on the event theme in the Table of Contents, select Data, then Export Data). Additionally, all of the reference layers that will be intersected with the points must be loaded into ArcMap prior to starting the tool.

Naming convention for new fields. Field names are limited to 10 letters for DBF files. Layer names are not limited in this way and can often be quite long. For this reason, the program only uses the first 6 letters of the layer name to create the field name. It is recommended that you rename you layers with short names before starting the tool (note: this does not entail renaming the file, and is not a permanent measure. Each layer in the ArcMap Table of Contents can be renamed by clicking on it twice with a pause between clicks.) For instance, if my DEM raster is called "alberta_dem_meters.img" in the TOC, I would probably rename it to "ABDEM" to ensure that I could recognise the new field in the attribute table (which would otherwise be called "albert". Note that in the case of raster with multiple bands, the resulting fields would be ABDEM_B1, ABDEM_B2, etc.

Intersecting with polygon layers is very slow. If you have a large number of points (e.g. > 2000), or a polygon layer that contains numerous polygons (e.g. > 10000) it is recommended that you use a Spatial Join (standard ArcMap functionality) to acquire attributes from the polygon layer. If you wish to copy the attributes to the point shapefile permanently you should create a new blank field in the point attribute table for each field in the polygon attribute table you wish to copy (note that the field types must match: integer, string, double, etc). Create these blank fields BEFORE doing the Spatial Join. Then use the Field Calculator to copy the attributes in the joined table.

Supress messages option If you are intersecting multiple layers and want all of them to be processed without interuption you can supress the warning messages. However, if you do this, it is very important that you read through the results summary displayed at the end of processing to check for these errors!

Ignore all spatial reference difference This tool does not perform on-the-fly reprojection of data. Therefore, it is essential that you ensure that the layers are in the same projection prior to using this tool. For raster layers, the tool checks to see if the projection matches that of the point data, and if a difference is found prompts the user with a warning but allows the user to continue processing. This will of course interupt processing if you have multiple layers selected. You have the option of supressing this check if you are confident that the layers are in the same projection, or that the difference between projections is trivial (e.g. the difference between UTM WGS84 and UTM NAD83). Note that if both the projections are undefined, the tool assumes they are the same, and that if one projection is undefined and the other is defined, the tool assumes they are different.

Force low memory processing By default, this tool will load the entire raster into RAM if it is less than 25M pixels. This is a strategy that is designed to increase processing speed. For larger rasters, the tool will not do this (because of memory consumption limitations that cause the tool to fail). If you are running this software on a low memory system like a laptop you may wish to force the low memory option even for smaller rasters, so this option is provided for you.

Points outside the bounds of rasters In versions prior to 3.17, values outside the raster received the default field value of 0. This creates the potential for confusion between real 0 values, and these Null zero values. In version 3.17 and on, these points are explicitly assigned the NoData value for the raster layer.

For versions prior to 3.17:
When numeric fields (e.g. double or long integer) are added to a table, the default value is zero. When the points are intersected with the reference layer (a raster for instance) the zero values are replaced with the value from the raster. However, if any of the points occur outside of the bounds of that raster, or in Nodata cells, then the value of zero remains. There are two major implications:
1. if zero is a valid value in the raster layer (e.g. a snow depth raster) you cannot tell the difference between a true value of zero for a point and a value of zero that persists because that point occurs outside of the extent of the reference layer.
2. if you take such a field and analyse it statistically, you run the risk of erroneous results if these zero values are included. They are not true zeros, they are really NoData.
The error report will warn you if this problem is potentially present in your dataset for each reference layer.

NoData values. You should screen your points for NoData values before using that data in any statistical analyses. NoData values can be any number, but most often they are the smallest or largest number possible for a given pixel data type. For instance, for rasters of the Long Interger data type, the range of possible values is -2,147,483,648 to 2,147,483,647, and the most common NoData value is -2,147,483,648. It is usually very easy to identify NoData values in your point attribute field.

Home | Articles | Services || Hawth's Tools:  Overview | Description | Download | FAQ