l.js 781 B

12345678910111213141516171819202122232425262728293031323334
  1. /**
  2. * @fileOverview
  3. *
  4. * "L" 连线
  5. *
  6. * @author: techird
  7. * @copyright: Baidu FEX, 2014
  8. */
  9. define(function(require, exports, module) {
  10. var kity = require('../core/kity');
  11. var connect = require('../core/connect');
  12. connect.register('l', function(node, parent, connection) {
  13. var po = parent.getLayoutVertexOut();
  14. var pi = node.getLayoutVertexIn();
  15. var vo = parent.getLayoutVectorOut();
  16. var pathData = [];
  17. var r = Math.round,
  18. abs = Math.abs;
  19. pathData.push('M', po.round());
  20. if (abs(vo.x) > abs(vo.y)) {
  21. pathData.push('H', r(pi.x));
  22. } else {
  23. pathData.push('V', pi.y);
  24. }
  25. pathData.push('L', pi);
  26. connection.setPathData(pathData);
  27. });
  28. });