Переход из экранной системы координат в декартову.

Revision ru2, by dobrishk, 2024-12-10 18:08:28

Во многих задачах требуется работать с системами координат. Чаще всего мы привыкли к декартовой системе координат, где

  • ось x направлена вправо,

  • ось y — вверх.

  • начало координат находится по центру.

Однако в компьютерной графике и задачах на обработку данных на экране используется иная система:

  • x направлена вниз,

  • y направлена вправо,

  • начало координат находится в верхнем левом углу.

Такой подход обусловлен особенностями работы экранов и двухмерных массивов. Иногда задачи требуют преобразовать эту систему в декартовую, где центр экрана становится началом координат. Предположим, у нас есть экран с высотой n и шириной m пикселей. Центр экрана находится в точке (n / 2, m / 2).

Для перехода из экранных координат (x0,y0) в декартовые (x,y) используется следующая формула:

x = y0 — m / 2
y = — (x0 — n / 2)

Важно учитывать, что деление в данном случае целочисленное.

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
ru4 Russian dobrishk 2024-12-10 18:26:15 2
ru3 Russian dobrishk 2024-12-10 18:17:55 55
en2 English dobrishk 2024-12-10 18:17:35 55 Tiny change: 'is used:\n$x=y0-m/' -> 'is used:\n\n$x=y0-m/'
en1 English dobrishk 2024-12-10 18:11:50 1198 Initial revision for English translation
ru2 Russian dobrishk 2024-12-10 18:08:28 52
ru1 Russian dobrishk 2024-12-10 18:07:53 1151 Первая редакция (опубликовано)