# Class: Image

## Konva. Image

#### new Image(config)

  Image constructor

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `config` | Object | ###### Properties
  Name | Type | Argument | Description
  --- | --- | --- | ---
  `image` | Image |  |
  `crop` | Object | <optional> |
  `fill` | String | <optional> | fill color
  `fillRed` | Integer | <optional> | set fill red component
  `fillGreen` | Integer | <optional> | set fill green component
  `fillBlue` | Integer | <optional> | set fill blue component
  `fillAlpha` | Integer | <optional> | set fill alpha component
  `fillPatternImage` | Image | <optional> | fill pattern image
  `fillPatternX` | Number | <optional> |
  `fillPatternY` | Number | <optional> |
  `fillPatternOffset` | Object | <optional> | object with x and y component
  `fillPatternOffsetX` | Number | <optional> |
  `fillPatternOffsetY` | Number | <optional> |
  `fillPatternScale` | Object | <optional> | object with x and y component
  `fillPatternScaleX` | Number | <optional> |
  `fillPatternScaleY` | Number | <optional> |
  `fillPatternRotation` | Number | <optional> |
  `fillPatternRepeat` | String | <optional> | can be "repeat", "repeat-x", "repeat-y", or "no-repeat". The default is "no-repeat"
  `fillLinearGradientStartPoint` | Object | <optional> | object with x and y component
  `fillLinearGradientStartPointX` | Number | <optional> |
  `fillLinearGradientStartPointY` | Number | <optional> |
  `fillLinearGradientEndPoint` | Object | <optional> | object with x and y component
  `fillLinearGradientEndPointX` | Number | <optional> |
  `fillLinearGradientEndPointY` | Number | <optional> |
  `fillLinearGradientColorStops` | Array | <optional> | array of color stops
  `fillRadialGradientStartPoint` | Object | <optional> | object with x and y component
  `fillRadialGradientStartPointX` | Number | <optional> |
  `fillRadialGradientStartPointY` | Number | <optional> |
  `fillRadialGradientEndPoint` | Object | <optional> | object with x and y component
  `fillRadialGradientEndPointX` | Number | <optional> |
  `fillRadialGradientEndPointY` | Number | <optional> |
  `fillRadialGradientStartRadius` | Number | <optional> |
  `fillRadialGradientEndRadius` | Number | <optional> |
  `fillRadialGradientColorStops` | Array | <optional> | array of color stops
  `fillEnabled` | Boolean | <optional> | flag which enables or disables the fill. The default value is true
  `fillPriority` | String | <optional> | can be color, linear-gradient, radial-graident, or pattern. The default value is color. The fillPriority property makes it really easy to toggle between different fill types. For example, if you want to toggle between a fill color style and a fill pattern style, simply set the fill property and the fillPattern properties, and then use setFillPriority('color') to render the shape with a color fill, or use setFillPriority('pattern') to render the shape with the pattern fill configuration
  `stroke` | String | <optional> | stroke color
  `strokeRed` | Integer | <optional> | set stroke red component
  `strokeGreen` | Integer | <optional> | set stroke green component
  `strokeBlue` | Integer | <optional> | set stroke blue component
  `strokeAlpha` | Integer | <optional> | set stroke alpha component
  `strokeWidth` | Number | <optional> | stroke width
  `strokeScaleEnabled` | Boolean | <optional> | flag which enables or disables stroke scale. The default is true
  `strokeEnabled` | Boolean | <optional> | flag which enables or disables the stroke. The default value is true
  `lineJoin` | String | <optional> | can be miter, round, or bevel. The default is miter
  `lineCap` | String | <optional> | can be butt, round, or sqare. The default is butt
  `shadowColor` | String | <optional> |
  `shadowRed` | Integer | <optional> | set shadow color red component
  `shadowGreen` | Integer | <optional> | set shadow color green component
  `shadowBlue` | Integer | <optional> | set shadow color blue component
  `shadowAlpha` | Integer | <optional> | set shadow color alpha component
  `shadowBlur` | Number | <optional> |
  `shadowOffset` | Object | <optional> | object with x and y component
  `shadowOffsetX` | Number | <optional> |
  `shadowOffsetY` | Number | <optional> |
  `shadowOpacity` | Number | <optional> | shadow opacity. Can be any real number between 0 and 1
  `shadowEnabled` | Boolean | <optional> | flag which enables or disables the shadow. The default value is true
  `dash` | Array | <optional> |
  `dashEnabled` | Boolean | <optional> | flag which enables or disables the dashArray. The default value is true
  `x` | Number | <optional> |
  `y` | Number | <optional> |
  `width` | Number | <optional> |
  `height` | Number | <optional> |
  `visible` | Boolean | <optional> |
  `listening` | Boolean | <optional> | whether or not the node is listening for events
  `id` | String | <optional> | unique id
  `name` | String | <optional> | non-unique name
  `opacity` | Number | <optional> | determines node opacity. Can be any number between 0 and 1
  `scale` | Object | <optional> | set scale
  `scaleX` | Number | <optional> | set scale x
  `scaleY` | Number | <optional> | set scale y
  `rotation` | Number | <optional> | rotation in degrees
  `offset` | Object | <optional> | offset from center point and rotation point
  `offsetX` | Number | <optional> | set offset x
  `offsetY` | Number | <optional> | set offset y
  `draggable` | Boolean | <optional> | makes the node draggable. When stages are draggable, you can drag and drop the entire stage by dragging any portion of the stage
  `dragDistance` | Number | <optional> |
  `dragBoundFunc` | function | <optional> |

  Source:
    - konva-v5.2.0.js, line 11666

  ##### Example

      var imageObj = new Image();
      imageObj.onload = function() {
        var image = new Konva.Image({
          x: 200,
          y: 50,
          image: imageObj,
          width: 100,
          height: 100
        });
      };
      imageObj.src = '/path/to/image.jpg'

### Extends

- Konva.Shape

### Methods

#### blue(blue) → {Integer}

  get/set filter blue value. Use with Konva.Filters.RGB filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `blue` | Integer | value between 0 and 255

  Inherited From:
    - Konva.Node#blue
  Source:
    - konva-v5.2.0.js, line 5038

  ##### Returns:

  Type
    Integer

#### blurRadius(radius) → {Integer}

  get/set blur radius. Use with Konva.Filters.Blur filter

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `radius` | Integer |

  Inherited From:
    - Konva.Node#blurRadius
  Source:
    - konva-v5.2.0.js, line 4759

  ##### Returns:

  Type
    Integer

#### brightness(brightness) → {Number}

  get/set filter brightness. The brightness is a number between -1 and 1. Positive values brighten the pixels and negative values darken them. Use with Konva.Filters.Brighten filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `brightness` | Number | value between -1 and 1

  Inherited From:
    - Konva.Node#brightness
  Source:
    - konva-v5.2.0.js, line 4374

  ##### Returns:

  Type
    Number

#### cache(config) → {Konva.Node}

  cache node to improve drawing performance, apply filters, or create more accurate hit regions

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `config` | Object | ###### Properties
  Name | Type | Argument | Description
  --- | --- | --- | ---
  `x` | Number | <optional> |
  `y` | Number | <optional> |
  `width` | Number | <optional> |
  `height` | Number | <optional> |
  `drawBorder` | Boolean | <optional> | when set to true, a red border will be drawn around the cached region for debugging purposes

  Inherited From:
    - Konva.Node#cache
  Source:
    - konva-v5.2.0.js, line 2420

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      // cache a shape with the x,y position of the bounding box at the center and
      // the width and height of the bounding box equal to the width and height of
      // the shape obtained from shape.width() and shape.height()
      image.cache();

      // cache a node and define the bounding box position and size
      node.cache({
        x: -30,
        y: -30,
        width: 100,
        height: 200
      });

      // cache a node and draw a red border around the bounding box
      // for debugging purposes
      node.cache({
        x: -30,
        y: -30,
        width: 100,
        height: 200,
        drawBorder: true
      });

#### clearCache() → {Konva.Node}

  clear cached canvas

  Inherited From:
    - Konva.Node#clearCache
  Source:
    - konva-v5.2.0.js, line 2378

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      node.clearCache();

#### clone(obj) → {Konva.Node}

  clone node. Returns a new Node instance with identical attributes. You can also override the node properties with an object literal, enabling you to use an existing node as a template for another node

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `obj` | Object | override attrs

  Inherited From:
    - Konva.Node#clone
  Source:
    - konva-v5.2.0.js, line 3506

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      // simple clone
      var clone = node.clone();

      // clone a node and override the x position
      var clone = rect.clone({
        x: 5
      });

#### crop(crop) → {Object}

  get/set crop

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `crop` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |
  `width` | Number |
  `height` | Number |

  Source:
    - konva-v5.2.0.js, line 11748

  ##### Returns:

  Type
    Object

  ##### Example

      // get crop
      var crop = image.crop();

      // set crop
      image.crop({
        x: 20,
        y: 20,
        width: 20,
        height: 20
      });

