要求:我必须使用电压表用户控制。
以下代码绘制弧,包括电压表刻度和值。
<Path Name="Pth" Stroke="DarkGray" StrokeThickness="2" Width="Auto" Height="48" Canvas.Top="12">
<Path.Data>
<PathGeometry >
<PathFigure StartPoint="35,28">
<ArcSegment IsLargeArc="False"
Size="23,75"
Point="200,28"
SweepDirection="Clockwise"
RotationAngle="90"/>
</PathFigure>
</PathGeometry>
</Path.Data>
如上所述,使用的笔是笔画=深灰色。我不是在谈论Fill property。
但是,弧的一部分必须以蓝色(作为警报值)呈现,以响应用户指定的范围。弧的任何部分。
大图是弧形的主要部分由灰色笔呈现,报警部分为蓝色。
上面可以看到的问题是,我们只能将笔分配给Path(不是arcsegment或几何或路径图),路径一次只能使用一支笔。
渐变画笔在颜色混合时不起作用。在这里,弧的两个部分必须通过颜色明显区分。
如果我使用两条路径将弧分成2个分段,我必须考虑各种现有的计算,这取决于路径几何的分数值。
对我来说,最好的方法是什么?有什么建议吗?
答案 0 :(得分:1)
取自here:
一个想法可能是使用渐变画笔,颜色块之间没有间距。
例如:
<Rectangle Width="200" Height="50">
<Rectangle.Fill>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Red" Offset="0.500"/>
<GradientStop Color="Lime" Offset="0.500"/>
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
会产生如下内容:
虽然我担心你可能无法找到正确的偏移量,但是应该动态计算。
编辑:你能告诉我们弧线看起来会是什么样的吗?