1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26430.16
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tango.Core", "Tango.Core\Tango.Core.csproj", "{A34EE0F0-649D-41C8-8489-B6F1CC6924EE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tango.Touch", "Tango.Touch\Tango.Touch.csproj", "{FD86424C-6E84-491B-8DF9-3D0F5C236A2A}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tango.UITests", "Utilities\Tango.UITests\Tango.UITests.csproj", "{5B954D98-4020-4AC6-939F-C52B5646E8E6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tango.DragAndDrop", "Tango.DragAndDrop\Tango.DragAndDrop.csproj", "{B112D89A-A106-41AE-A0C1-4ABC84C477F5}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{A34EE0F0-649D-41C8-8489-B6F1CC6924EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A34EE0F0-649D-41C8-8489-B6F1CC6924EE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A34EE0F0-649D-41C8-8489-B6F1CC6924EE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A34EE0F0-649D-41C8-8489-B6F1CC6924EE}.Release|Any CPU.Build.0 = Release|Any CPU
{FD86424C-6E84-491B-8DF9-3D0F5C236A2A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FD86424C-6E84-491B-8DF9-3D0F5C236A2A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FD86424C-6E84-491B-8DF9-3D0F5C236A2A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FD86424C-6E84-491B-8DF9-3D0F5C236A2A}.Release|Any CPU.Build.0 = Release|Any CPU
{5B954D98-4020-4AC6-939F-C52B5646E8E6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5B954D98-4020-4AC6-939F-C52B5646E8E6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5B954D98-4020-4AC6-939F-C52B5646E8E6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5B954D98-4020-4AC6-939F-C52B5646E8E6}.Release|Any CPU.Build.0 = Release|Any CPU
{B112D89A-A106-41AE-A0C1-4ABC84C477F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B112D89A-A106-41AE-A0C1-4ABC84C477F5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B112D89A-A106-41AE-A0C1-4ABC84C477F5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B112D89A-A106-41AE-A0C1-4ABC84C477F5}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
>;
using System.Windows.Media.Imaging;
namespace RealTimeGraphEx.FastGraphs
{
/// <summary>
/// Represents a real-time graph with a single scrollable wave form.
/// </summary>
public class RealTimeGraphExWaveScroll : RealTimeGraphExLineScroll
{
#region Constructors
public RealTimeGraphExWaveScroll()
: base()
{
}
#endregion
#region Override Methods
/// <summary>
/// Set the cross thread fields.
/// </summary>
protected override void OnSetCrossThreadFields()
{
base.OnSetCrossThreadFields();
this.Dispatcher.Invoke(() =>
{
_minimum = _maximum * -1;
}, System.Windows.Threading.DispatcherPriority.Send);
}
/// <summary>
/// Draw the actual polygon on the image.
/// </summary>
/// <param name="bmp"></param>
protected override void OnDrawVisuals(WriteableBitmap bmp)
{
Color stroke = _graphController.dataSeries.GetStrokeColor() != null ? _graphController.dataSeries.GetStrokeColor().Value : _stroke;
Color fill = _graphController.dataSeries.GetFillColor() != null ? _graphController.dataSeries.GetFillColor().Value : _fill;
double scale = GetPolygonScaleFactor();
if (_fillGraph) //Fill Graph
{
bmp.FillPolygon(graphPolygon.ToPolygonPointsWaveFill(_offSetX, _offSetY, _width, _height, scale, ConvertYToImageYFliped), fill);
}
DrawPolyline(bmp, graphPolygon.ToPolygonPoints(_offSetX, _offSetY, scale, ConvertYToImageYFliped), stroke);
DrawPolyline(bmp, graphPolygon.ToPolygonPointsReflection(_offSetX, _offSetY, _height, scale, ConvertYToImageYFliped), stroke);
}
#endregion
}
}
|