public DrawLine ( Point a, Point b, |
||
a | Point | The starting point of the line. |
b | Point | The ending point of the line. |
brush | The brush to draw the line with. | |
Результат | void |
/// <summary> /// Draws the display to the specified buffer. /// </summary> /// <param name="buffer">The buffer to draw to.</param> /// <param name="alignment">The alignment of the display to the draw position.</param> public void Draw(ConsoleBuffer buffer, Alignment alignment = Alignment.Left) { Point loc = this.Location; Point dloc = loc; int ox = alignment == Alignment.Right ? _digitsUsed * 5 - 1 : -1; buffer.DrawBox(loc.X - ox, loc.Y, _digitsUsed * 5 - 1, 7, this.BackBrush); for (int i = 0; i < _digitsUsed; i++) { dloc.X = loc.X + i * 5 - ox; // Draw negative sign if (_value < 0 && i == 0) { buffer.DrawLine(segments[3][0] + dloc, segments[3][1] + dloc, this.ForeBrush); continue; } // Draw digit foreach (int j in layouts[_digits[i]]) { buffer.DrawLine(segments[j][0] + dloc, segments[j][1] + dloc, this.ForeBrush); } } }
/// <summary> /// Draws the display to the specified buffer. /// </summary> /// <param name="buffer">The buffer to draw to.</param> /// <param name="alignment">The alignment of the display to the draw position.</param> public void Draw(ConsoleBuffer buffer, Alignment alignment = Alignment.Left) { Point loc = this.Location; Point dloc = loc; int ox = alignment == Alignment.Right ? _digitsUsed * 5 - 1 : -1; buffer.DrawBox(loc.X - ox, loc.Y, _digitsUsed * 5 - 1, 7, this.BackBrush); for(int i = 0; i < _digitsUsed; i++) { dloc.X = loc.X + i * 5 - ox; // Draw negative sign if (_value < 0 && i == 0) { buffer.DrawLine(segments[3][0] + dloc, segments[3][1] + dloc, this.ForeBrush); continue; } // Draw digit foreach(int j in layouts[_digits[i]]) { buffer.DrawLine(segments[j][0] + dloc, segments[j][1] + dloc, this.ForeBrush); } } }