Пользователю системы интерактивной графики

Здесь после определения первой системы координат будет начерчена PICTURE A, PICTURE В будет начерчена во второй системе координат. Пользователь увидит на дисплее совмещенное изображение двух частей в разных системах координат. Прикладная программа должна была бы запомнить соответствующие изображениям А и В окна и переопределять их, когда это необходимо. Однако решить эту задачу гораздо труднее, поскольку оба изображения выведены на один экран и сразу не ясно, относится данная точка к изображению А или же к изображению В. Поэтому GKS не может осуществить однозначное обратное преобразование координат точки в МК пользователя. Проблема была решена с помощью присваивания разным системам МК различных имен (на самом деле — номеров) и передачи этих имен в GKS. Следовательно, прикладная программа и GKS могут обмениваться информацией о том, какое отображение используется в каждом конкретном случае. Приведенную выше программу можно было бы представить в следующем виде: DEF WINDOW I. XMIN. XMAX. YMIN. YMAX) DEF WINDOW(2.X2MIN. X2MAX. Y2MIN. Y2MAX| SELECT(I) DRAW PICTURE A SELECT (21 DRAW PICTURE В Заметим, что благодаря использованию указанного метода прикладной программист сможет заранее перед запуском программы задать все системы координат, которые могут потребоваться, а конкретное преобразование будет выбираться по мере необходимости. При использовании более традиционного способа описания преобразования оказываются «разбросанными» по всей программе. Это является еще одним примером того, как сильно методы построения программной машины влияют на структуру программ, разрабатываемых на ее основе.

Releated Post

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.