|
@@ -477,51 +477,30 @@ export default class EdgeService {
|
|
|
// console.log("情况1");
|
|
|
mathUtil.clonePoint(leftEdge1.start, newEdgePoint1);
|
|
|
mathUtil.clonePoint(rightEdge2.start, newEdgePoint1);
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge1.vectorId, rightEdge2.vectorId);
|
|
|
- //不能按照下面的方式计算,因为一个edge可以属于两个控制点,毕竟有两个端点
|
|
|
- // dataService.deleteCrossPointForEdge(leftEdge1.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(rightEdge2.vectorId);
|
|
|
- if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge1.vectorId, rightEdge2.vectorId);
|
|
|
- } else {
|
|
|
- //需要考虑控制点CrossPointService
|
|
|
- crossPointService.update(
|
|
|
- newEdgePoint1,
|
|
|
- startPoint1,
|
|
|
- newEdgePoint1,
|
|
|
- leftEdge1,
|
|
|
- rightEdge2,
|
|
|
- "start",
|
|
|
- "start"
|
|
|
- );
|
|
|
|
|
|
- //需要删除之前的控制点,包含:leftEdge1.vectorId和rightEdge2.vectorId
|
|
|
- }
|
|
|
+ crossPointService.update(
|
|
|
+ newEdgePoint1,
|
|
|
+ startPoint1,
|
|
|
+ newEdgePoint1,
|
|
|
+ leftEdge1,
|
|
|
+ rightEdge2,
|
|
|
+ "start",
|
|
|
+ "start"
|
|
|
+ );
|
|
|
} else {
|
|
|
// console.log("情况2");
|
|
|
mathUtil.clonePoint(rightEdge1.start, newEdgePoint2);
|
|
|
mathUtil.clonePoint(leftEdge2.start, newEdgePoint2);
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge2.vectorId, rightEdge1.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(leftEdge2.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(rightEdge1.vectorId);
|
|
|
- if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge2.vectorId, rightEdge1.vectorId);
|
|
|
- } else {
|
|
|
- //需要考虑控制点CrossPointService
|
|
|
- crossPointService.update(
|
|
|
- newEdgePoint2,
|
|
|
- startPoint1,
|
|
|
- newEdgePoint2,
|
|
|
- leftEdge2,
|
|
|
- rightEdge1,
|
|
|
- "start",
|
|
|
- "start"
|
|
|
- );
|
|
|
- }
|
|
|
+
|
|
|
+ crossPointService.update(
|
|
|
+ newEdgePoint2,
|
|
|
+ startPoint1,
|
|
|
+ newEdgePoint2,
|
|
|
+ leftEdge2,
|
|
|
+ rightEdge1,
|
|
|
+ "start",
|
|
|
+ "start"
|
|
|
+ );
|
|
|
}
|
|
|
return true;
|
|
|
}
|
|
@@ -548,51 +527,30 @@ export default class EdgeService {
|
|
|
//console.log("情况3");
|
|
|
mathUtil.clonePoint(leftEdge1.start, newEdgePoint1);
|
|
|
mathUtil.clonePoint(leftEdge2.end, newEdgePoint1);
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(leftEdge1.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(leftEdge2.vectorId);
|
|
|
- if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
|
- } else {
|
|
|
- //需要考虑控制点CrossPointService
|
|
|
- crossPointService.update(
|
|
|
- newEdgePoint1,
|
|
|
- startPoint1,
|
|
|
- newEdgePoint1,
|
|
|
- leftEdge1,
|
|
|
- leftEdge2,
|
|
|
- "start",
|
|
|
- "end"
|
|
|
- );
|
|
|
- }
|
|
|
+
|
|
|
+ crossPointService.update(
|
|
|
+ newEdgePoint1,
|
|
|
+ startPoint1,
|
|
|
+ newEdgePoint1,
|
|
|
+ leftEdge1,
|
|
|
+ leftEdge2,
|
|
|
+ "start",
|
|
|
+ "end"
|
|
|
+ );
|
|
|
} else {
|
|
|
//console.log("情况4");
|
|
|
mathUtil.clonePoint(rightEdge1.start, newEdgePoint2);
|
|
|
mathUtil.clonePoint(rightEdge2.end, newEdgePoint2);
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(rightEdge1.vectorId, rightEdge2.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(rightEdge1.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(rightEdge2.vectorId);
|
|
|
- if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(
|
|
|
- rightEdge1.vectorId,
|
|
|
- rightEdge2.vectorId
|
|
|
- );
|
|
|
- } else {
|
|
|
- //需要考虑控制点CrossPointService
|
|
|
- crossPointService.update(
|
|
|
- newEdgePoint2,
|
|
|
- startPoint1,
|
|
|
- newEdgePoint2,
|
|
|
- rightEdge1,
|
|
|
- rightEdge2,
|
|
|
- "start",
|
|
|
- "end"
|
|
|
- );
|
|
|
- }
|
|
|
+
|
|
|
+ crossPointService.update(
|
|
|
+ newEdgePoint2,
|
|
|
+ startPoint1,
|
|
|
+ newEdgePoint2,
|
|
|
+ rightEdge1,
|
|
|
+ rightEdge2,
|
|
|
+ "start",
|
|
|
+ "end"
|
|
|
+ );
|
|
|
}
|
|
|
return true;
|
|
|
}
|
|
@@ -619,51 +577,30 @@ export default class EdgeService {
|
|
|
//console.log("情况5");
|
|
|
mathUtil.clonePoint(leftEdge1.end, newEdgePoint1);
|
|
|
mathUtil.clonePoint(leftEdge2.start, newEdgePoint1);
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(leftEdge1.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(leftEdge2.vectorId);
|
|
|
- if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
|
- } else {
|
|
|
- //需要考虑控制点CrossPointService
|
|
|
- crossPointService.update(
|
|
|
- newEdgePoint1,
|
|
|
- endPoint1,
|
|
|
- newEdgePoint1,
|
|
|
- leftEdge1,
|
|
|
- leftEdge2,
|
|
|
- "end",
|
|
|
- "start"
|
|
|
- );
|
|
|
- }
|
|
|
+
|
|
|
+ crossPointService.update(
|
|
|
+ newEdgePoint1,
|
|
|
+ endPoint1,
|
|
|
+ newEdgePoint1,
|
|
|
+ leftEdge1,
|
|
|
+ leftEdge2,
|
|
|
+ "end",
|
|
|
+ "start"
|
|
|
+ );
|
|
|
} else {
|
|
|
//console.log("情况6");
|
|
|
mathUtil.clonePoint(rightEdge1.end, newEdgePoint2);
|
|
|
mathUtil.clonePoint(rightEdge2.start, newEdgePoint2);
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(rightEdge1.vectorId, rightEdge2.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(rightEdge1.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(rightEdge2.vectorId);
|
|
|
- if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(
|
|
|
- rightEdge1.vectorId,
|
|
|
- rightEdge2.vectorId
|
|
|
- );
|
|
|
- } else {
|
|
|
- //需要考虑控制点CrossPointService
|
|
|
- crossPointService.update(
|
|
|
- newEdgePoint2,
|
|
|
- endPoint1,
|
|
|
- newEdgePoint2,
|
|
|
- rightEdge1,
|
|
|
- rightEdge2,
|
|
|
- "end",
|
|
|
- "start"
|
|
|
- );
|
|
|
- }
|
|
|
+
|
|
|
+ crossPointService.update(
|
|
|
+ newEdgePoint2,
|
|
|
+ endPoint1,
|
|
|
+ newEdgePoint2,
|
|
|
+ rightEdge1,
|
|
|
+ rightEdge2,
|
|
|
+ "end",
|
|
|
+ "start"
|
|
|
+ );
|
|
|
}
|
|
|
return true;
|
|
|
}
|
|
@@ -690,48 +627,30 @@ export default class EdgeService {
|
|
|
//console.log("情况7");
|
|
|
mathUtil.clonePoint(leftEdge1.end, newEdgePoint1);
|
|
|
mathUtil.clonePoint(rightEdge2.end, newEdgePoint1);
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(leftEdge1.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(leftEdge2.vectorId);
|
|
|
- if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
|
- } else {
|
|
|
- //需要考虑控制点CrossPointService
|
|
|
- crossPointService.update(
|
|
|
- newEdgePoint1,
|
|
|
- endPoint1,
|
|
|
- newEdgePoint1,
|
|
|
- leftEdge1,
|
|
|
- leftEdge2,
|
|
|
- "end",
|
|
|
- "end"
|
|
|
- );
|
|
|
- }
|
|
|
+
|
|
|
+ crossPointService.update(
|
|
|
+ newEdgePoint1,
|
|
|
+ endPoint1,
|
|
|
+ newEdgePoint1,
|
|
|
+ leftEdge1,
|
|
|
+ leftEdge2,
|
|
|
+ "end",
|
|
|
+ "end"
|
|
|
+ );
|
|
|
} else {
|
|
|
//console.log("情况8");
|
|
|
mathUtil.clonePoint(rightEdge1.end, newEdgePoint2);
|
|
|
mathUtil.clonePoint(leftEdge2.end, newEdgePoint2);
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(rightEdge1.vectorId, leftEdge2.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(leftEdge2.vectorId);
|
|
|
- // dataService.deleteCrossPointForEdge(rightEdge1.vectorId);
|
|
|
- if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
|
- //要删除控制点
|
|
|
- dataService.deleteCrossPoint(rightEdge1.vectorId, leftEdge2.vectorId);
|
|
|
- } else {
|
|
|
- //需要考虑控制点CrossPointService
|
|
|
- crossPointService.update(
|
|
|
- newEdgePoint2,
|
|
|
- endPoint1,
|
|
|
- newEdgePoint2,
|
|
|
- rightEdge1,
|
|
|
- leftEdge2,
|
|
|
- "end",
|
|
|
- "end"
|
|
|
- );
|
|
|
- }
|
|
|
+
|
|
|
+ crossPointService.update(
|
|
|
+ newEdgePoint2,
|
|
|
+ endPoint1,
|
|
|
+ newEdgePoint2,
|
|
|
+ rightEdge1,
|
|
|
+ leftEdge2,
|
|
|
+ "end",
|
|
|
+ "end"
|
|
|
+ );
|
|
|
}
|
|
|
return true;
|
|
|
} else {
|