[1187] | 1 | using System.Drawing;
|
---|
| 2 |
|
---|
| 3 | namespace HeuristicLab.Visualization {
|
---|
| 4 | public class MinMaxLineShape : WorldShape {
|
---|
[1233] | 5 | private readonly LineShape minLineShape;
|
---|
| 6 | private readonly LineShape maxLineShape;
|
---|
[1187] | 7 |
|
---|
| 8 | /// <summary>
|
---|
| 9 | /// Initializes the HorizontalLineShape.
|
---|
| 10 | /// </summary>
|
---|
| 11 | /// <param name="color">color for the LineShape</param>
|
---|
| 12 | /// <param name="yMin">y value for lower line</param>
|
---|
| 13 | /// <param name="yMax">y value for upper line</param>
|
---|
| 14 | /// <param name="thickness">line thickness</param>
|
---|
| 15 | /// <param name="style">line style</param>
|
---|
[1233] | 16 | public MinMaxLineShape(double yMin, double yMax, Color color, int thickness, DrawingStyle style) {
|
---|
| 17 | minLineShape = new LineShape(0, yMin, 1, yMin, color, thickness, style);
|
---|
| 18 | maxLineShape = new LineShape(0, yMax, 1, yMax, color, thickness, style);
|
---|
[1187] | 19 | shapes.Add(minLineShape);
|
---|
| 20 | shapes.Add(maxLineShape);
|
---|
| 21 | }
|
---|
| 22 |
|
---|
[1234] | 23 | public override void Draw(Graphics graphics, Rectangle parentViewport, RectangleD parentClippingArea) {
|
---|
[1187] | 24 | minLineShape.X1 = ClippingArea.X1;
|
---|
| 25 | minLineShape.X2 = ClippingArea.X2;
|
---|
| 26 | maxLineShape.X1 = ClippingArea.X1;
|
---|
| 27 | maxLineShape.X2 = ClippingArea.X2;
|
---|
[1234] | 28 | base.Draw(graphics, parentViewport, parentClippingArea);
|
---|
[1187] | 29 | }
|
---|
| 30 |
|
---|
| 31 |
|
---|
| 32 | public double YMin {
|
---|
| 33 | set {
|
---|
| 34 | minLineShape.Y1 = value;
|
---|
| 35 | minLineShape.Y2 = value;
|
---|
| 36 | }
|
---|
| 37 | }
|
---|
| 38 |
|
---|
| 39 | public double YMax {
|
---|
| 40 | set {
|
---|
| 41 | maxLineShape.Y1 = value;
|
---|
| 42 | maxLineShape.Y2 = value;
|
---|
| 43 | }
|
---|
| 44 | }
|
---|
| 45 | }
|
---|
| 46 | } |
---|