# operation: measurement.capture-geometry
Description: Allows the user to create geometry by sketching on a map with live measurement labels. Returns the geometry that was drawn, along with the map that it was drawn on. Web only.

Inputs: `CaptureGeometryArgs`

CaptureGeometryArgs properties:
```json
{
  "disableFreehand": {
    "description": "Disables freehand sketching during the draw session. Web only.",
    "type": "boolean"
  },
  "editorSettings": {
    "description": "The settings to be applied to the sketch. Mobile only."
  },
  "geometryType": {
    "anyOf": [
      {
        "items": {
          "$ref": "#/definitions/SketchTool"
        },
        "type": "array"
      },
      {
        "enum": [
          "circle",
          "extent",
          "line",
          "multipoint",
          "point",
          "polygon",
          "polyline",
          "square"
        ],
        "type": "string"
      }
    ],
    "description": "The geometry/shape to use for sketching. * Multiple sketch tools are only supported by VertiGIS Studio Web. When multiple sketch tools are provided, the sketch will begin with the first one in the list. If \"point\" is the first of multiple options in the list, click actions will create points while click-and-drag actions will automatically begin the freehand variation of the next included geometry type. The types \"point\", \"line\" and \"square\" are supported only in Web.",
    "isRequired": "true"
  },
  "maps": {
    "description": "The maps to activate drawing on. By default it will be all maps."
  },
  "maxSegments": {
    "description": "The maximum number of segments permitted for a polyline or polygon sketch. Default is no limit. Mobile only.",
    "type": "number"
  },
  "pluginSettings": {
    "description": "Additional settings that are specific to sketching plugins, keyed by plugin ID. The only currently supported plugin is \"snapping\". A boolean value can also be assigned to completely disable, or enable with default settings. Web only."
  },
  "symbol": {
    "anyOf": [
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.CIMSymbolJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.CIMSymbolReferenceJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.PictureFillSymbolJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.PictureMarkerSymbolJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.SimpleFillSymbolJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.SimpleLineSymbolJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.SimpleMarkerSymbolJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.TextSymbolJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.LabelSymbol3DJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.LineSymbol3DJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.MeshSymbol3DJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.PointSymbol3DJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.PolygonSymbol3DJson"
      },
      {
        "$ref": "#/definitions/esri.rest-api.SymbolJson.StyleSymbolReferenceJson"
      },
      {
        "$ref": "SymbolSet"
      }
    ],
    "description": "An optional symbol to use. SymbolSets are not supported by VertiGIS Studio Mobile."
  }
}
```

Outputs: `CaptureGeometryResult`

---
# operation: measurement.create-graphics
Description: Creates graphics out of geometries with the default symbology set by the "measurement.set-default-symbol" command. Web only.

Inputs: `Geometries`

Geometries 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"
  },
  "@arcgis.core.Graphic.Graphic": {
    "$ref": "esri.Graphic"
  },
  "features": {
    "description": "Features to use for the command/operation."
  },
  "@arcgis.core.geometry.Extent.Extent": {
    "$ref": "esri.geometry.Extent"
  },
  "@arcgis.core.geometry.Multipoint.Multipoint": {
    "$ref": "esri.geometry.Multipoint"
  },
  "@arcgis.core.geometry.Point.Point": {
    "$ref": "esri.geometry.Point"
  },
  "@arcgis.core.geometry.Polyline.Polyline": {
    "$ref": "esri.geometry.Polyline"
  },
  "@arcgis.core.geometry.Mesh.Mesh": {
    "$ref": "esri.geometry.Mesh"
  },
  "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 geometry to use for the command/operation."
  },
  "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."
  },
  "@arcgis.core.rest.support.FeatureSet.FeatureSet": {
    "$ref": "esri.rest.support.FeatureSet"
  },
  "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"
    ]
  },
  "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"
  },
  "paths": {
    "description": "Three nested arrays which corresponds to a polyline.",
    "items": {
      "items": {
        "items": {
          "type": "number"
        },
        "type": "array"
      },
      "type": "array"
    },
    "type": "array",
    "isRequired": "true"
  },
  "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"
  },
  "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"
  }
}
```

Outputs: `CreateMeasurementGraphicsResult`

---
# operation: measurement.get-area-units
Description: Gets the area units used for measurements. If undefined the units will be selected intelligently based on dimensions. Web only.

Inputs: `None`

Outputs: `AreaMeasurementUnits`

---
# operation: measurement.get-default-symbol
Description: Gets the value of the default point, line, or polygon symbol for the provided geometry type. Web only.

Inputs: `None`

Outputs: `DrawingSymbolConfig`

---
# operation: measurement.get-default-symbol3-d
Description: Gets the value of the default 3D point, line, or polygon symbol for the provided geometry type. Web only.

Inputs: `None`

Outputs: `DrawingSymbolConfig`

---
# operation: measurement.get-length-units
Description: Gets the length units used for measurements. If undefined the units will be selected intelligently based on dimensions. Web only.

Inputs: `None`

Outputs: `LengthMeasurementUnits`

---
