# operation: geometry.add-pixel-tolerance
Description: Buffers a point geometry by a distance equivalent to the number of pixels at the current map scale. Web only.

Inputs: `( object | object )`

Outputs: `CaptureGeometryResult`

---
# operation: geometry.buffer
Description: Buffers a set of geometries by some distance to create a multi-part polygon geometry. The distance value respects the user's preferences and falls back on the default configured for the viewer session. Web only.

Inputs: `( @vertigis.api-docs.Features FeatureSet|FeatureList|FeatureStream | CreateGraphicsResult | @arcgis.core.Graphic.Graphic | T_13 | ( @vertigis.arcgis-extensions.data.Feature.FeatureProperties | T_13 )[] | HasFeatures | @arcgis.core.geometry.Extent.Extent | @arcgis.core.geometry.Multipoint.Multipoint | @arcgis.core.geometry.Point.Point | T_18 | @arcgis.core.geometry.Polyline.Polyline | @arcgis.core.geometry.Mesh.Mesh | esri.rest-api.FeatureJson.FeatureJson | @arcgis.core.rest.support.FeatureSet.FeatureSet | ( @arcgis.core.Graphic.Graphic | esri.rest-api.FeatureJson.FeatureJson )[] | esri.rest-api.GeometryJson.PointJson | esri.rest-api.GeometryJson.MultipointJson | esri.rest-api.GeometryJson.PolylineJson | esri.rest-api.GeometryJson.PolygonJson | esri.rest-api.GeometryJson.ExtentJson | ( @arcgis.core.geometry.Extent.Extent | @arcgis.core.geometry.Multipoint.Multipoint | @arcgis.core.geometry.Point.Point | T_18 | @arcgis.core.geometry.Polyline.Polyline | @arcgis.core.geometry.Mesh.Mesh | esri.rest-api.GeometryJson.PointJson | esri.rest-api.GeometryJson.MultipointJson | esri.rest-api.GeometryJson.PolylineJson | esri.rest-api.GeometryJson.PolygonJson | esri.rest-api.GeometryJson.ExtentJson )[] | HasGeometry | BufferGeometryArgs )`

CreateGraphicsResult properties:
```json
{
  "graphics": {
    "description": "The resulting graphics.",
    "items": {
      "$ref": "#/definitions/@arcgis.core.Graphic.Graphic"
    },
    "type": "array",
    "isRequired": "true"
  },
  "maps": {
    "description": "The map that the graphics were created on. Only available in Web.",
    "isRequired": "true"
  }
}
```

@vertigis.arcgis-extensions.data.Feature.FeatureProperties properties:
```json
{
  "attributes": {
    "anyOf": [
      {},
      {
        "$ref": "Map"
      }
    ],
    "description": "The feature's attributes, keyed by field name."
  },
  "failureMode": {
    "description": "See {@link support /InitializableBase!InitializableBase.failureMode}."
  },
  "geometry": {
    "anyOf": [
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Extent.Extent"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Multipoint.Multipoint"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Point.Point"
      },
      {
        "$ref": "T_6"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Polyline.Polyline"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Mesh.Mesh"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PointJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.MultipointJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PolylineJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.PolygonJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.GeometryJson.ExtentJson"
      }
    ],
    "description": "The feature's geometry."
  },
  "id": {
    "description": "The unique ID to assign to the entity. If not specified, one will be generated.",
    "type": "string"
  },
  "schema": {
    "description": "Metadata about the feature, such as fields, domains, geometry type, etc."
  },
  "settings": {
    "description": "Settings for this feature."
  },
  "source": {
    "description": "The source of the feature."
  }
}
```

HasFeatures properties:
```json
{
  "features": {
    "description": "Features to use for the command/operation."
  }
}
```

esri.rest-api.FeatureJson.FeatureJson properties:
```json
{
  "attributes": {
    "description": "The feature attributes. It is a JSON object that contains a dictionary of name-value pairs. The names are the feature field names. The values are the field values and they can be any of the standard JSON types - string, number and boolean. Note that date values are encoded as numbers. The number represents the number of milliseconds since epoch (January 1,\n1970) in UTC."
  },
  "geometry": {
    "description": "The feature geometry."
  },
  "popupInfo": {
    "description": "A popupInfo object defining the content of popup window when you click a feature on the map. Applicable to features in a map notes feature layer only."
  },
  "symbol": {
    "description": "Symbol used for drawing the feature."
  }
}
```

