Встроенная по умолчанию система координат имеет точку в верхнем левом углу, ось X вправо а ось Y вниз.
Давайте попробуем нарисовать линию по координатам 0,0 - 100,100 все нормально.
Координатное пространство можно сдвигать.
//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; g.TranslateTransform(100, 50); Pen myPen = new Pen( Color.Red, 1 ); g.DrawLine(myPen, 0,0,100,100); } public static void Main(string[] args) { Application.Run(new MainForm()); } }
Теперь наш центр координат находиться внутри формы.
Используя центр координат можно перемещать наш рисунок по экрану. Теперь при нажатии на мышку рисунок будет сдвигаться вниз.
// CSharp DotNet sample Code using System; using System.Windows.Forms; using System.Drawing; class MainForm : Form { //...... protected override void OnPaint(PaintEventArgs pe) { Graphics g = pe.Graphics; g.TranslateTransform(100, x); Pen myPen = new Pen( Color.Red, 1 ); g.DrawLine(myPen, 0,0,100,100); } protected override void OnMouseDown(MouseEventArgs e) { x=x+10; Invalidate(); } //...... }