Bladeren bron

修正问题

jinx 2 jaren geleden
bovenliggende
commit
91710c82cb

+ 2 - 2
src/graphic/Geometry/CurveRoadEdge.js

@@ -4,14 +4,14 @@ import VectorType from "../enum/VectorType.js";
 import { mathUtil } from "../Util/MathUtil.js";
 
 export default class CurveRoadEdge extends Geometry {
-  constructor(start, end, vectorId, parentId) {
+  constructor(start, end, vectorId, parentId, points) {
     super();
     this.parent = parentId;
     this.start = {};
     this.end = {};
     this.vectorId = null;
     this.style = null;
-    this.points = [];
+    this.points = points || [];
     this.curves = [];
     this.geoType = VectorType.CurveRoadEdge;
     this.setId(vectorId);

+ 4 - 1
src/graphic/History/History.js

@@ -782,12 +782,14 @@ export default class History {
   goNextForCurveRoadEdges(itemForCurveRoadEdges) {
     for (let i = 0; i < itemForCurveRoadEdges.length; ++i) {
       const item = itemForCurveRoadEdges[i];
+ 
       if (item.handle == HistoryEvents.AddCurveRoadEdge) {
         let vCurveRoadEdge = curveEdgeService.create(
           item.curveRoadEdge.start,
           item.curveRoadEdge.end,
           item.curveRoadEdge.id,
-          item.curveRoadEdge.parent
+          item.curveRoadEdge.parent,
+          item.curveRoadEdge.points,
         );
         historyUtil.assignCurveRoadEdgeFromCurveRoadEdge(
           vCurveRoadEdge,
@@ -873,6 +875,7 @@ export default class History {
     historyService.redoHistoryRecord();
     const item = historyService.getHistoryRecord();
     if (item) {
+ 
       stateService.clear();
 
       this.goNextForPoints(item.points);

+ 4 - 3
src/graphic/History/HistoryUtil.js

@@ -486,7 +486,8 @@ export default class HistoryUtil {
     curveRoadInfo.points = [];
     for (let i = 0; i < curveRoad2.points.length; ++i) {
       curveRoadInfo.points[i] = {};
-      curveRoadInfo.points[i].vectorId = curveRoad2.points[i].vectorId;
+      // curveRoadInfo.points[i].vectorId = curveRoad2.points[i].vectorId;
+      curveRoadInfo.points[i] = curveRoad2.points[i];
     }
     this.setCurveRoadInfo(curveRoadInfo);
   }
@@ -715,7 +716,6 @@ export default class HistoryUtil {
     data.rightEdgeId = curveRoad.rightEdgeId;
     data.points = JSON.parse(JSON.stringify(curveRoad.points));
     data.curves = JSON.parse(JSON.stringify(curveRoad.curves));
-
     data.way = curveRoad.way;
     if (curveRoad.way == Constant.oneWay) {
       data.singleCurveRoadWidth = curveRoad.singleRoadWidth;
@@ -897,6 +897,7 @@ export default class HistoryUtil {
       JSON.stringify(curveRoadPointInfo.parent)
     );
     curveRoadPoint.index = curveRoadPointInfo.index;
+
   }
 
   setCurveRoadEdgeInfo(curveRoadEdgeInfo) {
@@ -925,7 +926,7 @@ export default class HistoryUtil {
     //   );
     // }
     curveRoad.points = JSON.parse(JSON.stringify(curveRoadInfo.points));
-    curveRoad.curves = JSON.parse(JSON.stringify(curveRoadInfo.midDivide));
+    curveRoad.curves = JSON.parse(JSON.stringify(curveRoadInfo.curves));
 
     if (curveRoad.way == Constant.oneWay) {
       curveRoad.singleCurveRoadWidth = curveRoadInfo.singleCurveRoadWidth;

+ 2 - 2
src/graphic/Service/CurveEdgeService.js

@@ -5,8 +5,8 @@ import { mathUtil } from "../Util/MathUtil.js";
 export default class CurveEdgeService {
   constructor() {}
 
-  create(start, end, vectorId, parentId) {
-    let curveEdge = new CurveRoadEdge(start, end, vectorId, parentId);
+  create(start, end, vectorId, parentId, points) {
+    let curveEdge = new CurveRoadEdge(start, end, vectorId, parentId, points);
     this.setCurves(curveEdge);
     dataService.addCurveRoadEdge(curveEdge);
     return curveEdge;