#### cropHeight(height) → {Number}

  get/set crop height

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `height` | Number |

  Source:
    - konva-v5.2.0.js, line 11821

  ##### Returns:

  Type
    Number

  ##### Example

      // get crop height
      var cropHeight = image.cropHeight();

      // set crop height
      image.cropHeight(20);

#### cropWidth(width) → {Number}

  get/set crop width

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `width` | Number |

  Source:
    - konva-v5.2.0.js, line 11805

  ##### Returns:

  Type
    Number

  ##### Example

      // get crop width
      var cropWidth = image.cropWidth();

      // set crop width
      image.cropWidth(20);

#### cropX(x) → {Number}

  get/set crop x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Source:
    - konva-v5.2.0.js, line 11773

  ##### Returns:

  Type
    Number

  ##### Example

      // get crop x
      var cropX = image.cropX();

      // set crop x
      image.cropX(20);

#### cropY(y) → {Number}

  get/set crop y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Source:
    - konva-v5.2.0.js, line 11789

  ##### Returns:

  Type
    Number

  ##### Example

      // get crop y
      var cropY = image.cropY();

      // set crop y
      image.cropY(20);

#### dash(dash) → {Array}

  get/set dash array for stroke.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `dash` | Array |

  Inherited From:
    - Konva.Shape#dash
  Source:
    - konva-v5.2.0.js, line 8281

  ##### Returns:

  Type
    Array

  ##### Example

       // apply dashed stroke that is 10px long and 5 pixels apart
       line.dash([10, 5]);

       // apply dashed stroke that is made up of alternating dashed
       // lines that are 10px long and 20px apart, and dots that have
       // a radius of 5px and are 20px apart
       line.dash([10, 20, 0.001, 20]);

#### dashEnabled(enabled) → {Boolean}

  get/set dash enabled flag

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `enabled` | Boolean |

  Inherited From:
    - Konva.Shape#dashEnabled
  Source:
    - konva-v5.2.0.js, line 8790

  ##### Returns:

  Type
    Boolean

  ##### Example

      // get dash enabled flag
      var dashEnabled = shape.dashEnabled();

      // disable dash
      shape.dashEnabled(false);

      // enable dash
      shape.dashEnabled(true);

#### destroy()

  remove and destroy self

  Inherited From:
    - Konva.Node#destroy
  Source:
    - konva-v5.2.0.js, line 2733

  ##### Example

      node.destroy();

#### dragBoundFunc(dragBoundFunc) → {function}

  get/set drag bound function. This is used to override the default drag and drop position

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `dragBoundFunc` | function |

  Inherited From:
    - Konva.Node#dragBoundFunc
  Source:
    - konva-v5.2.0.js, line 7261

  ##### Returns:

  Type
    function

  ##### Example

      // get drag bound function
      var dragBoundFunc = node.dragBoundFunc();

      // create vertical drag and drop
      node.dragBoundFunc(function(pos){
        return {
          x: this.getAbsolutePosition().x,
          y: pos.y
        };
      });

#### dragDistance(distance) → {Number}

  get/set drag distance

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `distance` | Number |

  Inherited From:
    - Konva.Node#dragDistance
  Source:
    - konva-v5.2.0.js, line 4144

  ##### Returns:

  Type
    Number

  ##### Example

      // get drag distance
      var dragDistance = node.dragDistance();

      // set distance
      // node starts dragging only if pointer moved more then 3 pixels
      node.dragDistance(3);
      // or set globally
      Konva.dragDistance = 3;

#### draggable(draggable) → {Boolean}

  get/set draggable flag

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `draggable` | Boolean |

  Inherited From:
    - Konva.Node#draggable
  Source:
    - konva-v5.2.0.js, line 7285

  ##### Returns:

  Type
    Boolean

  ##### Example

      // get draggable flag
      var draggable = node.draggable();

      // enable drag and drop
      node.draggable(true);

      // disable drag and drop
      node.draggable(false);

#### draw() → {Konva.Node}

  draw both scene and hit graphs. If the node being drawn is the stage, all of the layers will be cleared and redrawn

  Inherited From:
    - Konva.Node#draw
  Source:
    - konva-v5.2.0.js, line 3797

  ##### Returns:

  Type
    Konva.Node

#### drawHitFromCache(alphaThreshold) → {Konva.Shape}

  draw hit graph using the cached scene canvas

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `alphaThreshold` | Integer | alpha channel threshold that determines whether or not a pixel should be drawn onto the hit graph. Must be a value between 0 and 255. The default is 0

  Inherited From:
    - Konva.Shape#drawHitFromCache
  Source:
    - konva-v5.2.0.js, line 8044

  ##### Returns:

  Type
    Konva.Shape

  ##### Example

      shape.cache();
      shape.drawHitFromCache();

#### embossBlend(embossBlend) → {Boolean}

  get/set emboss blend. Use with Konva.Filters.Emboss filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `embossBlend` | Boolean |

  Inherited From:
    - Konva.Node#embossBlend
  Source:
    - konva-v5.2.0.js, line 5404

  ##### Returns:

  Type
    Boolean

#### embossDirection(embossDirection) → {String}

  get/set emboss direction. Use with Konva.Filters.Emboss filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `embossDirection` | String | can be top-left, top, top-right, right, bottom-right, bottom, bottom-left or left The default is top-left

  Inherited From:
    - Konva.Node#embossDirection
  Source:
    - konva-v5.2.0.js, line 5393

  ##### Returns:

  Type
    String

#### embossStrength(level) → {Number}

  get/set emboss strength. Use with Konva.Filters.Emboss filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `level` | Number | between 0 and 1. Default is 0.5

  Inherited From:
    - Konva.Node#embossStrength
  Source:
    - konva-v5.2.0.js, line 5373

  ##### Returns:

  Type
    Number

#### embossWhiteLevel(embossWhiteLevel) → {Number}

  get/set emboss white level. Use with Konva.Filters.Emboss filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `embossWhiteLevel` | Number | between 0 and 1. Default is 0.5

  Inherited From:
    - Konva.Node#embossWhiteLevel
  Source:
    - konva-v5.2.0.js, line 5383

  ##### Returns:

  Type
    Number

#### enhance(amount) → {Float}

  get/set enhance. Use with Konva.Filters.Enhance filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `amount` | Float |

  Inherited From:
    - Konva.Node#enhance
  Source:
    - konva-v5.2.0.js, line 5521

  ##### Returns:

  Type
    Float

#### fill(color) → {String}

  get/set fill color

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `color` | String |

  Inherited From:
    - Konva.Shape#fill
  Source:
    - konva-v5.2.0.js, line 8507

  ##### Returns:

  Type
    String

  ##### Example

      // get fill color
      var fill = shape.fill();

      // set fill color with color string
      shape.fill('green');

      // set fill color with hex
      shape.fill('#00ff00');

      // set fill color with rgb
      shape.fill('rgb(0,255,0)');

      // set fill color with rgba and make it 50% opaque
      shape.fill('rgba(0,255,0,0.5');

      // shape without fill
      shape.fill(null);

#### fillAlpha(alpha) → {Number}

  get/set fill alpha component. Alpha is a real number between 0 and 1. The default is 1.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `alpha` | Number |

  Inherited From:
    - Konva.Shape#fillAlpha
  Source:
    - konva-v5.2.0.js, line 8587

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill alpha component
      var fillAlpha = shape.fillAlpha();

      // set fill alpha component
      shape.fillAlpha(0.5);

#### fillBlue(blue) → {Integer}

  get/set fill blue component

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `blue` | Integer |

  Inherited From:
    - Konva.Shape#fillBlue
  Source:
    - konva-v5.2.0.js, line 8570

  ##### Returns:

  Type
    Integer

  ##### Example

      // get fill blue component
      var fillBlue = shape.fillBlue();

      // set fill blue component
      shape.fillBlue(0);

#### fillEnabled(enabled) → {Boolean}

  get/set fill enabled flag

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `enabled` | Boolean |

  Inherited From:
    - Konva.Shape#fillEnabled
  Source:
    - konva-v5.2.0.js, line 8730

  ##### Returns:

  Type
    Boolean

  ##### Example

      // get fill enabled flag
      var fillEnabled = shape.fillEnabled();

      // disable fill
      shape.fillEnabled(false);

      // enable fill
      shape.fillEnabled(true);

#### fillGreen(green) → {Integer}

  get/set fill green component

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `green` | Integer |

  Inherited From:
    - Konva.Shape#fillGreen
  Source:
    - konva-v5.2.0.js, line 8553

  ##### Returns:

  Type
    Integer

  ##### Example

      // get fill green component
      var fillGreen = shape.fillGreen();

      // set fill green component
      shape.fillGreen(255);

