|
@@ -509,21 +509,29 @@ export default class EdgeService {
|
|
mathUtil.clonePoint(leftEdge1.start, newEdgePoint1);
|
|
mathUtil.clonePoint(leftEdge1.start, newEdgePoint1);
|
|
mathUtil.clonePoint(rightEdge2.start, newEdgePoint1);
|
|
mathUtil.clonePoint(rightEdge2.start, newEdgePoint1);
|
|
|
|
|
|
|
|
+ crossPointService.update(
|
|
|
|
+ newEdgePoint1,
|
|
|
|
+ startPoint1,
|
|
|
|
+ newEdgePoint1,
|
|
|
|
+ leftEdge1,
|
|
|
|
+ rightEdge2,
|
|
|
|
+ "start",
|
|
|
|
+ "start"
|
|
|
|
+ );
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
//要删除控制点
|
|
//要删除控制点
|
|
dataService.deleteCrossPoint(leftEdge1.vectorId, rightEdge2.vectorId);
|
|
dataService.deleteCrossPoint(leftEdge1.vectorId, rightEdge2.vectorId);
|
|
} else {
|
|
} else {
|
|
//需要考虑控制点CrossPointService
|
|
//需要考虑控制点CrossPointService
|
|
- crossPointService.update(
|
|
|
|
- newEdgePoint1,
|
|
|
|
- startPoint1,
|
|
|
|
- newEdgePoint1,
|
|
|
|
- leftEdge1,
|
|
|
|
- rightEdge2,
|
|
|
|
- "start",
|
|
|
|
- "start"
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
|
|
+ // crossPointService.update(
|
|
|
|
+ // newEdgePoint1,
|
|
|
|
+ // startPoint1,
|
|
|
|
+ // newEdgePoint1,
|
|
|
|
+ // leftEdge1,
|
|
|
|
+ // rightEdge2,
|
|
|
|
+ // "start",
|
|
|
|
+ // "start"
|
|
|
|
+ // );
|
|
//需要删除之前的控制点,包含:leftEdge1.vectorId和rightEdge2.vectorId
|
|
//需要删除之前的控制点,包含:leftEdge1.vectorId和rightEdge2.vectorId
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
@@ -531,20 +539,29 @@ export default class EdgeService {
|
|
mathUtil.clonePoint(rightEdge1.start, newEdgePoint2);
|
|
mathUtil.clonePoint(rightEdge1.start, newEdgePoint2);
|
|
mathUtil.clonePoint(leftEdge2.start, newEdgePoint2);
|
|
mathUtil.clonePoint(leftEdge2.start, newEdgePoint2);
|
|
|
|
|
|
|
|
+ crossPointService.update(
|
|
|
|
+ newEdgePoint2,
|
|
|
|
+ startPoint1,
|
|
|
|
+ newEdgePoint2,
|
|
|
|
+ leftEdge2,
|
|
|
|
+ rightEdge1,
|
|
|
|
+ "start",
|
|
|
|
+ "start"
|
|
|
|
+ );
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
//要删除控制点
|
|
//要删除控制点
|
|
dataService.deleteCrossPoint(leftEdge2.vectorId, rightEdge1.vectorId);
|
|
dataService.deleteCrossPoint(leftEdge2.vectorId, rightEdge1.vectorId);
|
|
} else {
|
|
} else {
|
|
//需要考虑控制点CrossPointService
|
|
//需要考虑控制点CrossPointService
|
|
- crossPointService.update(
|
|
|
|
- newEdgePoint2,
|
|
|
|
- startPoint1,
|
|
|
|
- newEdgePoint2,
|
|
|
|
- leftEdge2,
|
|
|
|
- rightEdge1,
|
|
|
|
- "start",
|
|
|
|
- "start"
|
|
|
|
- );
|
|
|
|
|
|
+ // crossPointService.update(
|
|
|
|
+ // newEdgePoint2,
|
|
|
|
+ // startPoint1,
|
|
|
|
+ // newEdgePoint2,
|
|
|
|
+ // leftEdge2,
|
|
|
|
+ // rightEdge1,
|
|
|
|
+ // "start",
|
|
|
|
+ // "start"
|
|
|
|
+ // );
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return true;
|
|
return true;
|
|
@@ -573,26 +590,45 @@ export default class EdgeService {
|
|
mathUtil.clonePoint(leftEdge1.start, newEdgePoint1);
|
|
mathUtil.clonePoint(leftEdge1.start, newEdgePoint1);
|
|
mathUtil.clonePoint(leftEdge2.end, newEdgePoint1);
|
|
mathUtil.clonePoint(leftEdge2.end, newEdgePoint1);
|
|
|
|
|
|
|
|
+ crossPointService.update(
|
|
|
|
+ newEdgePoint1,
|
|
|
|
+ startPoint1,
|
|
|
|
+ newEdgePoint1,
|
|
|
|
+ leftEdge1,
|
|
|
|
+ leftEdge2,
|
|
|
|
+ "start",
|
|
|
|
+ "end"
|
|
|
|
+ );
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
//要删除控制点
|
|
//要删除控制点
|
|
dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
} else {
|
|
} else {
|
|
//需要考虑控制点CrossPointService
|
|
//需要考虑控制点CrossPointService
|
|
- crossPointService.update(
|
|
|
|
- newEdgePoint1,
|
|
|
|
- startPoint1,
|
|
|
|
- newEdgePoint1,
|
|
|
|
- leftEdge1,
|
|
|
|
- leftEdge2,
|
|
|
|
- "start",
|
|
|
|
- "end"
|
|
|
|
- );
|
|
|
|
|
|
+ // crossPointService.update(
|
|
|
|
+ // newEdgePoint1,
|
|
|
|
+ // startPoint1,
|
|
|
|
+ // newEdgePoint1,
|
|
|
|
+ // leftEdge1,
|
|
|
|
+ // leftEdge2,
|
|
|
|
+ // "start",
|
|
|
|
+ // "end"
|
|
|
|
+ // );
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
//console.log("情况4");
|
|
//console.log("情况4");
|
|
mathUtil.clonePoint(rightEdge1.start, newEdgePoint2);
|
|
mathUtil.clonePoint(rightEdge1.start, newEdgePoint2);
|
|
mathUtil.clonePoint(rightEdge2.end, newEdgePoint2);
|
|
mathUtil.clonePoint(rightEdge2.end, newEdgePoint2);
|
|
|
|
|
|
|
|
+ //需要考虑控制点CrossPointService
|
|
|
|
+ crossPointService.update(
|
|
|
|
+ newEdgePoint2,
|
|
|
|
+ startPoint1,
|
|
|
|
+ newEdgePoint2,
|
|
|
|
+ rightEdge1,
|
|
|
|
+ rightEdge2,
|
|
|
|
+ "start",
|
|
|
|
+ "end"
|
|
|
|
+ );
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
//要删除控制点
|
|
//要删除控制点
|
|
dataService.deleteCrossPoint(
|
|
dataService.deleteCrossPoint(
|
|
@@ -600,16 +636,16 @@ export default class EdgeService {
|
|
rightEdge2.vectorId
|
|
rightEdge2.vectorId
|
|
);
|
|
);
|
|
} else {
|
|
} else {
|
|
- //需要考虑控制点CrossPointService
|
|
|
|
- crossPointService.update(
|
|
|
|
- newEdgePoint2,
|
|
|
|
- startPoint1,
|
|
|
|
- newEdgePoint2,
|
|
|
|
- rightEdge1,
|
|
|
|
- rightEdge2,
|
|
|
|
- "start",
|
|
|
|
- "end"
|
|
|
|
- );
|
|
|
|
|
|
+ // //需要考虑控制点CrossPointService
|
|
|
|
+ // crossPointService.update(
|
|
|
|
+ // newEdgePoint2,
|
|
|
|
+ // startPoint1,
|
|
|
|
+ // newEdgePoint2,
|
|
|
|
+ // rightEdge1,
|
|
|
|
+ // rightEdge2,
|
|
|
|
+ // "start",
|
|
|
|
+ // "end"
|
|
|
|
+ // );
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return true;
|
|
return true;
|
|
@@ -638,26 +674,44 @@ export default class EdgeService {
|
|
mathUtil.clonePoint(leftEdge1.end, newEdgePoint1);
|
|
mathUtil.clonePoint(leftEdge1.end, newEdgePoint1);
|
|
mathUtil.clonePoint(leftEdge2.start, newEdgePoint1);
|
|
mathUtil.clonePoint(leftEdge2.start, newEdgePoint1);
|
|
|
|
|
|
|
|
+ crossPointService.update(
|
|
|
|
+ newEdgePoint1,
|
|
|
|
+ endPoint1,
|
|
|
|
+ newEdgePoint1,
|
|
|
|
+ leftEdge1,
|
|
|
|
+ leftEdge2,
|
|
|
|
+ "end",
|
|
|
|
+ "start"
|
|
|
|
+ );
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
//要删除控制点
|
|
//要删除控制点
|
|
dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
} else {
|
|
} else {
|
|
//需要考虑控制点CrossPointService
|
|
//需要考虑控制点CrossPointService
|
|
- crossPointService.update(
|
|
|
|
- newEdgePoint1,
|
|
|
|
- endPoint1,
|
|
|
|
- newEdgePoint1,
|
|
|
|
- leftEdge1,
|
|
|
|
- leftEdge2,
|
|
|
|
- "end",
|
|
|
|
- "start"
|
|
|
|
- );
|
|
|
|
|
|
+ // crossPointService.update(
|
|
|
|
+ // newEdgePoint1,
|
|
|
|
+ // endPoint1,
|
|
|
|
+ // newEdgePoint1,
|
|
|
|
+ // leftEdge1,
|
|
|
|
+ // leftEdge2,
|
|
|
|
+ // "end",
|
|
|
|
+ // "start"
|
|
|
|
+ // );
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
//console.log("情况6");
|
|
//console.log("情况6");
|
|
mathUtil.clonePoint(rightEdge1.end, newEdgePoint2);
|
|
mathUtil.clonePoint(rightEdge1.end, newEdgePoint2);
|
|
mathUtil.clonePoint(rightEdge2.start, newEdgePoint2);
|
|
mathUtil.clonePoint(rightEdge2.start, newEdgePoint2);
|
|
|
|
|
|
|
|
+ crossPointService.update(
|
|
|
|
+ newEdgePoint2,
|
|
|
|
+ endPoint1,
|
|
|
|
+ newEdgePoint2,
|
|
|
|
+ rightEdge1,
|
|
|
|
+ rightEdge2,
|
|
|
|
+ "end",
|
|
|
|
+ "start"
|
|
|
|
+ );
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
//要删除控制点
|
|
//要删除控制点
|
|
dataService.deleteCrossPoint(
|
|
dataService.deleteCrossPoint(
|
|
@@ -666,15 +720,15 @@ export default class EdgeService {
|
|
);
|
|
);
|
|
} else {
|
|
} else {
|
|
//需要考虑控制点CrossPointService
|
|
//需要考虑控制点CrossPointService
|
|
- crossPointService.update(
|
|
|
|
- newEdgePoint2,
|
|
|
|
- endPoint1,
|
|
|
|
- newEdgePoint2,
|
|
|
|
- rightEdge1,
|
|
|
|
- rightEdge2,
|
|
|
|
- "end",
|
|
|
|
- "start"
|
|
|
|
- );
|
|
|
|
|
|
+ // crossPointService.update(
|
|
|
|
+ // newEdgePoint2,
|
|
|
|
+ // endPoint1,
|
|
|
|
+ // newEdgePoint2,
|
|
|
|
+ // rightEdge1,
|
|
|
|
+ // rightEdge2,
|
|
|
|
+ // "end",
|
|
|
|
+ // "start"
|
|
|
|
+ // );
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return true;
|
|
return true;
|
|
@@ -703,40 +757,58 @@ export default class EdgeService {
|
|
mathUtil.clonePoint(leftEdge1.end, newEdgePoint1);
|
|
mathUtil.clonePoint(leftEdge1.end, newEdgePoint1);
|
|
mathUtil.clonePoint(rightEdge2.end, newEdgePoint1);
|
|
mathUtil.clonePoint(rightEdge2.end, newEdgePoint1);
|
|
|
|
|
|
|
|
+ crossPointService.update(
|
|
|
|
+ newEdgePoint1,
|
|
|
|
+ endPoint1,
|
|
|
|
+ newEdgePoint1,
|
|
|
|
+ leftEdge1,
|
|
|
|
+ leftEdge2,
|
|
|
|
+ "end",
|
|
|
|
+ "end"
|
|
|
|
+ );
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
//要删除控制点
|
|
//要删除控制点
|
|
dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
dataService.deleteCrossPoint(leftEdge1.vectorId, leftEdge2.vectorId);
|
|
} else {
|
|
} else {
|
|
//需要考虑控制点CrossPointService
|
|
//需要考虑控制点CrossPointService
|
|
- crossPointService.update(
|
|
|
|
- newEdgePoint1,
|
|
|
|
- endPoint1,
|
|
|
|
- newEdgePoint1,
|
|
|
|
- leftEdge1,
|
|
|
|
- leftEdge2,
|
|
|
|
- "end",
|
|
|
|
- "end"
|
|
|
|
- );
|
|
|
|
|
|
+ // crossPointService.update(
|
|
|
|
+ // newEdgePoint1,
|
|
|
|
+ // endPoint1,
|
|
|
|
+ // newEdgePoint1,
|
|
|
|
+ // leftEdge1,
|
|
|
|
+ // leftEdge2,
|
|
|
|
+ // "end",
|
|
|
|
+ // "end"
|
|
|
|
+ // );
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
//console.log("情况8");
|
|
//console.log("情况8");
|
|
mathUtil.clonePoint(rightEdge1.end, newEdgePoint2);
|
|
mathUtil.clonePoint(rightEdge1.end, newEdgePoint2);
|
|
mathUtil.clonePoint(leftEdge2.end, newEdgePoint2);
|
|
mathUtil.clonePoint(leftEdge2.end, newEdgePoint2);
|
|
|
|
|
|
|
|
+ crossPointService.update(
|
|
|
|
+ newEdgePoint2,
|
|
|
|
+ endPoint1,
|
|
|
|
+ newEdgePoint2,
|
|
|
|
+ rightEdge1,
|
|
|
|
+ leftEdge2,
|
|
|
|
+ "end",
|
|
|
|
+ "end"
|
|
|
|
+ );
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
if (angle > Constant.maxAngle || angle < Constant.minAngle) {
|
|
//要删除控制点
|
|
//要删除控制点
|
|
dataService.deleteCrossPoint(rightEdge1.vectorId, leftEdge2.vectorId);
|
|
dataService.deleteCrossPoint(rightEdge1.vectorId, leftEdge2.vectorId);
|
|
} else {
|
|
} else {
|
|
//需要考虑控制点CrossPointService
|
|
//需要考虑控制点CrossPointService
|
|
- crossPointService.update(
|
|
|
|
- newEdgePoint2,
|
|
|
|
- endPoint1,
|
|
|
|
- newEdgePoint2,
|
|
|
|
- rightEdge1,
|
|
|
|
- leftEdge2,
|
|
|
|
- "end",
|
|
|
|
- "end"
|
|
|
|
- );
|
|
|
|
|
|
+ // crossPointService.update(
|
|
|
|
+ // newEdgePoint2,
|
|
|
|
+ // endPoint1,
|
|
|
|
+ // newEdgePoint2,
|
|
|
|
+ // rightEdge1,
|
|
|
|
+ // leftEdge2,
|
|
|
|
+ // "end",
|
|
|
|
+ // "end"
|
|
|
|
+ // );
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return true;
|
|
return true;
|