This document is archived and information here might be outdated.  Recommended version.


ISpatialReferenceTolerance Interface (ArcObjects .NET 10.4 SDK)
ArcObjects Library Reference (Geometry)  

ISpatialReferenceTolerance Interface

Provides access to members that specify the spatial and M tolerances of a spatial reference.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

When To Use

Use the ISpatialReferenceTolerance interface to define default and user-specified XYTolerance and ZTolerance parameters utilized by the topology engine when performing geometric and relational operations on geometries associated with this spatial reference.  This interface also provides access to define the MTolerance used by the geometric and relational operations associated with this spatial reference.

 

Members

Description
Method IsMToleranceEqual Returns true if the measure tolerances of the two spatial references are the same.
Method IsXYToleranceEqual Returns true if the XY tolerances of the two spatial references are the same.
Method IsZToleranceEqual Returns true if the Z tolerances of the two spatial references are the same.
Read/write property MTolerance The tolerance used to determine equality of M values.
Read-only property MToleranceValid Returns true if the M tolerance is well defined (not NaN) and >= the minimum M tolerance.
Method SetDefaultMTolerance Sets the default tolerance used to determine equality of M values (2.0 * m resolution).
Method SetDefaultXYTolerance Sets the default cluster tolerance used to control point coalescing in the X and Y dimensions (the equivalent of 1 mm in the current spatial reference units).
Method SetDefaultZTolerance Sets the default value for the Z cluster tolerance used to control point coalescing strictly along the Z axis (the equivalent of 1 mm in the current vertical coordinate system units).
Method SetMinimumMTolerance Sets the minimum tolerance (i.e., pre 9.2) used to determine equality of M values (2.0 * m resolution).
Method SetMinimumXYTolerance Sets the xy cluster tolerance to be 2.0 * resolution. Use this value for compatibility with pre-9.2 topological and relational operators.
Method SetMinimumZTolerance Sets the minimum value for the Z cluster tolerance (i.e., pre 9.2) used to control point coalescing strictly along the Z axis (the equivalent of 1 mm in the current vertical coordinate system units).
Read/write property XYTolerance The xy tolerance used to control point coalescing in the X and Y dimensions.
Read-only property XYToleranceValid Returns esriSRToleranceOK if the XY tolerance is well defined (not NaN) and >= the minimum XY tolerance.
Read/write property ZTolerance The tolerance used to control point coalescing strictly along the Z axis.
Read-only property ZToleranceValid Returns true if the Z tolerance is well defined (not NaN) and >= the minimum Z tolerance.

CoClasses that implement ISpatialReferenceTolerance

CoClasses and Classes Description
GeographicCoordinateSystem Creates a geographic coordinate system.
ProjectedCoordinateSystem Creates a projected coordinate system.
UnknownCoordinateSystem Creates an unknown coordinate system.

Remarks

The tolerance values for a spatial reference remain NaN until they are either set explicitly using one of the methods or properties available on this interface or as a result of calling a method which defines the resolution of the spatial reference, including ISpatialReference::SetDomain, ISpatialReference::SetZDomain, ISpatialReference::SetMDomain, ISpatialReference::SetFalseOriginAndUnits, ISpatialReference::SetZFalseOriginAndUnits and ISpatialReference::SetMFalseOriginAndUnitsThese methods will set the corresponding tolerance to its minimum value if it is currently undefined (NaN). 

It is generally good practice to check the validity of the tolerance after setting it using any of the available methods.

.NET Snippets

Make Spatial Reference

.NET Samples

Creating a toolbar of globe tools (Code Files: SpatialReference)

.NET Related Topics

Constructing a high- or low-precision spatial reference | Creating feature classes | How to import or export a spatial reference | Working with GeometryEnvironment