В обычном WIN32 работать с графикой было проблематично и это связано с тем, что все операции могли использовать только тип INT. Почитайте "Шаг 134 - Графика, функции GDI и реальные данные - Первый взгляд на проблему". В Net все поменялось, теперь мы можем использовать тип данных float, который может содержать данные в приличном диапазоне:
±1.5 X 10-45 до ±3.4 X 1038
Давайте попробуем:
// CSharp DotNet Sample Code using System; using System.Windows.Forms; using System.Drawing; class MainForm : Form { public MainForm() { Text = "This is my form"; } protected override void OnPaint(PaintEventArgs pe) { Graphics g = pe.Graphics; PointF p1 = new PointF(12.23F,23.45F); PointF p2 = new PointF(123.45F,232.67F); Pen myPen = new Pen( Color.Red, 1 ); g.DrawLine(myPen, p1,p2); } public static void Main(string[] args) { Application.Run(new MainForm()); } }
Вот. DrawLine понял, что и к чему. Линия нарисована.