我想在一条线上添加边框。我试图沿着存在的(或任何其他方法)绘制两条线。实现它。我试图绘制两条不同厚度的线条。但我想要一种灵活的方法。
我也尝试使用DrawingBrush,但旋转和缩放是一个问题。
简单的代码看起来像这样。但我想知道是否有任何其他方便的方法来添加路径线的边框。除了线路的起点和终点没有被边界"在这种方法中。
<Path
StrokeThickness="3"
StrokeDashCap="Round"
Stroke="Black"
Data="{Binding PathGeometry}"
>
</Path>
<Path
StrokeThickness="8"
StrokeDashCap="Round"
Stroke="{Binding Brush}"
Data="{Binding PathGeometry}"
>
</Path>
答案 0 :(得分:0)
使用线y = mx + c的方程式
private Point GetParellelPoint(Point point1,Point point2,double?X,double?Y)
{
double slope =( point1.Y- point2.Y ) / ( point1.X- point2.X ) ;
if(!X.HasValue)
{
X = (Y.Value - point1.Y) / slop + point1.X;
}
if (!Y.HasValue)
{
Y = slop*(X.Value - point1.X) + point1.Y;
}
return new Point(X.Value, Y.Value);
}
点1和点2是现有线的两个点,然后根据需要提供y或x