Schematic Export

Description

The Schematic Export operation is performed on a schematic diagram map resource. The result of this operation is a map image that represents the <diagId> diagram specified in the URL.

You can provide arguments to the Schematic Export operation as query parameters. For a schematic diagram map, all of the export parameters are optional; moreover, the layers and layersDef parameters will always be ignored. The parameter details are provided in the parameters table below.

Request Parameters

Parameter

Details

f

Description: The response format. The default response format is html. If the format is image, the image bytes are directly streamed to the client.

Values: html | json | image | kmz

bbox

Description: The extent (bounding box) of the exported image. Unless the bboxSR parameter has been specified, the bbox is assumed to be in the spatial reference of the map.

NoteNote:

When the bbox parameter is not specified, the extent of the diagram is the one used by default for the exported image.

Syntax: bbox=<xmin>, <ymin>, <xmax>, <ymax>

Example: bbox=-104,35.6,-94.32,41

The bbox coordinates should always use a period as the decimal separator even in countries where traditionally a comma is used.

size

Description: The size (width * height) of the exported image in pixels. If the size is not specified, an image with a default size of 400 * 400 will be exported.

Syntax: size=<width>, <height>

Example: size=600,550

dpi

Description: The device resolution of the exported image (dots per inch). If the dpi is not specified, an image with a default DPI of 96 will be exported.

Example: dpi=200

imageSR

Description: The spatial reference of the exported image.

The spatial reference can be specified as either a well-known ID or as a spatial reference json object.

If the imageSR is not specified, the image will be exported in the spatial reference of the map.

bboxSR

Description: The spatial reference of the bbox.

The spatial reference can be specified as either a well-known ID or as a spatial reference json object.

If the bboxSR is not specified, the bbox is assumed to be in the spatial reference of the map.

format

Description: The format of the exported image. The default format is png.

Values: png | png8 | png24 | jpg | pdf | bmp | gif | svg | png32

layerDefs

Description: Parameter kept for compatibility reason with the standard Export Map operation, but this parameter is always ignored when the export is performed on a schematic diagram map.

layers

Description: Parameter kept for compatibility reason with the standard Export Map operation, but this parameter is always ignored when the export is performed on a schematic diagram map.

transparent

Description: If true, the image will be exported with the background color of the map set as its transparent color. The default is false. Only the png and gif formats support transparency. Internet Explorer 6 does not display transparency correctly for png24 image formats.

Values: true | false

time

Description: The time instant or the time extent of the exported map image.

Time instant

Syntax: time=<timeInstant>

Example: time=1199145600000 (1 Jan 2008 00:00:00 GMT)

Time extent

Syntax: time=<startTime>, <endTime>

Example: time=1199145600000, 1230768000000 (1 Jan 2008 00:00:00 GMT to 1 Jan 2009 00:00:00 GMT)

A null value specified for start time or end time will represent infinity for start or end time respectively.

layerTimeOptions

Description: The time options per layer. Users can indicate whether or not the layer should use the time extent specified by the time parameter or not, whether to draw the layer features cumulatively or not and the time offsets for the layer.

Syntax:

layerTimeOptions=
{
  "<layerId1>" : {
    //If true, use the time extent specified by the time parameter
    "useTime" : < true | false >,
    //If true, draw all the features from the beginning of time for that data
    "timeDataCumulative" : < true | false >,
    //Time offset for this layer so that it can be overlaid on the top of a previous or future time period
    "timeOffset" : <timeOffset1>,
    "timeOffsetUnits" : "<esriTimeUnitsCenturies | esriTimeUnitsDays | esriTimeUnitsDecades | 
                             esriTimeUnitsHours | esriTimeUnitsMilliseconds | esriTimeUnitsMinutes | 
                             esriTimeUnitsMonths | esriTimeUnitsSeconds | esriTimeUnitsWeeks | esriTimeUnitsYears |
                             esriTimeUnitsUnknown>"
  },
  "<layerId2>" : {
    "useTime" : < true | false >,
    "timeDataCumulative" : < true | false >,
    "timeOffsetOffset" : <timeOffset2>,
    "timeOffsetUnits" : "<timeOffsetUnits2>"
  }
}

Example:

layerTimeOptions=
{
  "0" : {
    "useTime" : true,
    "timeDataCumulative" : false,
    "timeOffset" : 1,
    "timeOffsetUnits" : "esriTimeUnitsYears"
  },
  "3" : {
    "useTime" : false
  }
}

dynamicLayers

Description: Use dynamicLayers parameter to modify the layer drawing order, change layer renderer, define joins, change layer source version for this request. New layers (dataLayer) can also be added to the dynamicLayers based on the map service registered workspaces.

The order of dynamicLayers array defines the layer drawing order. The first element of the dynamicLayers array draws on top of all other layers.

