A class that defines properties to modify the geometry results returned from a query.






Creates linear segments in geometry returned from a query. In general, this involves adding vertices to geometry. If true, set the MaximumDeviation and MaximumSegmentLength parameters.



Generalizes geometries returned from a query. In general, this involves removing vertices from existing geometry. If true, set the MaximumAllowableOffset parameter.



The maximum distance in map units that any part of the output geometry can be from the input geometry.



The maximum distance from original geometry that densified vertices may be constructed.



The maximum length of segments (distance between vertices) within MaximumDeviation of the original geometry. If MaximumDeviation = 0, MaximumDeviation is ignored and line segments with length MaximumSegmentLength are constructed with vertices laying on the original geometry.


This class has properties used to modify output geometry. Modification can include densification (DensifyGeometries) or generalization (GeneralizeGeometries).

Values for MaximumSegmentLength, MaximumDeviation or MaximumAllowableOffset should be in the units of the map's spatial reference unless the returned geometry is requested in another spatial reference (as is possible using QueryFeatureData or QueryFeatureData2).

For example, if the units of the spatial reference of the feature class being queried is in decimal degrees and the spatial reference units of the map is in meters, the values specified for MaximumSegmentLength, MaximumDeviation or MaximumAllowableOffset must be in meters.

In case that the QueryFilter.OutputSpatialReference is set to a spatial reference unit in feet, then those values should be in feet.

When GeneralizeGeometries is set to true, the MaximumAllowableOffset property should also be set.

When DensifyGeometries is set to true, MaximumDeviation and MaximumSegmentLength should also be set.

The default value for MaximumSegmentLength is 0. If MaximumSegmentLength is negative, the default value is used.

The default value for MaximumDeviation is 2 * XYResolution * 100 (2/XYUnits * 100). If MaximumDeviation is negative or 0, the default value is used.

If the MaximumDeviation is positive but smaller than 2 * XYResolution of the spatial reference then the MaximumDeviation used is 2 * XYResolution * 100.

Whether generalizing or densifying the start and end points are always honored and remain the same as for the original geometry.