Understanding GIS feature class adjustments |
|
Release 9.2
Last modified August 23, 2007 |
|
It is common for GIS feature classes to be related to land ownership boundaries. For example, road centerline and sewer feature classes must maintain a spatial distance from the boundary of a land parcel, zoning districts must follow the boundaries of land parcels, and building footprints must lie inside the boundaries of land parcels. It is thus typical for GIS feature classes to be edited using parcel boundaries as a background reference. For example, road centerlines are constructed at a specified distance from the road frontage boundary of a parcel.
The cadastral fabric acts as a background reference for related GIS feature classes. When the cadastral fabric is adjusted through a least-squares adjustment, parcel corner point coordinates may change and update with new values, resulting in discrepancies between the cadastral fabric parcels and overlaying GIS feature classes. It is important for GIS feature classes based on the cadastral fabric to be adjusted similarly, thereby maintaining their relative position.
Edits to parcels in a fabric job can include a least-squares adjustment of the coordinates. Simple parcel edits will generally adjust a local group of parcels, whereas a fabric job created specifically for an adjustment will adjust a larger, regional group of parcels. The size of an adjusted area in the cadastral fabric can vary greatly.
When an adjusted fabric job is posted back to the cadastral fabric, new coordinates for the adjusted points are compared against the original coordinates in the fabric. A set of displacement vectors between the new and original coordinates are generated and stored in a table in the geodatabase. The cadastral fabric stores a sequential record of all the displacement vectors occurring from all least-squares adjustments. The displacement vectors are used to spatially adjust GIS feature classes in what is known as a GIS feature class adjustment.
It is important to distinguish between a GIS feature class adjustment and the least-squares adjustment. The least-squares adjustment adjusts cadastral fabric coordinates, which generates displacement vectors. The feature adjustment uses the displacement vectors to spatially adjust associated GIS feature classes. A GIS feature class adjustment can only be done if a least-squares adjustment has been performed on the cadastral fabric.
The GIS feature class adjustment in the cadastral fabric is based on the ArcGIS Spatial Adjustment. The ArcGIS Spatial Adjustment is a set of tools that lets you transform, rubbersheet and edgematch features in ArcMap.
Learn more about the ArcGIS Spatial Adjustment
The GIS feature class adjustment in the cadastral fabric uses rubber sheeting, which is a process that adjusts the shape geometry of a specified source layer in ArcMap to a more accurate target layer. Shapes are adjusted in a piecewise transformation that preserves straight lines. The rubber sheeting transformation requires displacement links, which are vectors defined between coordinates in the source and destination layers. For the GIS feature class adjustment, the displacement vectors generated after a least-squares adjustment of the fabric provide the displacement links required by the rubber sheeting process.
Displacement vectors are stored in an adjustment vectors table (Fabric_Vectors) when a fabric job is posted to the cadastral fabric. All vectors stored for a single job post are tagged with a sequence ID, called an adjustment level. The adjustment level orders feature adjustments relative to other feature adjustments in the system. Each adjustment level has a corresponding date and time stamp and an associated job ID (stored in the Fabric_Adjustments table). The Fabric_Levels table stores associated feature class IDs, their source cadastral fabric, and the most recent adjustment level applied to the feature class.
Because each set of displacement vectors is associated with an adjustment level, feature adjustments can be applied ad hoc. Since feature classes are tracked by their last adjustment level, previous displacement vectors are never reapplied and vector sets are always executed in sequence and not omitted.