util.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. "use strict";
  2. exports.__esModule = true;
  3. exports.splitPoints = splitPoints;
  4. exports.splitArray = splitArray;
  5. var _common = require("../../util/common");
  6. /**
  7. * @fileOverview shape util
  8. * @author dxq613@gmail.com
  9. */
  10. function splitPoints(obj) {
  11. var points = [];
  12. var x = obj.x;
  13. var y = obj.y;
  14. y = (0, _common.isArray)(y) ? y : [y];
  15. y.forEach(function (yItem, index) {
  16. var point = {
  17. x: (0, _common.isArray)(x) ? x[index] : x,
  18. y: yItem
  19. };
  20. points.push(point);
  21. });
  22. return points;
  23. }
  24. function splitArray(data, yField, connectNulls) {
  25. if (!data.length) return [];
  26. var arr = [];
  27. var tmp = [];
  28. var yValue;
  29. (0, _common.each)(data, function (obj) {
  30. yValue = obj._origin ? obj._origin[yField] : obj[yField];
  31. if (connectNulls) {
  32. if (!(0, _common.isNil)(yValue)) {
  33. tmp.push(obj);
  34. }
  35. } else {
  36. if ((0, _common.isArray)(yValue) && (0, _common.isNil)(yValue[0]) || (0, _common.isNil)(yValue)) {
  37. if (tmp.length) {
  38. arr.push(tmp);
  39. tmp = [];
  40. }
  41. } else {
  42. tmp.push(obj);
  43. }
  44. }
  45. });
  46. if (tmp.length) {
  47. arr.push(tmp);
  48. }
  49. return arr;
  50. }