- Timestamp:
- 11/29/08 13:08:35 (16 years ago)
- Location:
- trunk/sources
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Visualization.Test/HeuristicLab.Visualization.Test.csproj
r865 r869 52 52 </PropertyGroup> 53 53 <ItemGroup> 54 <Reference Include="nunit.framework, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL"> 55 <SpecificVersion>False</SpecificVersion> 56 <HintPath>NUnit-2.4.8-bin\nunit.framework.dll</HintPath> 57 </Reference> 54 58 <Reference Include="System" /> 55 59 <Reference Include="System.Core"> … … 76 80 <DependentUpon>LegendForm.cs</DependentUpon> 77 81 </Compile> 82 <Compile Include="LineChartTestForm.cs"> 83 <SubType>Form</SubType> 84 </Compile> 85 <Compile Include="LineChartTestForm.Designer.cs"> 86 <DependentUpon>LineChartTestForm.cs</DependentUpon> 87 </Compile> 88 <Compile Include="LineChartTests.cs" /> 78 89 <Compile Include="MainForm.cs"> 79 90 <SubType>Form</SubType> … … 89 100 </ItemGroup> 90 101 <ItemGroup> 102 <ProjectReference Include="..\HeuristicLab.Core\HeuristicLab.Core.csproj"> 103 <Project>{F43B59AB-2B8C-4570-BC1E-15592086517C}</Project> 104 <Name>HeuristicLab.Core</Name> 105 </ProjectReference> 91 106 <ProjectReference Include="..\HeuristicLab.PluginInfrastructure\HeuristicLab.PluginInfrastructure.csproj"> 92 107 <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project> … … 99 114 </ItemGroup> 100 115 <ItemGroup> 116 <EmbeddedResource Include="LineChartTestForm.resx"> 117 <DependentUpon>LineChartTestForm.cs</DependentUpon> 118 </EmbeddedResource> 101 119 <EmbeddedResource Include="MainForm.resx"> 102 120 <DependentUpon>MainForm.cs</DependentUpon> -
trunk/sources/HeuristicLab.Visualization.Test/LineChartTests.cs
r861 r869 1 using System.Drawing; 1 2 using NUnit.Framework; 2 3 … … 8 9 LineChartTestForm f = new LineChartTestForm(); 9 10 10 IDataRow row = new DataRow(); 11 f.Model.AddDataRow(row); 11 IDataRow row1 = new DataRow(); 12 IDataRow row2 = new DataRow(); 13 IDataRow row3 = new DataRow(); 12 14 13 row.AddValue(10); 14 row.AddValue(5); 15 row.AddValue(7); 16 row.AddValue(3); 17 row.AddValue(10); 18 row.AddValue(2); 15 row1.Color = Color.Red; 16 row2.Color = Color.Green; 17 row3.Color = Color.Blue; 18 19 row1.Thickness = 3; 20 row2.Thickness = 4; 21 row3.Thickness = 5; 22 23 f.Model.AddDataRow(row1); 24 f.Model.AddDataRow(row2); 25 f.Model.AddDataRow(row3); 26 27 row1.AddValue(10); 28 row1.AddValue(5); 29 row1.AddValue(7); 30 row1.AddValue(3); 31 row1.AddValue(10); 32 row1.AddValue(2); 33 34 row2.AddValue(5); 35 row2.AddValue(6); 36 row2.AddValue(5); 37 38 row3.AddValue(2); 39 row3.AddValue(2); 40 row3.AddValue(2); 41 row3.AddValue(2); 42 row3.AddValue(2); 19 43 20 44 f.ShowDialog(); -
trunk/sources/HeuristicLab.Visualization/CanvasUI.cs
r725 r869 2 2 using System.Diagnostics; 3 3 using System.Drawing; 4 using System.Drawing.Drawing2D; 4 5 using System.Windows.Forms; 5 6 … … 26 27 Graphics g = pe.Graphics; 27 28 29 g.SmoothingMode = SmoothingMode.AntiAlias; 30 28 31 g.FillRectangle(Brushes.White, ClientRectangle); 29 32 … … 36 39 Debug.WriteLine(e); 37 40 } 41 } 42 43 protected override void OnResize(EventArgs e) { 44 Invalidate(); 45 46 base.OnResize(e); 38 47 } 39 48 -
trunk/sources/HeuristicLab.Visualization/LineChart.Designer.cs
r754 r869 34 34 // canvasUI1 35 35 // 36 this.canvasUI1.Location = new System.Drawing.Point(3, 3); 36 this.canvasUI1.Dock = System.Windows.Forms.DockStyle.Fill; 37 this.canvasUI1.Location = new System.Drawing.Point(0, 0); 37 38 this.canvasUI1.MouseEventListener = null; 38 39 this.canvasUI1.Name = "canvasUI1"; 39 this.canvasUI1.Size = new System.Drawing.Size(5 46, 384);40 this.canvasUI1.Size = new System.Drawing.Size(552, 390); 40 41 this.canvasUI1.TabIndex = 0; 41 42 this.canvasUI1.Text = "canvasUI1"; -
trunk/sources/HeuristicLab.Visualization/LineChart.cs
r861 r869 22 22 throw new NullReferenceException("Model cannot be null."); 23 23 24 this.model = model;25 this.Item = (IItem)model;26 27 24 //TODO: correct Rectangle to fit 28 25 RectangleD clientRectangle = new RectangleD(-1, -1, 11, 11); 29 26 canvasUI1.MainCanvas.WorldShape = new WorldShape(clientRectangle, clientRectangle); 27 28 this.model = model; 29 this.Item = (IItem)model; 30 30 } 31 31 … … 38 38 model.DataRowRemoved += OnDataRowRemoved; 39 39 model.ModelChanged += OnModelChanged; 40 41 foreach (IDataRow row in model.Rows) { 42 OnDataRowAdded(row); 43 } 40 44 } 41 45 … … 59 63 60 64 for (int i = 1; i < row.Count; i++) { 61 LineShape lineShape = new LineShape(i - 1, row[i - 1], i, row[i], 0, row.Color );65 LineShape lineShape = new LineShape(i - 1, row[i - 1], i, row[i], 0, row.Color, row.Thickness); 62 66 lineShapes.Add(lineShape); 63 67 canvasUI1.MainCanvas.WorldShape.AddShape(lineShape); … … 76 80 private readonly IDictionary<IDataRow, List<LineShape>> rowToLineShapes = new Dictionary<IDataRow, List<LineShape>>(); 77 81 78 private void OnRowValueChanged(IDataRow row, double value, int index ) {82 private void OnRowValueChanged(IDataRow row, double value, int index, Action action) { 79 83 List<LineShape> lineShapes = rowToLineShapes[row]; 80 84 … … 84 88 // new value was added 85 89 if (index > 0 && index == lineShapes.Count+1) { 86 LineShape lineShape = new LineShape(index - 1, row[index - 1], index, row[index], 0, row.Color );90 LineShape lineShape = new LineShape(index - 1, row[index - 1], index, row[index], 0, row.Color, row.Thickness); 87 91 lineShapes.Add(lineShape); 88 92 canvasUI1.MainCanvas.WorldShape.AddShape(lineShape); … … 94 98 95 99 // not the last value 96 if (index > 0 && index < row.Count )100 if (index > 0 && index < row.Count-1) 97 101 lineShapes[index].Y1 = value; 98 102 … … 100 104 } 101 105 102 private void OnRowValuesChanged(IDataRow row, double[] values, int index ) {106 private void OnRowValuesChanged(IDataRow row, double[] values, int index, Action action) { 103 107 foreach (double value in values) { 104 OnRowValueChanged(row, value, index++ );108 OnRowValueChanged(row, value, index++, action); 105 109 } 106 110 } -
trunk/sources/HeuristicLab.Visualization/LineShape.cs
r861 r869 6 6 private double z; 7 7 private Color color; 8 private int thickness; 8 9 9 10 /// <summary> … … 15 16 /// <param name="y2">y coordinate of right lineEndPoind</param> 16 17 /// <param name="color">color for the LineShape</param> 17 public LineShape(double x1, double y1, double x2, double y2, double z, Color color ) {18 public LineShape(double x1, double y1, double x2, double y2, double z, Color color, int thickness) { 18 19 this.boundingBox = new RectangleD(x1, y1, x2, y2); 19 20 this.z = z; 20 21 this.color = color; 22 this.thickness = thickness; 21 23 } 22 24 … … 52 54 /// <param name="clippingArea">rectangle in screen-coordinates to draw</param> 53 55 public void Draw(Graphics graphics, Rectangle viewport, RectangleD clippingArea) { 54 using (Pen pen = new Pen(color, 3)){56 using (Pen pen = new Pen(color, thickness)){ 55 57 Rectangle screenRect = Transform.ToScreen(boundingBox, viewport, clippingArea); 56 58 graphics.DrawLine(pen,screenRect.Left, screenRect.Bottom, screenRect.Right, screenRect.Top);
Note: See TracChangeset
for help on using the changeset viewer.