xushiting 2 роки тому
батько
коміт
99138d7144

Різницю між файлами не показано, бо вона завелика
+ 1 - 1
server/test/a0k4xu045_202305311600080410/attach/sceneStore


+ 14 - 0
src/graphic/Controls/UIControl.js

@@ -247,6 +247,20 @@ export default class UIControl {
     } else if (selectUI == VectorEvents.AddBranchRoad) {
     } else if (selectUI == VectorEvents.AddBranchRoad) {
     } else if (selectUI == VectorEvents.AddNarrowRoad) {
     } else if (selectUI == VectorEvents.AddNarrowRoad) {
     } else if (selectUI == VectorEvents.UnLock) {
     } else if (selectUI == VectorEvents.UnLock) {
+      let road = dataService.getRoad(focusItem.vectorId);
+      if (road) {
+        roadService.convertToLines(focusItem.vectorId);
+      } else {
+        road = dataService.getCurveRoad(focusItem.vectorId);
+        if (road) {
+          curveRoadService.convertToCurveLines(focusItem.vectorId);
+        }
+      }
+      if (road) {
+        this.deleteVector(focusItem.vectorId, focusItem.type);
+        this.layer.history.save();
+        this.layer.renderer.autoRedraw();
+      }
     }
     }
   }
   }
 
 

+ 0 - 25
src/graphic/Service/CurveRoadService.js

@@ -764,31 +764,6 @@ export default class CurveRoadService extends RoadService {
       lineService.createCurveLineForPoints(curveRoad.midDivide.leftMidDivide);
       lineService.createCurveLineForPoints(curveRoad.midDivide.leftMidDivide);
       lineService.createCurveLineForPoints(curveRoad.midDivide.rightMidDivide);
       lineService.createCurveLineForPoints(curveRoad.midDivide.rightMidDivide);
     }
     }
-
-    dataService.deleteCurveRoad(curveRoadId);
-  }
-
-  unlock(curveRoadId) {
-    let curveRoad = dataService.getCurveRoad(curveRoadId);
-    let leftCurveEdge = dataService.getCurveRoadEdge(curveRoad.leftEdgeId);
-    let rightCurveEdge = dataService.getCurveRoadEdge(curveRoad.rightEdgeId);
-    let lanes = curveRoad.lanes;
-
-    for (let i = 0; i < curveRoad.curves.length; ++i) {
-      dataService.createCurveLine(curveRoad.curves[i]);
-    }
-    for (let i = 0; i < leftCurveEdge.curves.length; ++i) {
-      dataService.createCurveLine(leftCurveEdge.curves[i]);
-    }
-    for (let i = 0; i < rightCurveEdge.curves.length; ++i) {
-      dataService.createCurveLine(rightCurveEdge.curves[i]);
-    }
-    for (let i = 0; i < lanes.length; ++i) {
-      for (let j = 0; j < lanes[i].curves.length; ++j) {
-        dataService.createCurveLine(lanes[i].curves[j]);
-      }
-    }
-    dataService.deleteCurveRoad(curveRoadId);
   }
   }
 }
 }
 
 

+ 1 - 2
src/graphic/Service/RoadService.js

@@ -1462,6 +1462,7 @@ export default class RoadService {
     this.setLanes(roadId, dir);
     this.setLanes(roadId, dir);
   }
   }
 
 
+  //将道路转换成线条
   convertToLines(roadId) {
   convertToLines(roadId) {
     let road = dataService.getRoad(roadId);
     let road = dataService.getRoad(roadId);
     let leftEdge = dataService.getRoadEdge(road.leftEdgeId);
     let leftEdge = dataService.getRoadEdge(road.leftEdgeId);
@@ -1488,8 +1489,6 @@ export default class RoadService {
         road.midDivide.rightMidDivide.end
         road.midDivide.rightMidDivide.end
       );
       );
     }
     }
-
-    dataService.deleteRoad(roadId);
   }
   }
 
 
   // unlock(roadId) {
   // unlock(roadId) {