#### fillLinearGradientColorStops(colorStops) → {Array}

  get/set fill linear gradient color stops

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `colorStops` | Array |

  Inherited From:
    - Konva.Shape#fillLinearGradientColorStops
  Source:
    - konva-v5.2.0.js, line 8640

  ##### Returns:

  colorStops

  Type
    Array

  ##### Example

      // get fill linear gradient color stops
      var colorStops = shape.fillLinearGradientColorStops();

      // create a linear gradient that starts with red, changes to blue
      // halfway through, and then changes to green
      shape.fillLinearGradientColorStops(0, 'red', 0.5, 'blue', 1, 'green');

#### fillLinearGradientEndPoint(endPoint) → {Object}

  get/set fill linear gradient end point

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `endPoint` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillLinearGradientEndPoint
  Source:
    - konva-v5.2.0.js, line 9012

  ##### Returns:

  Type
    Object

  ##### Example

      // get fill linear gradient end point
      var endPoint = shape.fillLinearGradientEndPoint();

      // set fill linear gradient end point
      shape.fillLinearGradientEndPoint({
        x: 20
        y: 10
      });

#### fillLinearGradientEndPointX(x) → {Number}

  get/set fill linear gradient end point x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Shape#fillLinearGradientEndPointX
  Source:
    - konva-v5.2.0.js, line 9033

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill linear gradient end point x
      var endPointX = shape.fillLinearGradientEndPointX();

      // set fill linear gradient end point x
      shape.fillLinearGradientEndPointX(20);

#### fillLinearGradientEndPointY(y) → {Number}

  get/set fill linear gradient end point y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillLinearGradientEndPointY
  Source:
    - konva-v5.2.0.js, line 9049

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill linear gradient end point y
      var endPointY = shape.fillLinearGradientEndPointY();

      // set fill linear gradient end point y
      shape.fillLinearGradientEndPointY(20);

#### fillLinearGradientStartPoint(startPoint) → {Object}

  get/set fill linear gradient start point

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `startPoint` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillLinearGradientStartPoint
  Source:
    - konva-v5.2.0.js, line 8958

  ##### Returns:

  Type
    Object

  ##### Example

      // get fill linear gradient start point
      var startPoint = shape.fillLinearGradientStartPoint();

      // set fill linear gradient start point
      shape.fillLinearGradientStartPoint({
        x: 20
        y: 10
      });

#### fillLinearGradientStartPointX(x) → {Number}

  get/set fill linear gradient start point x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Shape#fillLinearGradientStartPointX
  Source:
    - konva-v5.2.0.js, line 8979

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill linear gradient start point x
      var startPointX = shape.fillLinearGradientStartPointX();

      // set fill linear gradient start point x
      shape.fillLinearGradientStartPointX(20);

#### fillLinearGradientStartPointY(y) → {Number}

  get/set fill linear gradient start point y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillLinearGradientStartPointY
  Source:
    - konva-v5.2.0.js, line 8995

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill linear gradient start point y
      var startPointY = shape.fillLinearGradientStartPointY();

      // set fill linear gradient start point y
      shape.fillLinearGradientStartPointY(20);

#### fillPatternImage(image) → {Image}

  get/set fill pattern image

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `image` | Image | object

  Inherited From:
    - Konva.Shape#fillPatternImage
  Source:
    - konva-v5.2.0.js, line 8486

  ##### Returns:

  Type
    Image

  ##### Example

      // get fill pattern image
      var fillPatternImage = shape.fillPatternImage();

      // set fill pattern image
      var imageObj = new Image();
      imageObj.onload = function() {
        shape.fillPatternImage(imageObj);
      };
      imageObj.src = 'path/to/image/jpg';

#### fillPatternOffset(offset) → {Object}

  get/set fill pattern offset

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `offset` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillPatternOffset
  Source:
    - konva-v5.2.0.js, line 8848

  ##### Returns:

  Type
    Object

  ##### Example

      // get fill pattern offset
      var patternOffset = shape.fillPatternOffset();

      // set fill pattern offset
      shape.fillPatternOffset({
        x: 20
        y: 10
      });

#### fillPatternOffsetX(x) → {Number}

  get/set fill pattern offset x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Shape#fillPatternOffsetX
  Source:
    - konva-v5.2.0.js, line 8870

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill pattern offset x
      var patternOffsetX = shape.fillPatternOffsetX();

      // set fill pattern offset x
      shape.fillPatternOffsetX(20);

#### fillPatternOffsetY(y) → {Number}

  get/set fill pattern offset y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillPatternOffsetY
  Source:
    - konva-v5.2.0.js, line 8886

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill pattern offset y
      var patternOffsetY = shape.fillPatternOffsetY();

      // set fill pattern offset y
      shape.fillPatternOffsetY(10);

#### fillPatternRepeat(repeat) → {String}

  get/set fill pattern repeat. Can be 'repeat', 'repeat-x', 'repeat-y', or 'no-repeat'. The default is 'repeat'

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `repeat` | String |

  Inherited From:
    - Konva.Shape#fillPatternRepeat
  Source:
    - konva-v5.2.0.js, line 8710

  ##### Returns:

  Type
    String

  ##### Example

      // get fill pattern repeat
      var repeat = shape.fillPatternRepeat();

      // repeat pattern in x direction only
      shape.fillPatternRepeat('repeat-x');

      // do not repeat the pattern
      shape.fillPatternRepeat('no repeat');

#### fillPatternRotation(rotation) → {Konva.Shape}

  get/set fill pattern rotation in degrees

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `rotation` | Number |

  Inherited From:
    - Konva.Shape#fillPatternRotation
  Source:
    - konva-v5.2.0.js, line 9174

  ##### Returns:

  Type
    Konva.Shape

  ##### Example

      // get fill pattern rotation
      var patternRotation = shape.fillPatternRotation();

      // set fill pattern rotation
      shape.fillPatternRotation(20);

#### fillPatternScale(scale) → {Object}

  get/set fill pattern scale

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `scale` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillPatternScale
  Source:
    - konva-v5.2.0.js, line 8903

  ##### Returns:

  Type
    Object

  ##### Example

      // get fill pattern scale
      var patternScale = shape.fillPatternScale();

      // set fill pattern scale
      shape.fillPatternScale({
        x: 2
        y: 2
      });

#### fillPatternScaleX(x) → {Number}

  get/set fill pattern scale x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Shape#fillPatternScaleX
  Source:
    - konva-v5.2.0.js, line 8925

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill pattern scale x
      var patternScaleX = shape.fillPatternScaleX();

      // set fill pattern scale x
      shape.fillPatternScaleX(2);

#### fillPatternScaleY(y) → {Number}

  get/set fill pattern scale y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillPatternScaleY
  Source:
    - konva-v5.2.0.js, line 8941

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill pattern scale y
      var patternScaleY = shape.fillPatternScaleY();

      // set fill pattern scale y
      shape.fillPatternScaleY(2);

#### fillPatternX(x) → {Number}

  get/set fill pattern x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Shape#fillPatternX
  Source:
    - konva-v5.2.0.js, line 8606

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill pattern x
      var fillPatternX = shape.fillPatternX();

      // set fill pattern x
      shape.fillPatternX(20);

#### fillPatternY(y) → {Number}

  get/set fill pattern y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillPatternY
  Source:
    - konva-v5.2.0.js, line 8623

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill pattern y
      var fillPatternY = shape.fillPatternY();

      // set fill pattern y
      shape.fillPatternY(20);

#### fillPriority(priority) → {String}

  get/set fill priority. can be color, pattern, linear-gradient, or radial-gradient. The default is color. This is handy if you want to toggle between different fill types.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `priority` | String |

  Inherited From:
    - Konva.Shape#fillPriority
  Source:
    - konva-v5.2.0.js, line 8830

  ##### Returns:

  Type
    String

  ##### Example

      // get fill priority
      var fillPriority = shape.fillPriority();

      // set fill priority
      shape.fillPriority('linear-gradient');

#### fillRadialGradientColorStops(colorStops) → {Array}

  get/set fill radial gradient color stops

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `colorStops` | Number |

  Inherited From:
    - Konva.Shape#fillRadialGradientColorStops
  Source:
    - konva-v5.2.0.js, line 8692

  ##### Returns:

  Type
    Array

  ##### Example

      // get fill radial gradient color stops
      var colorStops = shape.fillRadialGradientColorStops();

      // create a radial gradient that starts with red, changes to blue
      // halfway through, and then changes to green
      shape.fillRadialGradientColorStops(0, 'red', 0.5, 'blue', 1, 'green');

#### fillRadialGradientEndPoint(endPoint) → {Object}

  get/set fill radial gradient end point

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `endPoint` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillRadialGradientEndPoint
  Source:
    - konva-v5.2.0.js, line 9120

  ##### Returns:

  Type
    Object

  ##### Example

      // get fill radial gradient end point
      var endPoint = shape.fillRadialGradientEndPoint();

      // set fill radial gradient end point
      shape.fillRadialGradientEndPoint({
        x: 20
        y: 10
      });

