xushiting 2 년 전
부모
커밋
4627670b29
2개의 변경된 파일9개의 추가작업 그리고 3개의 파일을 삭제
  1. 5 3
      src/graphic/Service/CurveRoadService.js
  2. 4 0
      src/graphic/Service/RoadService.js

+ 5 - 3
src/graphic/Service/CurveRoadService.js

@@ -125,9 +125,6 @@ export default class CurveRoadService extends RoadService {
     newEndPoint.setIndex(1); //addCPoint执行后会自动增加
 
     newCurveRoad.setWay(curveRoad.way);
-    newCurveRoad.singleRoadWidth = curveRoad.singleRoadWidth;
-    newCurveRoad.leftWidth = curveRoad.leftWidth;
-    newCurveRoad.rightWidth = curveRoad.rightWidth;
 
     let edgePoints;
     if (newCurveRoad.way == Constant.oneWay) {
@@ -188,6 +185,8 @@ export default class CurveRoadService extends RoadService {
     }
     leftEdge.start = uiService.getNewPositionForPop(leftCurveEdge.start);
     leftEdge.end = uiService.getNewPositionForPop(leftCurveEdge.end);
+    leftEdge.setStyle(leftCurveEdge.getStyle());
+    leftEdge.setWeight(leftCurveEdge.getWeight());
 
     const rightCurveEdge = dataService.getCurveRoadEdge(curveRoad.rightEdgeId);
     for (let i = 0; i < rightEdge.points.length; ++i) {
@@ -197,12 +196,15 @@ export default class CurveRoadService extends RoadService {
     }
     rightEdge.start = uiService.getNewPositionForPop(rightCurveEdge.start);
     rightEdge.end = uiService.getNewPositionForPop(rightCurveEdge.end);
+    rightEdge.setStyle(rightCurveEdge.getStyle());
+    rightEdge.setWeight(rightCurveEdge.getWeight());
 
     curveEdgeService.setCurves(leftEdge);
     curveEdgeService.setCurves(rightEdge);
     newCurveRoad.singleRoadDrivewayCount = curveRoad.singleRoadDrivewayCount;
     newCurveRoad.leftDrivewayCount = curveRoad.leftDrivewayCount;
     newCurveRoad.rightDrivewayCount = curveRoad.rightDrivewayCount;
+    newCurveRoad.singleRoadWidth = curveRoad.singleRoadWidth;
     newCurveRoad.leftWidth = curveRoad.leftWidth;
     newCurveRoad.rightWidth = curveRoad.rightWidth;
     this.setLanes(newCurveRoad.vectorId);

+ 4 - 0
src/graphic/Service/RoadService.js

@@ -134,10 +134,14 @@ export default class RoadService {
     let oldLeftEdge = dataService.getRoadEdge(road.leftEdgeId);
     leftEdge.start = uiService.getNewPositionForPop(oldLeftEdge.start);
     leftEdge.end = uiService.getNewPositionForPop(oldLeftEdge.end);
+    leftEdge.setStyle(oldLeftEdge.getStyle());
+    leftEdge.setWeight(oldLeftEdge.getWeight());
 
     let oldRightEdge = dataService.getRoadEdge(road.rightEdgeId);
     rightEdge.start = uiService.getNewPositionForPop(oldRightEdge.start);
     rightEdge.end = uiService.getNewPositionForPop(oldRightEdge.end);
+    rightEdge.setStyle(oldRightEdge.getStyle());
+    rightEdge.setWeight(oldRightEdge.getWeight());
 
     newRoad.singleRoadDrivewayCount = road.singleRoadDrivewayCount;
     newRoad.leftDrivewayCount = road.leftDrivewayCount;