Wpf 使用xaml在二次贝塞尔线段上绘制箭头端点
最简单的方法是什么来画一个箭头的结尾?棘手的部分是获得正确的旋转马赫的传入线段 你有什么想法吗?我应该延期吗 我画了一条简单的贝塞尔曲线。Wpf 使用xaml在二次贝塞尔线段上绘制箭头端点,wpf,xaml,Wpf,Xaml,最简单的方法是什么来画一个箭头的结尾?棘手的部分是获得正确的旋转马赫的传入线段 你有什么想法吗?我应该延期吗 我画了一条简单的贝塞尔曲线。 您可以定义箭头的几何图形……但要在贝塞尔曲线末端正确定位箭头,需要反复尝试 相反,您可以使用此控件,并使用几何图形定义所需的收头,然后将其正确放置在“线”的末端 您的QuadraticBezierSegment的路径是静态的吗?(这看起来像是你的代码,但你提到让箭头与线段对齐,所以我不确定)是的,它是静态的,但是如果旋转是自动计算的,它会很方便
您可以定义箭头的几何图形……但要在贝塞尔曲线末端正确定位箭头,需要反复尝试 相反,您可以使用此控件,并使用几何图形定义所需的收头,然后将其正确放置在“线”的末端
您的
QuadraticBezierSegment
的路径是静态的吗?(这看起来像是你的代码,但你提到让箭头与线段对齐,所以我不确定)是的,它是静态的,但是如果旋转是自动计算的,它会很方便。
<Path Stroke="Black" StrokeThickness="1">
<Path.Data>
<PathGeometry>
<PathGeometry.Figures>
<PathFigureCollection>
<PathFigure StartPoint="100,430">
<PathFigure.Segments>
<PathSegmentCollection>
<QuadraticBezierSegment Point1="150,250" Point2="250,300" />
</PathSegmentCollection>
</PathFigure.Segments>
</PathFigure>
</PathFigureCollection>
</PathGeometry.Figures>
</PathGeometry>
</Path.Data>
</Path>
<loc:CappedLine Stroke="Red" StrokeThickness="1" Canvas.Left="40" Canvas.Top="200" RenderTransformOrigin="0.5,0.5" Height="107" Width="195">
<loc:CappedLine.EndCap>
<GeometryGroup>
<LineGeometry StartPoint="0,0" EndPoint="10,10"/>
<LineGeometry StartPoint="0,0" EndPoint="10,-10"/>
</GeometryGroup>
</loc:CappedLine.EndCap>
<loc:CappedLine.LinePath>
<PathGeometry Figures="M0,0 C1,1 10.5,75.5 48.5,66.5 86.5,57.5 5,3.5000146 105.5,16.500091 157.5,29.500166 164.5,87.500505 164.5,87.500505" />
</loc:CappedLine.LinePath>
</loc:CappedLine>
<loc:CappedLine Stroke="Red" StrokeThickness="1" Canvas.Left="180" Canvas.Top="200" RenderTransformOrigin="0.5,0.5" Height="107" Width="195">
<loc:CappedLine.EndCap>
<GeometryGroup>
<LineGeometry StartPoint="0,0" EndPoint="10,10"/>
<LineGeometry StartPoint="0,0" EndPoint="10,-10"/>
</GeometryGroup>
</loc:CappedLine.EndCap>
<loc:CappedLine.LinePath>
<PathGeometry Figures="M0,0 C1,1 10.5,75.5 48.5,66.5 86.5,57.5 5,3.5000146 105.5,16.500091" />
</loc:CappedLine.LinePath>
</loc:CappedLine>