#### fillRadialGradientEndPointX(x) → {Number}

  get/set fill radial gradient end point x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Shape#fillRadialGradientEndPointX
  Source:
    - konva-v5.2.0.js, line 9141

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill radial gradient end point x
      var endPointX = shape.fillRadialGradientEndPointX();

      // set fill radial gradient end point x
      shape.fillRadialGradientEndPointX(20);

#### fillRadialGradientEndPointY(y) → {Number}

  get/set fill radial gradient end point y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillRadialGradientEndPointY
  Source:
    - konva-v5.2.0.js, line 9157

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill radial gradient end point y
      var endPointY = shape.fillRadialGradientEndPointY();

      // set fill radial gradient end point y
      shape.fillRadialGradientEndPointY(20);

#### fillRadialGradientEndRadius(radius) → {Number}

  get/set fill radial gradient end radius

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `radius` | Number |

  Inherited From:
    - Konva.Shape#fillRadialGradientEndRadius
  Source:
    - konva-v5.2.0.js, line 8675

  ##### Returns:

  Type
    Number

  ##### Example

      // get radial gradient end radius
      var endRadius = shape.fillRadialGradientEndRadius();

      // set radial gradient end radius
      shape.fillRadialGradientEndRadius(100);

#### fillRadialGradientStartPoint(startPoint) → {Object}

  get/set fill radial gradient start point

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `startPoint` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillRadialGradientStartPoint
  Source:
    - konva-v5.2.0.js, line 9066

  ##### Returns:

  Type
    Object

  ##### Example

      // get fill radial gradient start point
      var startPoint = shape.fillRadialGradientStartPoint();

      // set fill radial gradient start point
      shape.fillRadialGradientStartPoint({
        x: 20
        y: 10
      });

#### fillRadialGradientStartPointX(x) → {Number}

  get/set fill radial gradient start point x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Shape#fillRadialGradientStartPointX
  Source:
    - konva-v5.2.0.js, line 9087

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill radial gradient start point x
      var startPointX = shape.fillRadialGradientStartPointX();

      // set fill radial gradient start point x
      shape.fillRadialGradientStartPointX(20);

#### fillRadialGradientStartPointY(y) → {Number}

  get/set fill radial gradient start point y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Shape#fillRadialGradientStartPointY
  Source:
    - konva-v5.2.0.js, line 9103

  ##### Returns:

  Type
    Number

  ##### Example

      // get fill radial gradient start point y
      var startPointY = shape.fillRadialGradientStartPointY();

      // set fill radial gradient start point y
      shape.fillRadialGradientStartPointY(20);

#### fillRadialGradientStartRadius(radius) → {Number}

  get/set fill radial gradient start radius

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `radius` | Number |

  Inherited From:
    - Konva.Shape#fillRadialGradientStartRadius
  Source:
    - konva-v5.2.0.js, line 8658

  ##### Returns:

  Type
    Number

  ##### Example

      // get radial gradient start radius
      var startRadius = shape.fillRadialGradientStartRadius();

      // set radial gradient start radius
      shape.fillRadialGradientStartRadius(0);

#### fillRed(red) → {Integer}

  get/set fill red component

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `red` | Integer |

  Inherited From:
    - Konva.Shape#fillRed
  Source:
    - konva-v5.2.0.js, line 8536

  ##### Returns:

  Type
    Integer

  ##### Example

      // get fill red component
      var fillRed = shape.fillRed();

      // set fill red component
      shape.fillRed(0);

#### filters(filters) → {Array}

  get/set filters. Filters are applied to cached canvases

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `filters` | Array | array of filters

  Inherited From:
    - Konva.Node#filters
  Source:
    - konva-v5.2.0.js, line 4221

  ##### Returns:

  Type
    Array

  ##### Example

      // get filters
      var filters = node.filters();

      // set a single filter
      node.cache();
      node.filters([Konva.Filters.Blur]);

      // set multiple filters
      node.cache();
      node.filters([
        Konva.Filters.Blur,
        Konva.Filters.Sepia,
        Konva.Filters.Invert
      ]);

#### fire(eventType, evt, bubble) → {Konva.Node}

  fire event

  ##### Parameters:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `eventType` | String |  | event type. can be a regular event, like click, mouseover, or mouseout, or it can be a custom event, like myCustomEvent
  `evt` | Event | <optional> | event object
  `bubble` | Boolean | <optional> | setting the value to false, or leaving it undefined, will result in the event not bubbling. Setting the value to true will result in the event bubbling.

  Inherited From:
    - Konva.Node#fire
  Source:
    - konva-v5.2.0.js, line 3404

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      // manually fire click event
      node.fire('click');

      // fire custom event
      node.fire('foo');

      // fire custom event with custom event object
      node.fire('foo', {
        bar: 10
      });

      // fire click event that bubbles
      node.fire('click', null, true);

#### getAbsoluteOpacity() → {Number}

  get absolute opacity

  Inherited From:
    - Konva.Node#getAbsoluteOpacity
  Source:
    - konva-v5.2.0.js, line 3273

  ##### Returns:

  Type
    Number

#### getAbsolutePosition() → {Object}

  get absolute position relative to the top left corner of the stage container div

  Inherited From:
    - Konva.Node#getAbsolutePosition
  Source:
    - konva-v5.2.0.js, line 3019

  ##### Returns:

  Type
    Object

#### getAbsoluteTransform() → {Konva.Transform}

  get absolute transform of the node which takes into account its ancestor transforms

  Inherited From:
    - Konva.Node#getAbsoluteTransform
  Source:
    - konva-v5.2.0.js, line 3422

  ##### Returns:

  Type
    Konva.Transform

#### getAbsoluteZIndex() → {Integer}

  get absolute z-index which takes into account sibling and ancestor indices

  Inherited From:
    - Konva.Node#getAbsoluteZIndex
  Source:
    - konva-v5.2.0.js, line 2952

  ##### Returns:

  Type
    Integer

#### getAncestors() → {Konva.Collection}

  get ancestors

  Inherited From:
    - Konva.Node#getAncestors
  Source:
    - konva-v5.2.0.js, line 2769

  ##### Returns:

  Type
    Konva.Collection

  ##### Example

      shape.getAncestors().each(function(node) {
        console.log(node.getId());
      })

#### getAttr(attr) → {Integer|String|Object|Array}

  get attr

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `attr` | String |

  Inherited From:
    - Konva.Node#getAttr
  Source:
    - konva-v5.2.0.js, line 2749

  ##### Returns:

  Type
    Integer | String | Object | Array

  ##### Example

      var x = node.getAttr('x');

#### getAttrs() → {Object}

  get attrs object literal

  Inherited From:
    - Konva.Node#getAttrs
  Source:
    - konva-v5.2.0.js, line 2786

  ##### Returns:

  Type
    Object

#### getCanvas() → {Konva.Canvas}

  get canvas renderer tied to the layer. Note that this returns a canvas renderer, not a canvas element

  Inherited From:
    - Konva.Shape#getCanvas
  Source:
    - konva-v5.2.0.js, line 7838

  ##### Returns:

  Type
    Konva.Canvas

#### getClassName() → {String}

  get class name, which may return Stage, Layer, Group, or shape class names like Rect, Circle, Text, etc.

  Inherited From:
    - Konva.Node#getClassName
  Source:
    - konva-v5.2.0.js, line 3639

  ##### Returns:

  Type
    String

#### getContext() → {Konva.Context}

  get canvas context tied to the layer

  Inherited From:
    - Konva.Shape#getContext
  Source:
    - konva-v5.2.0.js, line 7829

  ##### Returns:

  Type
    Konva.Context

#### getDepth() → {Integer}

  get node depth in node tree. Returns an integer. e.g. Stage depth will always be 0. Layers will always be 1. Groups and Shapes will always be >= 2

  Inherited From:
    - Konva.Node#getDepth
  Source:
    - konva-v5.2.0.js, line 2992

  ##### Returns:

  Type
    Integer

#### getImage() → {Image}

  get image

  Source:
    - konva-v5.2.0.js, line 11733

  ##### Returns:

  Type
    Image

#### getLayer() → {Konva.Layer}

  get layer ancestor

  Inherited From:
    - Konva.Node#getLayer
  Source:
    - konva-v5.2.0.js, line 3358

  ##### Returns:

  Type
    Konva.Layer

#### getParent() → {Konva.Node}

  get parent container

  Inherited From:
    - Konva.Node#getParent
  Source:
    - konva-v5.2.0.js, line 3349

  ##### Returns:

  Type
    Konva.Node

