{
  "title": "PointCloud Stretch Renderer",
  "type": "object",
  "$schema": "http://json-schema.org/draft-04/schema",
  "description": "PointCloudStretchRenderer defines the color of each point in a PointCloudLayer based on the value of a numeric attribute. They allow you to easily map continuous color ramps to minimum and maximum data values of one of the layer's numeric attribute fields.",
  "properties": {
    "colorModulation": {
      "description": "",
      "$ref": "colorModulationInfo_schema.json"
    },
    "field": {
      "type": "string",
      "description": "The name of the field that is used for the renderer."
    },
    "fieldTransformType": {
      "type": "string",
      "description": "A transform that is applied to the field value before evaluating the renderer.",
      "enum": [
        "absoluteValue",
        "highFourBit",
        "lowFourBit",
        "moduloTen",
        "none"
      ]
    },
    "legendOptions": {
      "type": "object",
      "description": "A legend containing one title, which is a string describing the renderer in the legend.",
      "$ref": "rendererLegendOptions_schema.json"
    },
    "pointSizeAlgorithm": {
      "description": "",
      "$ref": "pointSizeAlgorithm_schema.json"
    },
    "pointsPerInch": {
      "type": "number",
      "description": "Number of points to draw per display inch."
    },
    "stops": {
      "type": "array",
      "description": "An array of color value pairs.",
      "items": {
        "type": "object",
        "$ref": "colorStop_schema.json"
      }
    },
    "type": {
      "type": "string",
      "description": "Specifies the type of renderer used.",
      "enum": [
        "pointCloudStretchRenderer"
      ]
    }
  },
  "required": [
    "field",
    "stops",
    "type"
  ],
  "additionalProperties": false,
  "esriDocumentation": {
    "examples": [
      {
        "title": "pointCloudStretchRenderer",
        "description": "",
        "code": {
          "renderer": {
            "type": "pointCloudStretchRenderer",
            "pointSizeAlgorithm": {
              "type": "pointCloudSplatAlgorithm",
              "scaleFactor": 1
            },
            "pointsPerInch": 10,
            "field": "Elevation",
            "stops": [
              {
                "value": 406.59,
                "color": [
                  87,
                  0,
                  252,
                  255
                ]
              },
              {
                "value": 468.96999999999997,
                "color": [
                  13,
                  253,
                  255,
                  255
                ]
              },
              {
                "value": 531.35,
                "color": [
                  242,
                  254,
                  23,
                  255
                ]
              },
              {
                "value": 593.73,
                "color": [
                  254,
                  21,
                  0,
                  255
                ]
              }
            ]
          }
        }
      }
    ]
  }
}
