2012-12-19 19 views
1

要求:我必须配备电压表用户控件。WPF-同一弧段由2种不同颜色组成

以下代码绘制一个由电压表滴答和值组成的弧。

<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> 

从上面可以看出,使用的笔是笔划=深灰色。我不是在谈论填充物业。

但是,圆弧的一部分必须以蓝色(作为报警值)呈现以响应用户指定的范围。圆弧的任何部分。

大图是用灰色笔呈现的弧的主要部分,报警部分是蓝色的。

上面的问题可以看出,我们可以将笔只分配给路径(而不是弧段或几何或路径图),并且路径一次只能使用一支笔。

当颜色混合在一起时,渐变刷将无法在此工作。此时,弧的两个部分必须根据颜色彼此明显区分。

如果我使用两条路径将弧段分成2段,我必须考虑各种现有的计算,这取决于路径几何的分数值。

我的情况最好的办法是什么?任何建议家伙?

回答

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> 

会导致到的东西,如:

虽然我很害怕,你可能很难找到正确的为它的偏移,如果它应该动态计算。

编辑:你能告诉我们弧如何大致看起来像?

+0

谢谢前夕。我可以找到正确的偏移量。我还没有想出如何在这里发布图像。想想伏特计的伏特值。我正在采用的弧线包括那些具有蜱的价值。 – wbsat