#### getStage() → {Konva.Stage}

  get stage ancestor

  Inherited From:
    - Konva.Node#getStage
  Source:
    - konva-v5.2.0.js, line 3368

  ##### Returns:

  Type
    Konva.Stage

#### getTransform() → {Konva.Transform}

  get transform of the node

  Inherited From:
    - Konva.Node#getTransform
  Source:
    - konva-v5.2.0.js, line 3456

  ##### Returns:

  Type
    Konva.Transform

#### getType() → {String}

  get the node type, which may return Stage, Layer, Group, or Node

  Inherited From:
    - Konva.Node#getType
  Source:
    - konva-v5.2.0.js, line 3648

  ##### Returns:

  Type
    String

#### getZIndex() → {Integer}

  get zIndex relative to the node's siblings who share the same parent

  Inherited From:
    - Konva.Node#getZIndex
  Source:
    - konva-v5.2.0.js, line 2942

  ##### Returns:

  Type
    Integer

#### green(green) → {Integer}

  get/set filter green value. Use with Konva.Filters.RGB filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `green` | Integer | value between 0 and 255

  Inherited From:
    - Konva.Node#green
  Source:
    - konva-v5.2.0.js, line 5028

  ##### Returns:

  Type
    Integer

#### hasFill() → {Boolean}

  returns whether or not the shape will be filled

  Inherited From:
    - Konva.Shape#hasFill
  Source:
    - konva-v5.2.0.js, line 7859

  ##### Returns:

  Type
    Boolean

#### hasShadow() → {Boolean}

  returns whether or not a shadow will be rendered

  Inherited From:
    - Konva.Shape#hasShadow
  Source:
    - konva-v5.2.0.js, line 7847

  ##### Returns:

  Type
    Boolean

#### hasStroke() → {Boolean}

  returns whether or not the shape will be stroked

  Inherited From:
    - Konva.Shape#hasStroke
  Source:
    - konva-v5.2.0.js, line 7868

  ##### Returns:

  Type
    Boolean

#### height(height) → {Number}

  get/set height

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `height` | Number |

  Inherited From:
    - Konva.Node#height
  Source:
    - konva-v5.2.0.js, line 4182

  ##### Returns:

  Type
    Number

  ##### Example

      // get height
      var height = node.height();

      // set height
      node.height(100);

#### hide() → {Konva.Node}

  hide node. Hidden nodes are no longer detectable

  Inherited From:
    - Konva.Node#hide
  Source:
    - konva-v5.2.0.js, line 2932

  ##### Returns:

  Type
    Konva.Node

#### hitFunc(drawFunc) → {function}

  get/set hit draw function

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `drawFunc` | function | drawing function

  Inherited From:
    - Konva.Shape#hitFunc
  Source:
    - konva-v5.2.0.js, line 8259

  ##### Returns:

  Type
    function

  ##### Example

      // get hit draw function
      var hitFunc = shape.hitFunc();

      // set hit draw function
      shape.hitFunc(function(context) {
        context.beginPath();
        context.rect(0, 0, this.width(), this.height());
        context.closePath();
        context.fillStrokeShape(this);
      });

#### hue(hue) → {Number}

  get/set hsv hue in degrees. Use with Konva.Filters.HSV or Konva.Filters.HSL filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `hue` | Number | value between 0 and 359

  Inherited From:
    - Konva.Node#hue
  Source:
    - konva-v5.2.0.js, line 5111

  ##### Returns:

  Type
    Number

#### hue(hue) → {Number}

  get/set hsv hue in degrees. Use with Konva.Filters.HSV or Konva.Filters.HSL filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `hue` | Number | value between 0 and 359

  Inherited From:
    - Konva.Node#hue
  Source:
    - konva-v5.2.0.js, line 5144

  ##### Returns:

  Type
    Number

#### id(id) → {String}

  get/set id

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `id` | String |

  Inherited From:
    - Konva.Node#id
  Source:
    - konva-v5.2.0.js, line 3942

  ##### Returns:

  Type
    String

  ##### Example

      // get id
      var name = node.id();

      // set id
      node.id('foo');

#### intersects(point) → {Boolean}

  determines if point is in the shape, regardless if other shapes are on top of it. Note: because this method clears a temporary canvas and then redraws the shape, it performs very poorly if executed many times consecutively. Please use the Konva.Stage#getIntersection method if at all possible because it performs much better

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `point` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Shape#intersects
  Source:
    - konva-v5.2.0.js, line 7883

  ##### Returns:

  Type
    Boolean

#### isDragging()

  determine if node is currently in drag and drop mode

  Inherited From:
    - Konva.Node#isDragging
  Source:
    - konva-v5.2.0.js, line 7192

#### isListening() → {Boolean}

  determine if node is listening for events by taking into account ancestors.

  Parent | Self | isListening

  ## listening | listening |

  +-----------+------------ T | T | T T | F | F F | T | T

  ## F | F | F

  +-----------+------------ T | I | T F | I | F I | I | T

  Inherited From:
    - Konva.Node#isListening
  Source:
    - konva-v5.2.0.js, line 2843

  ##### Returns:

  Type
    Boolean

#### isVisible() → {Boolean}

  determine if node is visible by taking into account ancestors.

  Parent | Self | isVisible

  ## visible | visible |

  +-----------+------------ T | T | T T | F | F F | T | T

  ## F | F | F

  +-----------+------------ T | I | T F | I | F I | I | T

  Inherited From:
    - Konva.Node#isVisible
  Source:
    - konva-v5.2.0.js, line 2883

  ##### Returns:

  Type
    Boolean

#### kaleidoscopeAngle(degrees) → {Integer}

  get/set kaleidoscope angle. Use with Konva.Filters.Kaleidoscope filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `degrees` | Integer |

  Inherited From:
    - Konva.Node#kaleidoscopeAngle
  Source:
    - konva-v5.2.0.js, line 6088

  ##### Returns:

  Type
    Integer

#### kaleidoscopePower(power) → {Integer}

  get/set kaleidoscope power. Use with Konva.Filters.Kaleidoscope filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `power` | Integer | of kaleidoscope

  Inherited From:
    - Konva.Node#kaleidoscopePower
  Source:
    - konva-v5.2.0.js, line 6078

  ##### Returns:

  Type
    Integer

#### levels(level) → {Number}

  get/set levels. Must be a number between 0 and 1. Use with Konva.Filters.Posterize filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `level` | Number | between 0 and 1

  Inherited From:
    - Konva.Node#levels
  Source:
    - konva-v5.2.0.js, line 5562

  ##### Returns:

  Type
    Number

#### lineCap(lineCap) → {String}

  get/set line cap. Can be butt, round, or square

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `lineCap` | String |

  Inherited From:
    - Konva.Shape#lineCap
  Source:
    - konva-v5.2.0.js, line 8220

  ##### Returns:

  Type
    String

  ##### Example

      // get line cap
      var lineCap = shape.lineCap();

      // set line cap
      shape.lineCap('round');

#### lineJoin(lineJoin) → {String}

  get/set line join. Can be miter, round, or bevel. The default is miter

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `lineJoin` | String |

  Inherited From:
    - Konva.Shape#lineJoin
  Source:
    - konva-v5.2.0.js, line 8202

  ##### Returns:

  Type
    String

  ##### Example

      // get line join
      var lineJoin = shape.lineJoin();

      // set line join
      shape.lineJoin('round');

#### listening(listening) → {Boolean|String}

  get/set listenig attr. If you need to determine if a node is listening or not by taking into account its parents, use the isListening() method

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `listening` | Boolean | String | Can be "inherit", true, or false. The default is "inherit".

  Inherited From:
    - Konva.Node#listening
  Source:
    - konva-v5.2.0.js, line 4198

  ##### Returns:

  Type
    Boolean | String

  ##### Example

      // get listening attr
      var listening = node.listening();

      // stop listening for events
      node.listening(false);

      // listen for events
      node.listening(true);

      // listen to events according to the parent
      node.listening('inherit');

#### move(change) → {Konva.Node}

  move node by an amount relative to its current position

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `change` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Node#move
  Source:
    - konva-v5.2.0.js, line 3118

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      // move node in x direction by 1px and y direction by 2px
      node.move({
        x: 1,
        y: 2)
      });

#### moveDown() → {Boolean}

  move node down

  Inherited From:
    - Konva.Node#moveDown
  Source:
    - konva-v5.2.0.js, line 3215

  ##### Returns:

  Type
    Boolean

#### moveTo(newContainer) → {Konva.Node}

  move node to another container

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `newContainer` | Container |

  Inherited From:
    - Konva.Node#moveTo
  Source:
    - konva-v5.2.0.js, line 3293

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      // move node from current layer into layer2
      node.moveTo(layer2);

#### moveToBottom() → {Boolean}

  move node to the bottom of its siblings

  Inherited From:
    - Konva.Node#moveToBottom
  Source:
    - konva-v5.2.0.js, line 3235

  ##### Returns:

  Type
    Boolean

