MoveLine.js 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import { dataService } from "../Service/DataService";
  2. import { mathUtil } from "../Util/MathUtil";
  3. export default class MoveLine {
  4. constructor() {}
  5. moveLine(lineId, dx, dy) {
  6. dx = dx;
  7. dy = -dy;
  8. let line = dataService.getLine(lineId);
  9. let startPoint = dataService.getPoint(line.startId);
  10. let endPoint = dataService.getPoint(line.endId);
  11. startPoint.x += dx;
  12. startPoint.y += dy;
  13. endPoint.x += dx;
  14. endPoint.y += dy;
  15. }
  16. moveCurveLine(curveLineId, dx, dy) {
  17. dx = dx;
  18. dy = -dy;
  19. let curveLine = dataService.getCurveLine(curveLineId);
  20. let startPoint = dataService.getCurvePoint(curveLine.startId);
  21. let endPoint = dataService.getCurvePoint(curveLine.endId);
  22. startPoint.x += dx;
  23. startPoint.y += dy;
  24. endPoint.x += dx;
  25. endPoint.y += dy;
  26. for (let i = 1; i < curveLine.points.length - 1; ++i) {
  27. curveLine.points[i].x += dx;
  28. curveLine.points[i].y += dy;
  29. }
  30. curveLine.curves = mathUtil.getCurvesByPoints(curveLine.points);
  31. }
  32. }
  33. const moveLine = new MoveLine();
  34. export { moveLine };