summaryrefslogtreecommitdiffstats
path: root/src/poly.js
blob: 36492dc535aceb32faf4ffdb99fd06e45d29238c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
SVG.Polyline = function(unbiased) {
  this.constructor.call(this, SVG.create('polyline'))
  
  this.unbiased = unbiased
}

// Inherit from SVG.Shape
SVG.Polyline.prototype = new SVG.Shape

SVG.Polygon = function(unbiased) {
  this.constructor.call(this, SVG.create('polygon'))
  
  this.unbiased = unbiased
}

// Inherit from SVG.Shape
SVG.Polygon.prototype = new SVG.Shape

// Add polygon-specific functions
SVG.extend(SVG.Polyline, SVG.Polygon, {
  // Private: Native plot
  _plot: function(p) {
    if (Array.isArray(p)) {
      var i, l, points = []

      for (i = 0, l = p.length; i < l; i++)
        points.push(p[i].join(','))
      
      p = points.length > 0 ? points.join(' ') : '0,0'
    }
    
    return this.attr('points', p || '0,0')
  }
  
})