chartplotter的亮度(动态数据显示)C#

时间:2014-10-18 17:20:04

标签: c# map brightness dynamic-data-display

我正在使用Microsoft Visual Studio 2010,包括参考动态数据显示。 我想创建一个控制地图亮度的滚动条。 我试图找到像亮度或类似的东西,但没有成功。感谢帮助的朋友。 :)

1 个答案:

答案 0 :(得分:0)

您可以通过将其Background设置为不同的RGB值来控制绘图仪的亮度。每个值的范围从0(最暗)到255(最亮)。首先设置最亮的颜色,例如

Byte R = 255;
Byte G = 255;
Byte B = 255;

并定义一个由滑块控制的因子(范围从0.5到1.0)。(0.0是总黑度,所以我将较低的范围设置为0.5,这是灰色的。)

double minFactor = 0.5;
double maxFactor = 1.0;
double factor = maxFactor; //initially, brightest

然后是绘图仪的Background

Color color = Color.FromRgb((Byte)(factor*R), (Byte)(factor*G), (Byte)(factor*B));
plotter.Background = new SolidColorBrush(color);

这就是滑块控制亮度的方式。

Slider slider = new Slider();
slider.Value = factor;
slider.Maximum = maxFactor;
slider.Minimum = minFactor;
slider.ValueChanged += (s, e) =>
{
    var newFactor = e.NewValue;
    Color newColor = Color.FromRgb((Byte)(newFactor * R), (Byte)(newFactor * G), (Byte)(newFactor * B));
    plotter.Background = new SolidColorBrush(newColor);
};

地图的亮度

一个。为绘图仪设置深色背景

plotter.Background = new SolidColorBrush(Colors.Black);

湾隐藏网格

plotter.AxisGrid.Visibility = System.Windows.Visibility.Collapsed;

℃。通过滑块调整地图的不透明度

slider.ValueChanged += (s, e) =>
{
    var newFactor = e.NewValue;
    map.Opacity = newFactor;
    //Color newColor = Color.FromRgb((Byte)(newFactor * R), (Byte)(newFactor * G), (Byte)(newFactor * B));
    //plotter.Background = new SolidColorBrush(newColor);
}