polygon.js 724 B

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