#### moveToTop() → {Boolean}

  move node to the top of its siblings

  Inherited From:
    - Konva.Node#moveToTop
  Source:
    - konva-v5.2.0.js, line 3177

  ##### Returns:

  Type
    Boolean

#### moveUp() → {Boolean}

  move node up

  Inherited From:
    - Konva.Node#moveUp
  Source:
    - konva-v5.2.0.js, line 3194

  ##### Returns:

  Type
    Boolean

#### name(name) → {String}

  get/set name

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `name` | String |

  Inherited From:
    - Konva.Node#name
  Source:
    - konva-v5.2.0.js, line 3921

  ##### Returns:

  Type
    String

  ##### Example

      // get name
      var name = node.name();

      // set name
      node.name('foo');

      // also node may have multiple names (as css classes)
      node.name('foo bar');

#### noise(noise) → {Number}

  get/set noise amount. Must be a value between 0 and 1. Use with Konva.Filters.Noise filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `noise` | Number |

  Inherited From:
    - Konva.Node#noise
  Source:
    - konva-v5.2.0.js, line 5600

  ##### Returns:

  Type
    Number

#### off(evtStr) → {Konva.Node}

  remove event bindings from the node. Pass in a string of event types delimmited by a space to remove multiple event bindings at once such as 'mousedown mouseup mousemove'. include a namespace to remove an event binding by name such as 'click.foobar'. If you only give a name like '.foobar', all events in that namespace will be removed.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `evtStr` | String | e.g. 'click', 'mousedown touchstart', '.foobar'

  Inherited From:
    - Konva.Node#off
  Source:
    - konva-v5.2.0.js, line 2651

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      // remove listener
      node.off('click');

      // remove multiple listeners
      node.off('click touchstart');

      // remove listener by name
      node.off('click.foo');

#### offsetX(x) → {Number}

  get/set offset x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Node#offsetX
  Source:
    - konva-v5.2.0.js, line 4109

  ##### Returns:

  Type
    Number

  ##### Example

      // get offset x
      var offsetX = node.offsetX();

      // set offset x
      node.offsetX(3);

#### offsetY(y) → {Number}

  get/set offset y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Node#offsetY
  Source:
    - konva-v5.2.0.js, line 4126

  ##### Returns:

  Type
    Number

  ##### Example

      // get offset y
      var offsetY = node.offsetY();

      // set offset y
      node.offsetY(3);

#### on(evtStr, handler) → {Konva.Node}

  bind events to the node. KonvaJS supports mouseover, mousemove, mouseout, mouseenter, mouseleave, mousedown, mouseup, mousewheel, click, dblclick, touchstart, touchmove, touchend, tap, dbltap, dragstart, dragmove, and dragend events. The Konva Stage supports contentMouseover, contentMousemove, contentMouseout, contentMousedown, contentMouseup, contentClick, contentDblclick, contentTouchstart, contentTouchmove, contentTouchend, contentTap, and contentDblTap. Pass in a string of events delimmited by a space to bind multiple events at once such as 'mousedown mouseup mousemove'. Include a namespace to bind an event by name such as 'click.foobar'.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `evtStr` | String | e.g. 'click', 'mousedown touchstart', 'mousedown.foo touchstart.foo'
  `handler` | function | The handler function is passed an event object

  Inherited From:
    - Konva.Node#on
  Source:
    - konva-v5.2.0.js, line 2601

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      // add click listener
      node.on('click', function() {
        console.log('you clicked me!');
      });

      // get the target node
      node.on('click', function(evt) {
        console.log(evt.target);
      });

      // stop event propagation
      node.on('click', function(evt) {
        evt.cancelBubble = true;
      });

      // bind multiple listeners
      node.on('click touchstart', function() {
        console.log('you clicked/touched me!');
      });

      // namespace listener
      node.on('click.foo', function() {
        console.log('you clicked/touched me!');
      });

      // get the event type
      node.on('click tap', function(evt) {
        var eventType = evt.type;
      });

      // get native event object
      node.on('click tap', function(evt) {
        var nativeEvent = evt.evt;
      });

      // for change events, get the old and new val
      node.on('xChange', function(evt) {
        var oldVal = evt.oldVal;
        var newVal = evt.newVal;
      });

#### opacity(opacity) → {Number}

  get/set opacity. Opacity values range from 0 to 1. A node with an opacity of 0 is fully transparent, and a node with an opacity of 1 is fully opaque

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `opacity` | Object |

  Inherited From:
    - Konva.Node#opacity
  Source:
    - konva-v5.2.0.js, line 3901

  ##### Returns:

  Type
    Number

  ##### Example

      // get opacity
      var opacity = node.opacity();

      // set opacity
      node.opacity(0.5);

#### pixelSize(pixelSize) → {Integer}

  get/set pixel size. Use with Konva.Filters.Pixelate filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `pixelSize` | Integer |

  Inherited From:
    - Konva.Node#pixelSize
  Source:
    - konva-v5.2.0.js, line 5693

  ##### Returns:

  Type
    Integer

#### position(pos) → {Object}

  get/set node position relative to parent

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `pos` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Node#position
  Source:
    - konva-v5.2.0.js, line 3845

  ##### Returns:

  Type
    Object

  ##### Example

      // get position
      var position = node.position();

      // set position
      node.position({
        x: 5
        y: 10
      });

#### red(red) → {Integer}

  get/set filter red value. Use with Konva.Filters.RGB filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `red` | Integer | value between 0 and 255

  Inherited From:
    - Konva.Node#red
  Source:
    - konva-v5.2.0.js, line 5007

  ##### Returns:

  Type
    Integer

#### remove() → {Konva.Node}

  remove self from parent, but don't destroy

  Inherited From:
    - Konva.Node#remove
  Source:
    - konva-v5.2.0.js, line 2707

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      node.remove();

#### rotate(theta) → {Konva.Node}

  rotate node by an amount in degrees relative to its current rotation

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `theta` | Number |

  Inherited From:
    - Konva.Node#rotate
  Source:
    - konva-v5.2.0.js, line 3167

  ##### Returns:

  Type
    Konva.Node

#### rotation(rotation) → {Number}

  get/set rotation in degrees

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `rotation` | Number |

  Inherited From:
    - Konva.Node#rotation
  Source:
    - konva-v5.2.0.js, line 3959

  ##### Returns:

  Type
    Number

  ##### Example

      // get rotation in degrees
      var rotation = node.rotation();

      // set rotation in degrees
      node.rotation(45);

#### saturation(saturation) → {Number}

  get/set hsv saturation. Use with Konva.Filters.HSV or Konva.Filters.HSL filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `saturation` | Number | 0 is no change, -1.0 halves the saturation, 1.0 doubles, etc..

  Inherited From:
    - Konva.Node#saturation
  Source:
    - konva-v5.2.0.js, line 5121

  ##### Returns:

  Type
    Number

#### saturation(saturation) → {Number}

  get/set hsv saturation. Use with Konva.Filters.HSV or Konva.Filters.HSL filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `saturation` | Number | 0 is no change, -1.0 halves the saturation, 1.0 doubles, etc..

  Inherited From:
    - Konva.Node#saturation
  Source:
    - konva-v5.2.0.js, line 5154

  ##### Returns:

  Type
    Number

#### scale(scale) → {Object}

  get/set scale

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `scale` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Node#scale
  Source:
    - konva-v5.2.0.js, line 3976

  ##### Returns:

  Type
    Object

  ##### Example

      // get scale
      var scale = node.scale();

      // set scale
      shape.scale({
        x: 2
        y: 3
      });

#### scaleX(x) → {Number}

  get/set scale x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Node#scaleX
  Source:
    - konva-v5.2.0.js, line 3998

  ##### Returns:

  Type
    Number

  ##### Example

      // get scale x
      var scaleX = node.scaleX();

      // set scale x
      node.scaleX(2);

#### scaleY(y) → {Number}

  get/set scale y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Node#scaleY
  Source:
    - konva-v5.2.0.js, line 4015

  ##### Returns:

  Type
    Number

  ##### Example

      // get scale y
      var scaleY = node.scaleY();

      // set scale y
      node.scaleY(2);

#### sceneFunc(drawFunc) → {function}

  get/set scene draw function

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `drawFunc` | function | drawing function

  Inherited From:
    - Konva.Shape#sceneFunc
  Source:
    - konva-v5.2.0.js, line 8237

  ##### Returns:

  Type
    function

  ##### Example

      // get scene draw function
      var sceneFunc = shape.sceneFunc();

      // set scene draw function
      shape.sceneFunc(function(context) {
        context.beginPath();
        context.rect(0, 0, this.width(), this.height());
        context.closePath();
        context.fillStrokeShape(this);
      });

