diff --git a/com.actionsoft.apps.coe.method.process.subprocess/lib/com.actionsoft.apps.coe.method.process.subprocess.jar b/com.actionsoft.apps.coe.method.process.subprocess/lib/com.actionsoft.apps.coe.method.process.subprocess.jar index 326b269b..fb67af1c 100644 Binary files a/com.actionsoft.apps.coe.method.process.subprocess/lib/com.actionsoft.apps.coe.method.process.subprocess.jar and b/com.actionsoft.apps.coe.method.process.subprocess/lib/com.actionsoft.apps.coe.method.process.subprocess.jar differ diff --git a/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/graph/GraphNodeCloseHandle.java b/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/graph/GraphNodeCloseHandle.java index 9e765672..9c33cb8d 100644 --- a/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/graph/GraphNodeCloseHandle.java +++ b/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/graph/GraphNodeCloseHandle.java @@ -421,7 +421,7 @@ class NodeCloseLinkerRender{ return new double[][]{ startPoi, {fromX + fromW / 2, fromY + fromH + SubProcessConst.SHAPE_VERT_INTERVAL / 2}, - {fromX - SubProcessConst.SHAPE_HORIZ_INTERVAL / 2, fromH + SubProcessConst.SHAPE_VERT_INTERVAL / 2}, + {fromX - SubProcessConst.SHAPE_HORIZ_INTERVAL / 2, fromY + fromH + SubProcessConst.SHAPE_VERT_INTERVAL / 2}, {toX - SubProcessConst.SHAPE_HORIZ_INTERVAL / 2, toY + toH / 2}, {toX, toY + toH / 2} }; diff --git a/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/graph/util/LinkerPointCalculationHandle.java b/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/graph/util/LinkerPointCalculationHandle.java index 73f47df1..cc57b831 100644 --- a/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/graph/util/LinkerPointCalculationHandle.java +++ b/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/graph/util/LinkerPointCalculationHandle.java @@ -163,7 +163,12 @@ public class LinkerPointCalculationHandle { }; } }else if (fromX > toX && fromY < toY){ // 目标节点在第三象限 横向布局的情况下 应该不会出现目标节点在第三象限的情况 - ConsolePrinter.warn("[端到端功能][节点展开模块]处理连线时目标节点在[横向布局]的情况下出现在了第三象限"); + return new double[][]{ + {fromX + fromW / 2, fromY + fromH}, + {fromX + fromW / 2, fromY + fromH + rowNodeDistanceWrapper(getNearBootomNodeDistance(fromBounding)) / 2}, + {toX + toW / 2, fromY + fromH + rowNodeDistanceWrapper(getNearBootomNodeDistance(fromBounding)) / 2}, + {toX + toW / 2, toY} + }; } } return new double[2][2]; @@ -251,10 +256,14 @@ public class LinkerPointCalculationHandle { {toX + toW / 2, toY} }; }else { - // fromX < toX && fromY > toY 目标节点在第一象限 分析可知 纵向排布的情况下 应该不会出现目标节点在第一象限的情况 + return new double[][]{ + {fromX + fromW, fromY + fromH / 2}, + {toX - rowNodeDistanceWrapper(getNearLeftNodeDistance(toBounding)) / 2, fromY + fromH / 2}, + {toX - rowNodeDistanceWrapper(getNearLeftNodeDistance(toBounding)) / 2, toY + toH / 2}, + {toX, toY + toH / 2} + }; } } - return new double[2][2]; } /** diff --git a/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/observers/node/NodeSubject.java b/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/observers/node/NodeSubject.java index c470ebb2..d165cc18 100644 --- a/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/observers/node/NodeSubject.java +++ b/com.actionsoft.apps.coe.method.process.subprocess/src/com/actionsoft/apps/coe/method/process/subprocess/observers/node/NodeSubject.java @@ -55,10 +55,10 @@ public class NodeSubject implements Subject { double x = props.getDoubleValue("x"); double y = props.getDoubleValue("y"); NodeObserver nodeObserver = new NodeObserver(definitionHandle, scopeShapeMonitor, key); - if (scopeX < x) { + if (scopeX + scopeW < x) { addRightNodeObserver(nodeObserver); } - if (scopeY < y) { + if (scopeY + scopeH < y) { addBottomNodeObserver(nodeObserver); } }