Files
Shrlalgo.RvKits/ShrlAlgoToolkit.RevitAddins/RvMEP/ClashResolveView.xaml

128 lines
7.0 KiB
Plaintext
Raw Normal View History

<ui:FluentWindowEx
2025-04-24 20:56:44 +08:00
Height="450"
MinHeight="480"
MinWidth="320"
Title="避让处理"
Width="320"
d:DataContext="{d:DesignInstance Type=local:ClashResolveViewModel}"
mc:Ignorable="d"
x:Class="ShrlAlgoToolkit.RevitAddins.RvMEP.ClashResolveView"
2024-09-22 11:05:41 +08:00
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
2025-04-24 20:56:44 +08:00
xmlns:local="clr-namespace:ShrlAlgoToolkit.RevitAddins.RvMEP"
2024-09-22 11:05:41 +08:00
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
2025-04-24 20:56:44 +08:00
xmlns:rvMep="clr-namespace:ShrlAlgoToolkit.RevitAddins.RvMEP"
2024-09-22 11:05:41 +08:00
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:ui="https://github.com/ShrlAlgo/WPFluent"
2025-04-24 20:56:44 +08:00
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
2024-09-22 11:05:41 +08:00
<b:Interaction.Triggers>
<b:EventTrigger EventName="Closing">
<b:InvokeCommandAction Command="{Binding ClosingCommand}" />
</b:EventTrigger>
</b:Interaction.Triggers>
<Window.Resources>
2025-04-24 20:56:10 +08:00
<ResourceDictionary Source="pack://application:,,,/ShrlAlgoToolkit.RevitAddins;component/WPFUI.xaml" />
2024-09-22 11:05:41 +08:00
</Window.Resources>
2025-04-24 20:56:10 +08:00
<ui:StackPanel Margin="5" Spacing="5">
2024-09-22 11:05:41 +08:00
<GroupBox Header="角度">
<UniformGrid Columns="3">
<!--<ui:CardColor />-->
<RadioButton Content="15°">
<RadioButton.IsChecked>
<Binding Converter="{StaticResource ComparisonConverter}" Path="Angle">
<Binding.ConverterParameter>
<sys:Double>15</sys:Double>
</Binding.ConverterParameter>
</Binding>
</RadioButton.IsChecked>
</RadioButton>
<RadioButton Content="22.5°">
<RadioButton.IsChecked>
<Binding Converter="{StaticResource ComparisonConverter}" Path="Angle">
<Binding.ConverterParameter>
<sys:Double>22.5</sys:Double>
</Binding.ConverterParameter>
</Binding>
</RadioButton.IsChecked>
</RadioButton>
<RadioButton Content="30°">
<RadioButton.IsChecked>
<Binding Converter="{StaticResource ComparisonConverter}" Path="Angle">
<Binding.ConverterParameter>
<sys:Double>30</sys:Double>
</Binding.ConverterParameter>
</Binding>
</RadioButton.IsChecked>
</RadioButton>
<RadioButton Content="45°">
<RadioButton.IsChecked>
<Binding Converter="{StaticResource ComparisonConverter}" Path="Angle">
<Binding.ConverterParameter>
<sys:Double>45</sys:Double>
</Binding.ConverterParameter>
</Binding>
</RadioButton.IsChecked>
</RadioButton>
<RadioButton Content="60°">
<RadioButton.IsChecked>
<Binding Converter="{StaticResource ComparisonConverter}" Path="Angle">
<Binding.ConverterParameter>
<sys:Double>60</sys:Double>
</Binding.ConverterParameter>
</Binding>
</RadioButton.IsChecked>
</RadioButton>
<RadioButton Content="90°">
<RadioButton.IsChecked>
<Binding Converter="{StaticResource ComparisonConverter}" Path="Angle">
<Binding.ConverterParameter>
<sys:Double>90</sys:Double>
</Binding.ConverterParameter>
</Binding>
</RadioButton.IsChecked>
</RadioButton>
2025-04-24 20:56:44 +08:00
<RadioButton Content="自定义" x:Name="LbCustom" />
2024-09-22 11:05:41 +08:00
<TextBox IsEnabled="{Binding IsChecked, ElementName=LbCustom}" Text="{Binding Angle, UpdateSourceTrigger=PropertyChanged}" />
</UniformGrid>
</GroupBox>
2025-04-24 20:56:10 +08:00
<ui:StackPanel Orientation="Horizontal" Spacing="5">
2025-04-24 20:56:44 +08:00
<GroupBox Header="参考方式" ui:StackPanel.Fill="Fill">
2024-09-22 11:05:41 +08:00
<UniformGrid Rows="1">
2024-12-22 10:26:12 +08:00
<RadioButton
Content="手动"
2025-04-24 20:56:44 +08:00
IsChecked="{Binding LocationType, ConverterParameter={x:Static rvMep:LocationType.Manual}, Converter={StaticResource ComparisonConverter}}"
2024-12-22 10:26:12 +08:00
ToolTip="手动选取两点" />
<RadioButton
Content="参考"
2025-04-24 20:56:44 +08:00
IsChecked="{Binding LocationType, ConverterParameter={x:Static rvMep:LocationType.Reference}, Converter={StaticResource ComparisonConverter}}"
2024-12-22 10:26:12 +08:00
ToolTip="选择相交的两条管线,将翻弯管线偏移一定距离" />
2024-09-22 11:05:41 +08:00
</UniformGrid>
</GroupBox>
2025-04-24 20:56:44 +08:00
<GroupBox Header="调整方式" ui:StackPanel.Fill="Fill">
2024-09-22 11:05:41 +08:00
<UniformGrid Rows="1">
2025-04-24 20:56:44 +08:00
<RadioButton Content="单侧" IsChecked="{Binding AdjustType, ConverterParameter={x:Static rvMep:AdjustType.OneSide}, Converter={StaticResource ComparisonConverter}}" />
<RadioButton Content="双侧" IsChecked="{Binding AdjustType, ConverterParameter={x:Static rvMep:AdjustType.TwoSide}, Converter={StaticResource ComparisonConverter}}" />
2024-09-22 11:05:41 +08:00
</UniformGrid>
</GroupBox>
2025-04-24 20:56:10 +08:00
</ui:StackPanel>
2024-09-22 11:05:41 +08:00
<GroupBox Grid.Row="2" Header="调整方向">
<UniformGrid Rows="1">
2025-04-24 20:56:44 +08:00
<RadioButton Content="上" IsChecked="{Binding AdjustDirection, ConverterParameter={x:Static rvMep:AdjustDirection.Up}, Converter={StaticResource ComparisonConverter}}" />
<RadioButton Content="下" IsChecked="{Binding AdjustDirection, ConverterParameter={x:Static rvMep:AdjustDirection.Down}, Converter={StaticResource ComparisonConverter}}" />
<RadioButton Content="左" IsChecked="{Binding AdjustDirection, ConverterParameter={x:Static rvMep:AdjustDirection.Left}, Converter={StaticResource ComparisonConverter}}" />
<RadioButton Content="右" IsChecked="{Binding AdjustDirection, ConverterParameter={x:Static rvMep:AdjustDirection.Right}, Converter={StaticResource ComparisonConverter}}" />
2024-09-22 11:05:41 +08:00
</UniformGrid>
</GroupBox>
<ui:TextBoxEx
2024-09-22 11:05:41 +08:00
Prefix="偏移量:"
Suffix="mm"
2025-04-24 20:56:44 +08:00
Text="{Binding Offset, UpdateSourceTrigger=PropertyChanged}"
ui:StackPanel.Fill="Fill" />
2024-09-22 11:05:41 +08:00
<Button
Command="{Binding ResolveCommand}"
2025-04-24 20:56:44 +08:00
Content="调整"
HorizontalAlignment="Stretch"
ui:StackPanel.Fill="Fill" />
2025-04-24 20:56:10 +08:00
</ui:StackPanel>
</ui:FluentWindowEx>