esri.rest-api.GeometryJson.PointJson properties:
```json
{
  "m": {
    "description": "M coordinate which contains measures used for linear referencing.",
    "type": "number"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "x": {
    "description": "X coordinate which is measured along the east/west axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "y": {
    "description": "Y coordinate which is measured along the north/south axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "z": {
    "description": "Z coordinate which measures height or elevation.",
    "type": [
      "string",
      "number"
    ]
  }
}
```

esri.rest-api.GeometryJson.MultipointJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "points": {
    "description": "An array that corresponds to 2D and 3D points.",
    "items": {
      "items": {
        "type": "number"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolylineJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "paths": {
    "description": "Three nested arrays which corresponds to a polyline.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolygonJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "rings": {
    "description": "Represents an array of points. Each point is an array of numbers.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.ExtentJson properties:
```json
{
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "xmax": {
    "description": "A numeric value indicating the top-right X-coordinate of an extent envelope.",
    "type": "number"
  },
  "xmin": {
    "description": "A numeric value indicating the bottom-left X-coordinate of an extent envelope.",
    "type": "number"
  },
  "ymax": {
    "description": "A numeric value indicating the top-right Y-coordinate of an extent envelope.",
    "type": "number"
  },
  "ymin": {
    "description": "A numeric value indicating the bottom-left Y-coordinate of an extent envelope.",
    "type": "number"
  }
}
```

esri.rest-api.GeometryJson.PointJson properties:
```json
{
  "m": {
    "description": "M coordinate which contains measures used for linear referencing.",
    "type": "number"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  },
  "x": {
    "description": "X coordinate which is measured along the east/west axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "y": {
    "description": "Y coordinate which is measured along the north/south axis.",
    "type": [
      "string",
      "number"
    ],
    "isRequired": "true"
  },
  "z": {
    "description": "Z coordinate which measures height or elevation.",
    "type": [
      "string",
      "number"
    ]
  }
}
```

esri.rest-api.GeometryJson.MultipointJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "points": {
    "description": "An array that corresponds to 2D and 3D points.",
    "items": {
      "items": {
        "type": "number"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolylineJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "paths": {
    "description": "Three nested arrays which corresponds to a polyline.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

esri.rest-api.GeometryJson.PolygonJson properties:
```json
{
  "hasM": {
    "description": "Indicates whether the geometry contains M coordinate values.",
    "type": "boolean"
  },
  "hasZ": {
    "description": "Indicates whether the geometry contains Z coordinate values.",
    "type": "boolean"
  },
  "rings": {
    "description": "Represents an array of points. Each point is an array of numbers.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "spatialReference": {
    "description": "The spatial reference can be defined using a well-known ID (WKID) or well-known text (WKT)."
  }
}
```

HasGeometry properties:
```json
{
  "geometry": {
    "description": "The geometry to use for the command/operation."
  }
}
```

BufferGeometryArgs properties:
```json
{
  "bufferDistance": {
    "description": "Optionally override the configured buffer distance.",
    "type": "number"
  },
  "features": {
    "description": "Features to use for the command/operation."
  },
  "geometry": {
    "description": "The geometry to use for the command/operation."
  }
}
```

Outputs: `BufferResult`

---
# operation: geometry.get-buffer-distance
Description: Returns the default buffer distance for the viewer session. Web only.

Inputs: `None`

Outputs: `number`

---
# operation: geometry.get-buffer-units
Description: Returns the default buffer units for the viewer session. Web only.

Inputs: `None`

Outputs: `LengthUnits`

---
# operation: geometry.project
Description: Projects a set of geometries to a new spatial reference. Web only.

Inputs: `ProjectArgs`

ProjectArgs properties:
```json
{
  "geometries": {
    "anyOf": [
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Extent.Extent"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Multipoint.Multipoint"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Point.Point"
      },
      {
        "$ref": "T_18"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Polyline.Polyline"
      },
      {
        "$ref": "#/definitions/@arcgis.core.geometry.Mesh.Mesh"
      },
      {
        "items": {
          "$ref": "#/definitions/@arcgis.core.unionTypes.GeometryUnion"
        },
        "type": "array"
      }
    ],
    "description": "The geometries to project.",
    "isRequired": "true"
  },
  "outSpatialReference": {
    "description": "The target spatial reference.",
    "isRequired": "true"
  },
  "transformation": {
    "description": "The geographic transformation which contains the steps to transform the input spatial reference to the output spatial reference."
  }
}
```

Outputs: `@arcgis.core.unionTypes.GeometryUnion[]`

---
