polygon.js 787 B

1234567891011121314151617181920212223242526272829303132333435
  1. var Shape = require('./shape');
  2. var Util = require('../../util/common');
  3. var Polygon = Shape.registerFactory('polygon', {
  4. defaultShapeType: 'polygon',
  5. getDefaultPoints: function getDefaultPoints(pointInfo) {
  6. var points = [];
  7. var x = pointInfo.x,
  8. y = pointInfo.y;
  9. for (var i = 0, len = x.length; i < len; i++) {
  10. points.push({
  11. x: x[i],
  12. y: y[i]
  13. });
  14. }
  15. return points;
  16. }
  17. });
  18. Shape.registerShape('polygon', 'polygon', {
  19. draw: function draw(cfg, container) {
  20. var points = this.parsePoints(cfg.points);
  21. var style = Util.mix({
  22. fill: cfg.color,
  23. points: points
  24. }, cfg.style);
  25. return container.addShape('Polygon', {
  26. className: 'polygon',
  27. attrs: style
  28. });
  29. }
  30. });
  31. module.exports = Polygon;