C# 一个圆和一条半径为56的线
如何在圆内画线,线只在圆内可见,我需要控制线的角度。让我们说一个圆圈,在里面画一条线,天使56。如何在C#WPF中实现这一点。如果您阅读了相应的概述,您应该能够管理:&只需在面板中放置一个C# 一个圆和一条半径为56的线,c#,wpf,drawing,line,geometry,C#,Wpf,Drawing,Line,Geometry,如何在圆内画线,线只在圆内可见,我需要控制线的角度。让我们说一个圆圈,在里面画一条线,天使56。如何在C#WPF中实现这一点。如果您阅读了相应的概述,您应该能够管理:&只需在面板中放置一个椭圆和一条线,让它们相互重叠(如网格),并根据需要调整参数 <Grid HorizontalAlignment="Center" VerticalAlignment="Center"> <Grid.LayoutTransform> <RotateTransf
椭圆和一条线,让它们相互重叠(如网格),并根据需要调整参数
<Grid HorizontalAlignment="Center" VerticalAlignment="Center">
<Grid.LayoutTransform>
<RotateTransform Angle="56" CenterX="28" CenterY="28"/>
</Grid.LayoutTransform>
<Ellipse Height="56" Width="56" Stroke="Red" StrokeThickness="2" />
<Line X1="1" X2="55" Y1="28" Y2="28" Stroke="Red" StrokeThickness="2" />
</Grid>
如果要在XAML中执行此操作,请按以下方式执行:
<Line X1="1" X2="55" Y1="28" Y2="28" Stroke="Red" StrokeThickness="2" >
<Line.LayoutTransform>
<RotateTransform Angle="56" CenterX="50" CenterY="50"/>
</Line.LayoutTransform>
</Line>
我有一个错误,我的意思不是圆的半径56,而是线的角度56。我的错误。@IvanTanasijevic在这种情况下,只需对整个网格应用布局变换,将其旋转到您想要的任何角度(请参见更新以回答)。参数不正确。渲染线没有穿过圆的中间。你是对的,我没有正确设置偏移,抱歉。无论如何,你的方式很好,所以我不会更新我的源代码;)公平地说,我忘记了布局变换,正准备计算出这行的数学,直到看到你的答案,所以+1;)