#### setAbsolutePosition(pos) → {Konva.Node}

  set absolute position

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `pos` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Node#setAbsolutePosition
  Source:
    - konva-v5.2.0.js, line 3039

  ##### Returns:

  Type
    Konva.Node

#### setAttr(attr, val) → {Konva.Node}

  set attr

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `attr` | String |
  `val` | * |

  Inherited From:
    - Konva.Node#setAttr
  Source:
    - konva-v5.2.0.js, line 3716

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      node.setAttr('x', 5);

#### setAttrs(config) → {Konva.Node}

  set multiple attrs at once using an object literal

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `config` | Object | object containing key value pairs

  Inherited From:
    - Konva.Node#setAttrs
  Source:
    - konva-v5.2.0.js, line 2801

  ##### Returns:

  Type
    Konva.Node

  ##### Example

      node.setAttrs({
        x: 5,
        fill: 'red'
      });

#### setImage(image)

  set image

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `image` | Image |

  Source:
    - konva-v5.2.0.js, line 11731

#### setZIndex(zIndex) → {Konva.Node}

  set zIndex relative to siblings

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `zIndex` | Integer |

  Inherited From:
    - Konva.Node#setZIndex
  Source:
    - konva-v5.2.0.js, line 3256

  ##### Returns:

  Type
    Konva.Node

#### shadowAlpha(alpha) → {Number}

  get/set shadow alpha component. Alpha is a real number between 0 and 1. The default is 1.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `alpha` | Number |

  Inherited From:
    - Konva.Shape#shadowAlpha
  Source:
    - konva-v5.2.0.js, line 8378

  ##### Returns:

  Type
    Number

  ##### Example

      // get shadow alpha component
      var shadowAlpha = shape.shadowAlpha();

      // set shadow alpha component
      shape.shadowAlpha(0.5);

#### shadowBlue(blue) → {Integer}

  get/set shadow blue component

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `blue` | Integer |

  Inherited From:
    - Konva.Shape#shadowBlue
  Source:
    - konva-v5.2.0.js, line 8361

  ##### Returns:

  Type
    Integer

  ##### Example

      // get shadow blue component
      var shadowBlue = shape.shadowBlue();

      // set shadow blue component
      shape.shadowBlue(0);

#### shadowBlur(blur) → {Number}

  get/set shadow blur

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `blur` | Number |

  Inherited From:
    - Konva.Shape#shadowBlur
  Source:
    - konva-v5.2.0.js, line 8396

  ##### Returns:

  Type
    Number

  ##### Example

      // get shadow blur
      var shadowBlur = shape.shadowBlur();

      // set shadow blur
      shape.shadowBlur(10);

#### shadowColor(color) → {String}

  get/set shadow color

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `color` | String |

  Inherited From:
    - Konva.Shape#shadowColor
  Source:
    - konva-v5.2.0.js, line 8301

  ##### Returns:

  Type
    String

  ##### Example

      // get shadow color
      var shadow = shape.shadowColor();

      // set shadow color with color string
      shape.shadowColor('green');

      // set shadow color with hex
      shape.shadowColor('#00ff00');

      // set shadow color with rgb
      shape.shadowColor('rgb(0,255,0)');

      // set shadow color with rgba and make it 50% opaque
      shape.shadowColor('rgba(0,255,0,0.5');

#### shadowEnabled(enabled) → {Boolean}

  get/set shadow enabled flag

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `enabled` | Boolean |

  Inherited From:
    - Konva.Shape#shadowEnabled
  Source:
    - konva-v5.2.0.js, line 8770

  ##### Returns:

  Type
    Boolean

  ##### Example

      // get shadow enabled flag
      var shadowEnabled = shape.shadowEnabled();

      // disable shadow
      shape.shadowEnabled(false);

      // enable shadow
      shape.shadowEnabled(true);

#### shadowGreen(green) → {Integer}

  get/set shadow green component

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `green` | Integer |

  Inherited From:
    - Konva.Shape#shadowGreen
  Source:
    - konva-v5.2.0.js, line 8344

  ##### Returns:

  Type
    Integer

  ##### Example

      // get shadow green component
      var shadowGreen = shape.shadowGreen();

      // set shadow green component
      shape.shadowGreen(255);

#### shadowOffset(offset) → {Object}

  get/set shadow offset

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `offset` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Shape#shadowOffset
  Source:
    - konva-v5.2.0.js, line 8430

  ##### Returns:

  Type
    Object

  ##### Example

      // get shadow offset
      var shadowOffset = shape.shadowOffset();

      // set shadow offset
      shape.shadowOffset({
        x: 20
        y: 10
      });

#### shadowOffsetX(x) → {Number}

  get/set shadow offset x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Shape#shadowOffsetX
  Source:
    - konva-v5.2.0.js, line 8452

  ##### Returns:

  Type
    Number

  ##### Example

      // get shadow offset x
      var shadowOffsetX = shape.shadowOffsetX();

      // set shadow offset x
      shape.shadowOffsetX(5);

#### shadowOffsetY(y) → {Number}

  get/set shadow offset y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Shape#shadowOffsetY
  Source:
    - konva-v5.2.0.js, line 8469

  ##### Returns:

  Type
    Number

  ##### Example

      // get shadow offset y
      var shadowOffsetY = shape.shadowOffsetY();

      // set shadow offset y
      shape.shadowOffsetY(5);

#### shadowOpacity(opacity) → {Number}

  get/set shadow opacity. must be a value between 0 and 1

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `opacity` | Number |

  Inherited From:
    - Konva.Shape#shadowOpacity
  Source:
    - konva-v5.2.0.js, line 8413

  ##### Returns:

  Type
    Number

  ##### Example

      // get shadow opacity
      var shadowOpacity = shape.shadowOpacity();

      // set shadow opacity
      shape.shadowOpacity(0.5);

#### shadowRed(red) → {Integer}

  get/set shadow red component

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `red` | Integer |

  Inherited From:
    - Konva.Shape#shadowRed
  Source:
    - konva-v5.2.0.js, line 8327

  ##### Returns:

  Type
    Integer

  ##### Example

      // get shadow red component
      var shadowRed = shape.shadowRed();

      // set shadow red component
      shape.shadowRed(0);

#### shouldDrawHit() → {Boolean}

  determine if listening is enabled by taking into account descendants. If self or any children have _isListeningEnabled set to true, then self also has listening enabled.

  Inherited From:
    - Konva.Node#shouldDrawHit
  Source:
    - konva-v5.2.0.js, line 2911

  ##### Returns:

  Type
    Boolean

#### show() → {Konva.Node}

  show node

  Inherited From:
    - Konva.Node#show
  Source:
    - konva-v5.2.0.js, line 2922

  ##### Returns:

  Type
    Konva.Node

#### size(size) → {Object}

  get/set node size

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `size` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `width` | Number |
  `height` | Number |

  Inherited From:
    - Konva.Node#size
  Source:
    - konva-v5.2.0.js, line 4275

  ##### Returns:

  Type
    Object

  ##### Example

      // get node size
      var size = node.size();
      var x = size.x;
      var y = size.y;

      // set size
      node.size({
        width: 100,
        height: 200
      });

#### skew(skew) → {Object}

  get/set skew

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `skew` | Object | ###### Properties
  Name | Type | Description
  --- | --- | ---
  `x` | Number |
  `y` | Number |

  Inherited From:
    - Konva.Node#skew
  Source:
    - konva-v5.2.0.js, line 4032

  ##### Returns:

  Type
    Object

  ##### Example

      // get skew
      var skew = node.skew();

      // set skew
      node.skew({
        x: 20
        y: 10
      });

#### skewX(x) → {Number}

  get/set skew x

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Node#skewX
  Source:
    - konva-v5.2.0.js, line 4054

  ##### Returns:

  Type
    Number

  ##### Example

      // get skew x
      var skewX = node.skewX();

      // set skew x
      node.skewX(3);

#### skewY(y) → {Number}

  get/set skew y

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Node#skewY
  Source:
    - konva-v5.2.0.js, line 4071

  ##### Returns:

  Type
    Number

  ##### Example

      // get skew y
      var skewY = node.skewY();

      // set skew y
      node.skewY(3);

#### startDrag()

  initiate drag and drop

  Inherited From:
    - Konva.Node#startDrag
  Source:
    - konva-v5.2.0.js, line 7108

#### stopDrag()

  stop drag and drop

  Inherited From:
    - Konva.Node#stopDrag
  Source:
    - konva-v5.2.0.js, line 7161

#### stroke(color) → {String}

  get/set stroke color

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `color` | String |

  Inherited From:
    - Konva.Shape#stroke
  Source:
    - konva-v5.2.0.js, line 8090

  ##### Returns:

  Type
    String

  ##### Example

      // get stroke color
      var stroke = shape.stroke();

      // set stroke color with color string
      shape.stroke('green');

      // set stroke color with hex
      shape.stroke('#00ff00');

      // set stroke color with rgb
      shape.stroke('rgb(0,255,0)');

      // set stroke color with rgba and make it 50% opaque
      shape.stroke('rgba(0,255,0,0.5');

