2026-01-26 14:51:28 +09:00

73 lines
4.0 KiB
XML

<UserControl x:Class="VisionUI.Layout.UCVisionCoordinate"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:aurora="clr-namespace:Aurora.View;assembly=Aurora"
xmlns:local="clr-namespace:VisionUI.Layout"
mc:Ignorable="d"
d:DesignHeight="55" d:DesignWidth="60">
<UserControl.Resources>
<ResourceDictionary>
<aurora:BoolConverter
x:Key="convVerticalText"
FalseValue="Y"
TrueValue="X"/>
<aurora:BoolConverter
x:Key="convHorizontalText"
FalseValue="X"
TrueValue="Y"/>
<local:AngleConverter x:Key="convAngleConverter"/>
<aurora:BoolToVisibilityConverter
x:Key="visibilityConverter"
True="Visible"
False="Collapsed"/>
<aurora:BoolToVisibilityConverter
x:Key="visibilityInverter"
True="Collapsed"
False="Visible"/>
<Style TargetType="TextBlock">
<Setter Property="Foreground" Value="{DynamicResource AVThemeForeground}"/>
</Style>
</ResourceDictionary>
</UserControl.Resources>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid Name="GridXY" Grid.Column="0" Background="Transparent" Width="40" Height="40">
<Grid.RenderTransform>
<RotateTransform x:Name="GridXYRotate" CenterX="21" CenterY="21">
<RotateTransform.Angle>
<MultiBinding Converter="{StaticResource convAngleConverter}">
<Binding Path="Degree"/>
<Binding Path="IsReverse"/>
</MultiBinding>
</RotateTransform.Angle>
</RotateTransform>
</Grid.RenderTransform>
<Polygon x:Name="PoligonX" StrokeThickness="1" Fill="{Binding XColor}" Points="35,0 40,5 35,10"/>
<Polygon x:Name="PoligonY" StrokeThickness="1" Fill="{Binding YColor}" Points="0,35 5,40 10,35"/>
<Line x:Name="LineX" Stroke="{Binding XColor}" StrokeThickness="3" X1="4" Y1="5" X2="37" Y2="5"></Line>
<Line x:Name="LineY" Stroke="{Binding YColor}" StrokeThickness="3" X1="5" Y1="35" X2="5" Y2="4"></Line>
<TextBlock FontSize="8" FontWeight="Bold" Margin="-7, 0, 0, 0" HorizontalAlignment="Left" VerticalAlignment="Bottom"
Text="{Binding IsReverse, Converter={StaticResource convVerticalText}}"/>
<TextBlock FontSize="8" FontWeight="Bold" Margin="0, 0, -7, 0" HorizontalAlignment="Right" VerticalAlignment="Top"
Text="{Binding IsReverse, Converter={StaticResource convHorizontalText}}"/>
<Image Grid.Row="1" Width="20" Height="20"
RenderOptions.BitmapScalingMode="HighQuality"
Source="pack://application:,,,/VisionCommonUI;component/Icons/img_four.png"
Visibility="{Binding IsReverse, Converter={StaticResource visibilityInverter}}"/>
<Image Grid.Row="1" Width="20" Height="20"
RenderOptions.BitmapScalingMode="HighQuality"
Source="pack://application:,,,/VisionCommonUI;component/Icons/img_four_flip.png"
Visibility="{Binding IsReverse, Converter={StaticResource visibilityConverter}}"/>
</Grid>
<TextBlock Grid.Column="1" FontSize="10" FontWeight="Bold" Margin="5" HorizontalAlignment="Right" VerticalAlignment="Center" Background="Transparent">
<Run Text="{Binding Degree}"/>°
</TextBlock>
</Grid>
</UserControl>