【发布时间】:2013-01-27 08:23:55
【问题描述】:
有没有办法在点之间画线,给定一个简单的几何作为线条样式,使用WPF几何?我知道可以制作这些线条:
-- -- --- --
但我想使用任何简单的几何图形(例如:'^' 符号)来制作线条。所以我想要的是这样的:(线不一定是水平或垂直的):
^^^^^^^^^^^^^^^^^
*****************
注意:我不想与某些字符划清界限。我想使用任意几何图形(例如:起始形状、三角形或任何其他几何图形)来实现。换句话说,我想沿着两点之间的线性路径重复一些几何图形。所以这些简单的几何图形可能会以某种方式旋转以跟随这条线......
【问题讨论】:
-
我正在寻找的输出应该是几何类型。例如:
StreamGeometry -
您是否尝试过将
System.Windows.Shapes.Line与Stroke属性的自定义画笔一起使用? -
我尝试了
StrokeDashArray,但没有解决问题。我用行数据创建一个StreamGeometry,然后从它们创建一个Path。你能解释一下在这种情况下如何使用自定义画笔吗? (代码示例会有所帮助) -
要旋转画笔,只需计算要使用画笔绘制的线条的角度(以度为单位),例如
double r = 180 * Math.Atan2(p2.Y - p1.Y, p2.X - p1.X) / Math.PI,然后将您的画笔的Transform属性设置为new RotateTransform(-r)(您需要使用角度的负值,因为RotateTransform顺时针旋转)。如果您还需要在画笔上进行其他变换,请改用TransformGroup。 -
您是否尝试过使用图像画笔(平铺画笔)? msdn.microsoft.com/en-us/library/aa970682.aspx,也可以在同一个链接看看其他刷机方法。
标签: c# wpf geometry customization