#### strokeAlpha(alpha) → {Number}

  get/set stroke alpha component. Alpha is a real number between 0 and 1. The default is 1.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `alpha` | Number |

  Inherited From:
    - Konva.Shape#strokeAlpha
  Source:
    - konva-v5.2.0.js, line 8167

  ##### Returns:

  Type
    Number

  ##### Example

      // get stroke alpha component
      var strokeAlpha = shape.strokeAlpha();

      // set stroke alpha component
      shape.strokeAlpha(0.5);

#### strokeBlue(blue) → {Integer}

  get/set stroke blue component

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `blue` | Integer |

  Inherited From:
    - Konva.Shape#strokeBlue
  Source:
    - konva-v5.2.0.js, line 8150

  ##### Returns:

  Type
    Integer

  ##### Example

      // get stroke blue component
      var strokeBlue = shape.strokeBlue();

      // set stroke blue component
      shape.strokeBlue(0);

#### strokeEnabled(enabled) → {Boolean}

  get/set stroke enabled flag

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `enabled` | Boolean |

  Inherited From:
    - Konva.Shape#strokeEnabled
  Source:
    - konva-v5.2.0.js, line 8750

  ##### Returns:

  Type
    Boolean

  ##### Example

      // get stroke enabled flag
      var strokeEnabled = shape.strokeEnabled();

      // disable stroke
      shape.strokeEnabled(false);

      // enable stroke
      shape.strokeEnabled(true);

#### strokeGreen(green) → {Integer}

  get/set stroke green component

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `green` | Integer |

  Inherited From:
    - Konva.Shape#strokeGreen
  Source:
    - konva-v5.2.0.js, line 8133

  ##### Returns:

  Type
    Integer

  ##### Example

      // get stroke green component
      var strokeGreen = shape.strokeGreen();

      // set stroke green component
      shape.strokeGreen(255);

#### strokeRed(red) → {Integer}

  get/set stroke red component

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `red` | Integer |

  Inherited From:
    - Konva.Shape#strokeRed
  Source:
    - konva-v5.2.0.js, line 8116

  ##### Returns:

  Type
    Integer

  ##### Example

      // get stroke red component
      var strokeRed = shape.strokeRed();

      // set stroke red component
      shape.strokeRed(0);

#### strokeScaleEnabled(enabled) → {Boolean}

  get/set strokeScale enabled flag

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `enabled` | Boolean |

  Inherited From:
    - Konva.Shape#strokeScaleEnabled
  Source:
    - konva-v5.2.0.js, line 8810

  ##### Returns:

  Type
    Boolean

  ##### Example

      // get stroke scale enabled flag
      var strokeScaleEnabled = shape.strokeScaleEnabled();

      // disable stroke scale
      shape.strokeScaleEnabled(false);

      // enable stroke scale
      shape.strokeScaleEnabled(true);

#### strokeWidth(strokeWidth) → {Number}

  get/set stroke width

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `strokeWidth` | Number |

  Inherited From:
    - Konva.Shape#strokeWidth
  Source:
    - konva-v5.2.0.js, line 8185

  ##### Returns:

  Type
    Number

  ##### Example

      // get stroke width
      var strokeWidth = shape.strokeWidth();

      // set stroke width
      shape.strokeWidth();

#### threshold(threshold) → {Number}

  get/set threshold. Must be a value between 0 and 1. Use with Konva.Filters.Threshold or Konva.Filters.Mask filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `threshold` | Number |

  Inherited From:
    - Konva.Node#threshold
  Source:
    - konva-v5.2.0.js, line 5731

  ##### Returns:

  Type
    Number

#### toDataURL(config) → {String}

  Creates a composite data URL. If MIME type is not specified, then "image/png" will result. For "image/jpeg", specify a quality level as quality (range 0.0 - 1.0)

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `config` | Object | ###### Properties
  Name | Type | Argument | Description
  --- | --- | --- | ---
  `mimeType` | String | <optional> | can be "image/png" or "image/jpeg". "image/png" is the default
  `x` | Number | <optional> | x position of canvas section
  `y` | Number | <optional> | y position of canvas section
  `width` | Number | <optional> | width of canvas section
  `height` | Number | <optional> | height of canvas section
  `quality` | Number | <optional> | jpeg quality. If using an "image/jpeg" mimeType, you can specify the quality from 0 to 1, where 0 is very poor quality and 1 is very high quality

  Inherited From:
    - Konva.Node#toDataURL
  Source:
    - konva-v5.2.0.js, line 3561

  ##### Returns:

  Type
    String

#### toImage(config)

  converts node into an image. Since the toImage method is asynchronous, a callback is required. toImage is most commonly used to cache complex drawings as an image so that they don't have to constantly be redrawn

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `config` | Object | ###### Properties
  Name | Type | Argument | Description
  --- | --- | --- | ---
  `callback` | function |  | function executed when the composite has completed
  `mimeType` | String | <optional> | can be "image/png" or "image/jpeg". "image/png" is the default
  `x` | Number | <optional> | x position of canvas section
  `y` | Number | <optional> | y position of canvas section
  `width` | Number | <optional> | width of canvas section
  `height` | Number | <optional> | height of canvas section
  `quality` | Number | <optional> | jpeg quality. If using an "image/jpeg" mimeType, you can specify the quality from 0 to 1, where 0 is very poor quality and 1 is very high quality

  Inherited From:
    - Konva.Node#toImage
  Source:
    - konva-v5.2.0.js, line 3611

  ##### Example

      var image = node.toImage({
        callback: function(img) {
          // do stuff with img
        }
      });

#### toJSON() → {String}

  convert Node into a JSON string. Returns a JSON string.

  Inherited From:
    - Konva.Node#toJSON
  Source:
    - konva-v5.2.0.js, line 3340

  ##### Returns:

  }

  Type
    String

#### toObject() → {Object}

  convert Node into an object for serialization. Returns an object.

  Inherited From:
    - Konva.Node#toObject
  Source:
    - konva-v5.2.0.js, line 3307

  ##### Returns:

  Type
    Object

#### transformsEnabled(enabled) → {String}

  get/set transforms that are enabled. Can be "all", "none", or "position". The default is "all"

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `enabled` | String |

  Inherited From:
    - Konva.Node#transformsEnabled
  Source:
    - konva-v5.2.0.js, line 4271

  ##### Returns:

  Type
    String

  ##### Example

      // enable position transform only to improve draw performance
      node.transformsEnabled('position');

      // enable all transforms
      node.transformsEnabled('all');

#### value(value) → {Number}

  get/set hsv value. Use with Konva.Filters.HSV filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `value` | Number | 0 is no change, -1.0 halves the value, 1.0 doubles, etc..

  Inherited From:
    - Konva.Node#value
  Source:
    - konva-v5.2.0.js, line 5131

  ##### Returns:

  Type
    Number

#### value(value) → {Number}

  get/set hsl luminance. Use with Konva.Filters.HSL filter.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `value` | Number | 0 is no change, -1.0 halves the value, 1.0 doubles, etc..

  Inherited From:
    - Konva.Node#value
  Source:
    - konva-v5.2.0.js, line 5164

  ##### Returns:

  Type
    Number

#### visible(visible) → {Boolean|String}

  get/set visible attr. Can be "inherit", true, or false. The default is "inherit". If you need to determine if a node is visible or not by taking into account its parents, use the isVisible() method

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `visible` | Boolean | String |

  Inherited From:
    - Konva.Node#visible
  Source:
    - konva-v5.2.0.js, line 4246

  ##### Returns:

  Type
    Boolean | String

  ##### Example

      // get visible attr
      var visible = node.visible();

      // make invisible
      node.visible(false);

      // make visible
      node.visible(true);

      // make visible according to the parent
      node.visible('inherit');

#### width(width) → {Number}

  get/set width

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `width` | Number |

  Inherited From:
    - Konva.Node#width
  Source:
    - konva-v5.2.0.js, line 4165

  ##### Returns:

  Type
    Number

  ##### Example

      // get width
      var width = node.width();

      // set width
      node.width(100);

#### x(x) → {Object}

  get/set x position

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `x` | Number |

  Inherited From:
    - Konva.Node#x
  Source:
    - konva-v5.2.0.js, line 3867

  ##### Returns:

  Type
    Object

  ##### Example

      // get x
      var x = node.x();

      // set x
      node.x(5);

#### y(y) → {Integer}

  get/set y position

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `y` | Number |

  Inherited From:
    - Konva.Node#y
  Source:
    - konva-v5.2.0.js, line 3884

  ##### Returns:

  Type
    Integer

  ##### Example

      // get y
      var y = node.y();

      // set y
      node.y(5);