mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-05-03 06:21:30 +08:00
部分连接线拖拽完成
This commit is contained in:
@@ -18,10 +18,10 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
if (link.IsFullConnection == false)
|
||||
return Normal(_, link);
|
||||
|
||||
double x2 = link.SourceConnectorInfo.MiddlePosition.X < link.SinkConnectorInfoFully.MiddlePosition.X ?
|
||||
link.SinkConnectorInfoFully.MiddlePosition.X - Math.Abs(link.SourceConnectorInfo.MiddlePosition.Y - link.SinkConnectorInfoFully.MiddlePosition.Y)
|
||||
: link.SinkConnectorInfoFully.MiddlePosition.X + Math.Abs(link.SourceConnectorInfo.MiddlePosition.Y - link.SinkConnectorInfoFully.MiddlePosition.Y);
|
||||
double y2 = link.SourceConnectorInfo.MiddlePosition.Y;
|
||||
double x2 = link.SourceConnectorInfoFully.MiddlePosition.X < link.SinkConnectorInfoFully.MiddlePosition.X ?
|
||||
link.SinkConnectorInfoFully.MiddlePosition.X - Math.Abs(link.SourceConnectorInfoFully.MiddlePosition.Y - link.SinkConnectorInfoFully.MiddlePosition.Y)
|
||||
: link.SinkConnectorInfoFully.MiddlePosition.X + Math.Abs(link.SourceConnectorInfoFully.MiddlePosition.Y - link.SinkConnectorInfoFully.MiddlePosition.Y);
|
||||
double y2 = link.SourceConnectorInfoFully.MiddlePosition.Y;
|
||||
|
||||
return new PointBase[] { new PointBase(x2, y2) };
|
||||
|
||||
|
||||
@@ -23,13 +23,13 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
var spots = new List<PointBase>();
|
||||
var verticals = new List<double>();
|
||||
var horizontals = new List<double>();
|
||||
var sideA = link.SourceConnectorInfo.Orientation;
|
||||
var sideA = link.SourceConnectorInfoFully.Orientation;
|
||||
var sideAVertical = IsVerticalSide(sideA);
|
||||
var sideB = link.SinkConnectorInfo.Orientation;
|
||||
var sideBVertical = IsVerticalSide(sideB);
|
||||
var originA = GetPortPositionBasedOnAlignment(link.SourceConnectorInfo);
|
||||
var originA = GetPortPositionBasedOnAlignment(link.SourceConnectorInfoFully);
|
||||
var originB = GetPortPositionBasedOnAlignment(link.SinkConnectorInfo);
|
||||
var shapeA = link.SourceConnectorInfo.DataItem.GetBounds(includePorts: true);
|
||||
var shapeA = link.SourceConnectorInfoFully.DataItem.GetBounds(includePorts: true);
|
||||
var shapeB = link.SinkConnectorInfoFully.DataItem.GetBounds(includePorts: true);
|
||||
var inflatedA = shapeA.InflateRectangle(shapeMargin, shapeMargin);
|
||||
var inflatedB = shapeB.InflateRectangle(shapeMargin, shapeMargin);
|
||||
|
||||
Reference in New Issue
Block a user