NoteNote:

  • When defining a dynamic layer, if the layer source is of type mapLayer, then use the id in layer resource to identify the layer.
  • If the layer source is a dataLayer based on a data table ( table or queryTable dataSource), then set drawingInfo. In case of dataLayer based on raster data source only transparency in the drawingInfo is supported. renderer is unsupported at 10.1.
  • transparency is on a scale of 0 - 100, where 0 is opaque and 100 is 100% transparent.

Syntax:

dynamicLayers=
[
  {
    "id": <layerOrTableId>,
    "source": <layer source>,
    "definitionExpression": "<definitionExpression>",
    "drawingInfo": 
    {
      "renderer": <renderer>,
      "transparency": <transparency>,
      "scaleSymbols": <true | false >
    },
    "layerTimeOptions":
    {
      "useTime" : <true | false>,
      "timeDataCumulative" : <true | false>,
      "timeOffset" : <timeOffset>,
      "timeOffsetUnits" : "<esriTimeUnitsCenturies | esriTimeUnitsDays | esriTimeUnitsDecades | 
                             esriTimeUnitsHours | esriTimeUnitsMilliseconds | esriTimeUnitsMinutes | 
                             esriTimeUnitsMonths | esriTimeUnitsSeconds | esriTimeUnitsWeeks | esriTimeUnitsYears |
                             esriTimeUnitsUnknown>"
    }
  },
  {
    "id": <layerOrTableId>,
    "source": <layer source>,
    "definitionExpression": "<definitionExpression>",
    "drawingInfo": 
    {
      "renderer": <renderer>,
      "transparency": <transparency>,
      "scaleSymbols": <true | false >
    },
    "layerTimeOptions":
    {
      "useTime" : <true | false>,
      "timeDataCumulative" : <true | false>,
      "timeOffset" : <timeOffset>,
      "timeOffsetUnits" : "<esriTimeUnitsCenturies | esriTimeUnitsDays | esriTimeUnitsDecades | 
                             esriTimeUnitsHours | esriTimeUnitsMilliseconds | esriTimeUnitsMinutes | 
                             esriTimeUnitsMonths | esriTimeUnitsSeconds | esriTimeUnitsWeeks | esriTimeUnitsYears |
                             esriTimeUnitsUnknown>"
    }
  }
]

Example:

dynamicLayers=
[
  //disable time on existing map service layer
  {
    "id": 501,
    "source":
    {
      "type": "mapLayer",
      "mapLayerId": 0
    },
    "layerTimeOptions":
    {
	  "useTime": false
    }
  },
  //add a new layer from registered workspace
  {
    "id": 502,
    "source":
    {
      "type": "dataLayer",
      "dataSource":
      {
        "type": "table",
        "workspaceId": "MAP",
        "dataSourceName": "MAP.user1.Taxlots"
      }
    },
    "drawingInfo": 
    {
      "renderer":
      {
        "type": "simple",
        "symbol":
        {
          "type" : "esriSFS", 
          "style" : "esriSFSSolid", 
          "color" : [166,36,0,255], 
          "outline" : 
          {
            "type" : "esriSLS", 
            "style" : "esriSLSSolid", 
            "color" : [110,110,110,255], 
            "width" : 1.0
          }
        },
        "label": "TaxLots",
        "description": ""
      },
      "transparency": 60
    }
  },
  //change the Version of existing map service layer
  {
    "id": 503,
    "source":
    {
      "type": "mapLayer",
      "mapLayerId": 1,
      "version": "USER1"
    },
    "definitionExpression": "neighborhood = 'French Quarter'"
  },
  //add a raster from registered workspace
  {
    "id": 504,
    "source":
    {
      "type": "dataLayer",
      "dataSource":
      {
        "type": "raster",
        "workspaceId": "rasterWS",
        "dataSourceName": "NewOrleans.tif"
      }
    },
    "drawingInfo": 
    {
      "transparency": 0
    }
  }
]

Example Usage

The exported schematic diagram map related to the schematic diagram which id is '2-10' under the S1_Schematics public sample Schematics service: http://servicesbeta6.esri.com/arcgis/rest/services/S1_Schematics/MapServer/exts/SchematicsServer/diagrams/2-10/map/export?size=&dpi=&imageSR=&bboxSR=&format=&transparent=&time=&layerTimeOptions=&dynamicLayers=&bbox=&layerDefs=&layers=&f=html

JSON Response Syntax

{"href" : "<href>","width" : <width>,"height" : <height>,"extent" : {<envelope>},"scale" : <scale>}

JSON Response Example

{
  "href": "http://TAHITI:6080/arcgis/server/arcgisoutput/_ags_mape0a1ae3e0f794071aafec2720bf6a1f8.png",
  "width": 400,
  "height": 400,
  "extent": {
    "xmin": -37.479462999999996,
    "ymin": -11.419442999999998, 
    "xmax": -37.012996999999999,
    "ymax": -10.952976999999999,
    "spatialReference": { "wkid": 4326, "latestWkid": 4326}
  },
  "scale": 490096.28531108255
}

9/13/2017