mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-05-03 14:31:28 +08:00
画线优化基本完成
This commit is contained in:
@@ -25,7 +25,7 @@ namespace AIStudio.Wpf.Flowchart
|
||||
{
|
||||
FlowchartService.InitData(DiagramViewModel.Items.OfType<FlowNode>().ToList(), DiagramViewModel.Items.OfType<ConnectorViewModel>().ToList(), DiagramViewModel);
|
||||
}
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.BoundaryConnectingLine;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.ConnectingLineSmooth;
|
||||
}
|
||||
|
||||
protected override void InitDiagramViewModel()
|
||||
@@ -36,7 +36,7 @@ namespace AIStudio.Wpf.Flowchart
|
||||
DiagramViewModel.GridCellSize = new Size(100, 100);
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.BoundaryConnectingLine;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.ConnectingLineSmooth;
|
||||
}
|
||||
|
||||
protected override void Init()
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace AIStudio.Wpf.Logical
|
||||
}
|
||||
public LogicalViewModel(string filename, DiagramDocument diagramDocument) : base(filename, diagramDocument)
|
||||
{
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.CornerConnectingLine;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.ConnectingLineSmooth;
|
||||
}
|
||||
|
||||
protected override void InitDiagramViewModel()
|
||||
@@ -31,7 +31,7 @@ namespace AIStudio.Wpf.Logical
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.None;
|
||||
|
||||
DiagramViewModel.Items.CollectionChanged += Items_CollectionChanged;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.CornerConnectingLine;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.ConnectingLineSmooth;
|
||||
}
|
||||
|
||||
protected override void Init()
|
||||
|
||||
@@ -32,7 +32,7 @@ namespace AIStudio.Wpf.Flowchart
|
||||
readDataTimer.Interval = 1000;
|
||||
readDataTimer.AutoReset = false;
|
||||
readDataTimer.Start();
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.BoundaryConnectingLine;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.ConnectingLineBoundary;
|
||||
}
|
||||
|
||||
protected override void InitDiagramViewModel()
|
||||
@@ -43,7 +43,7 @@ namespace AIStudio.Wpf.Flowchart
|
||||
DiagramViewModel.GridCellSize = new Size(100, 60);
|
||||
DiagramViewModel.CellHorizontalAlignment = CellHorizontalAlignment.Center;
|
||||
DiagramViewModel.CellVerticalAlignment = CellVerticalAlignment.Center;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.BoundaryConnectingLine;
|
||||
_service.DrawModeViewModel.LineDrawMode = DrawMode.ConnectingLineBoundary;
|
||||
}
|
||||
|
||||
private System.Timers.Timer readDataTimer = new System.Timers.Timer();
|
||||
|
||||
@@ -802,10 +802,10 @@
|
||||
</Fluent:ToggleButton>
|
||||
|
||||
<Fluent:SplitButton Header="连接线" GroupName="DrawMode" IsCheckable="True" IsChecked="{Binding LineDrawModeSelected}" Icon="{iconPacks:Material Kind=VectorPolyline}" Width="50" VerticalAlignment="Top">
|
||||
<Fluent:MenuItem Header="曲线连接线" Size="Middle" IsCheckable="True" IsChecked="{Binding LineDrawMode,Converter={dd:ConverterValueMapToBool Parameter='SmoothConnectingLine'}, ConverterParameter='SmoothConnectingLine'}" Icon="{iconPacks:Material Kind=VectorRadius}"/>
|
||||
<Fluent:MenuItem Header="直线连接线" Size="Middle" IsCheckable="True" IsChecked="{Binding LineDrawMode,Converter={dd:ConverterValueMapToBool Parameter='StraightConnectingLine'}, ConverterParameter='StraightConnectingLine'}" Icon="{iconPacks:Material Kind=VectorLine}"/>
|
||||
<Fluent:MenuItem Header="折线连接线" Size="Middle" IsCheckable="True" IsChecked="{Binding LineDrawMode,Converter={dd:ConverterValueMapToBool Parameter='CornerConnectingLine'}, ConverterParameter='CornerConnectingLine'}" Icon="{iconPacks:Material Kind=VectorPolyline}"/>
|
||||
<Fluent:MenuItem Header="边界连接线" Size="Middle" IsCheckable="True" IsChecked="{Binding LineDrawMode,Converter={dd:ConverterValueMapToBool Parameter='BoundaryConnectingLine'}, ConverterParameter='BoundaryConnectingLine'}" Icon="{iconPacks:Material Kind=VectorPolylineEdit}"/>
|
||||
<Fluent:MenuItem Header="曲线连接线" Size="Middle" IsCheckable="True" IsChecked="{Binding LineDrawMode,Converter={dd:ConverterValueMapToBool Parameter='ConnectingLineSmooth'}, ConverterParameter='ConnectingLineSmooth'}" Icon="{iconPacks:Material Kind=VectorRadius}"/>
|
||||
<Fluent:MenuItem Header="直线连接线" Size="Middle" IsCheckable="True" IsChecked="{Binding LineDrawMode,Converter={dd:ConverterValueMapToBool Parameter='ConnectingLineStraight'}, ConverterParameter='ConnectingLineStraight'}" Icon="{iconPacks:Material Kind=VectorLine}"/>
|
||||
<Fluent:MenuItem Header="折线连接线" Size="Middle" IsCheckable="True" IsChecked="{Binding LineDrawMode,Converter={dd:ConverterValueMapToBool Parameter='ConnectingLineCorner'}, ConverterParameter='ConnectingLineCorner'}" Icon="{iconPacks:Material Kind=VectorPolyline}"/>
|
||||
<Fluent:MenuItem Header="边界连接线" Size="Middle" IsCheckable="True" IsChecked="{Binding LineDrawMode,Converter={dd:ConverterValueMapToBool Parameter='ConnectingLineBoundary'}, ConverterParameter='ConnectingLineBoundary'}" Icon="{iconPacks:Material Kind=VectorPolylineEdit}"/>
|
||||
<Fluent:SplitButton.Style>
|
||||
<Style TargetType="{x:Type Fluent:SplitButton}" BasedOn="{StaticResource RibbonSplitButtonStyle}">
|
||||
<Setter Property="LargeIcon">
|
||||
@@ -814,28 +814,28 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding LineDrawMode}" Value="SmoothConnectingLine">
|
||||
<DataTrigger Binding="{Binding LineDrawMode}" Value="ConnectingLineSmooth">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<iconPacks:PackIconMaterial Kind="VectorRadius" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding LineDrawMode}" Value="StraightConnectingLine">
|
||||
<DataTrigger Binding="{Binding LineDrawMode}" Value="ConnectingLineStraight">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<iconPacks:PackIconMaterial Kind="VectorLine" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding LineDrawMode}" Value="CornerConnectingLine">
|
||||
<DataTrigger Binding="{Binding LineDrawMode}" Value="ConnectingLineCorner">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<iconPacks:PackIconMaterial Kind="VectorPolyline" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding LineDrawMode}" Value="BoundaryConnectingLine">
|
||||
<DataTrigger Binding="{Binding LineDrawMode}" Value="ConnectingLineBoundary">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<iconPacks:PackIconMaterial Kind="VectorPolylineEdit" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
@@ -852,9 +852,9 @@
|
||||
</Fluent:SplitButton.ToolTip>
|
||||
</Fluent:SplitButton>
|
||||
|
||||
<Fluent:SplitButton Header="连接方式" GroupName="RouterMode" IsCheckable="False" IsChecked="{Binding LineRouterModeSelected}" Icon="{iconPacks:FontAwesome Kind=WindowMinimizeRegular}" Width="50" VerticalAlignment="Top">
|
||||
<Fluent:MenuItem Header="普通" Size="Middle" IsCheckable="True" IsChecked="{Binding LineRouterMode,Converter={dd:ConverterValueMapToBool Parameter='Normal'}, ConverterParameter='Normal'}" Icon="{iconPacks:FontAwesome Kind=WindowMinimizeRegular}"/>
|
||||
<Fluent:MenuItem Header="正交" Size="Middle" IsCheckable="True" IsChecked="{Binding LineRouterMode,Converter={dd:ConverterValueMapToBool Parameter='Orthogonal'}, ConverterParameter='Orthogonal'}" Icon="{iconPacks:FontAwesome Kind=BorderStyleSolid}"/>
|
||||
<!--<Fluent:SplitButton Header="连接方式" GroupName="RouterMode" IsCheckable="False" IsChecked="{Binding LineRouterModeSelected}" Icon="{iconPacks:FontAwesome Kind=WindowMinimizeRegular}" Width="50" VerticalAlignment="Top">
|
||||
<Fluent:MenuItem Header="普通" Size="Middle" IsCheckable="True" IsChecked="{Binding LineRouterMode,Converter={dd:ConverterValueMapToBool Parameter='RouterNormal'}, ConverterParameter='RouterNormal'}" Icon="{iconPacks:FontAwesome Kind=WindowMinimizeRegular}"/>
|
||||
<Fluent:MenuItem Header="正交" Size="Middle" IsCheckable="True" IsChecked="{Binding LineRouterMode,Converter={dd:ConverterValueMapToBool Parameter='RouterOrthogonal'}, ConverterParameter='RouterOrthogonal'}" Icon="{iconPacks:FontAwesome Kind=BorderStyleSolid}"/>
|
||||
<Fluent:SplitButton.Style>
|
||||
<Style TargetType="{x:Type Fluent:SplitButton}" BasedOn="{StaticResource RibbonSplitButtonStyle}">
|
||||
<Setter Property="LargeIcon">
|
||||
@@ -863,14 +863,14 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding LineRouterMode}" Value="Normal">
|
||||
<DataTrigger Binding="{Binding LineRouterMode}" Value="RouterNormal">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<iconPacks:PackIconFontAwesome Kind="WindowMinimizeRegular" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding LineRouterMode}" Value="Orthogonal">
|
||||
<DataTrigger Binding="{Binding LineRouterMode}" Value="RouterOrthogonal">
|
||||
<Setter Property="LargeIcon">
|
||||
<Setter.Value>
|
||||
<iconPacks:PackIconFontAwesome Kind="BorderStyleSolid" VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
@@ -885,7 +885,7 @@
|
||||
Text="连接线的连接方式"
|
||||
Width="190" />
|
||||
</Fluent:SplitButton.ToolTip>
|
||||
</Fluent:SplitButton>
|
||||
</Fluent:SplitButton>-->
|
||||
|
||||
<Fluent:SplitButton Header="形状" GroupName="DrawMode" IsCheckable="True" IsChecked="{Binding ShapeDrawModeSelected}" Width="50" VerticalAlignment="Top">
|
||||
<Fluent:MenuItem Header="矩形工具" Size="Middle" IsCheckable="True" IsChecked="{Binding ShapeDrawMode,Converter={dd:ConverterValueMapToBool Parameter='Rectangle'}, ConverterParameter='Rectangle'}" Icon="{iconPacks:Material Kind=RectangleOutline}" />
|
||||
|
||||
Reference in New Issue
Block a user