Изобретение относится к автоматике и вычислительной технике и может быть использовано в устройствах машинной графики, в частности в системах синтезирования изображений.
На фиг. 1 представлена структурная схема устройства; на фиг. 2 блок ограничения координаты; на фиг. 3 показана область ограничения и расположения кадрируемых векторов.
Устройство содержит блок 1 управления, шину 2 данных, первый 3, второй 4 и третий 5 блоки ограничения координаты, первый 6 и второй 7 блоки умножения, первый 8, второй 9, третий 10, четвертый 11 и пятый 12 компараторы, датчик 13 граничного значения координаты Х и буферный блок 14.
Блок 2/3,4/ ограничения координаты содержит регистр 15, четырехвходовой сумматор 16, сдвиговый регистр 17 и двухпортовый регистр 18.
Информационными входами блока являются информационные входы регистра 15, сумматора 16 и регистра 18, стробирующими входами стробирующие входы регистров 15, 16 и 18, управляющим входом управляющий вход сумматора 16, сдвиговым входом сдвиговый вход регистра 17. Выходами блока являются выходы регистра 18.
Устройство работает следующим образом.
Изображение формируется в пространстве, превышающем область ограничения. Количество разрядов, используемых при построении исходного изображения, ограничивается потребностями практики и разрядностью применяемых в устройстве элементов (сумматоров, регистров). С целью уменьшения количества операций при кадрировании процесс ограничения координаты ограничивается при ее попадании в определенную зону, внутренняя граница которой совпадает с границей области ограничения, а внешняя превышает ее на определенную величину, обычно на один разряд. Окончательное ограничение элементов изображения реальными границами экрана осуществляется в последующих устройствах, например в генераторе изображения.
При трехмерном кадрировании область ограничения определяется следующим образом:
1. По координате Х положительными значениями Х при отображении объектов, расположенных перед индикатором, или отрицательными значениями Х, если отображаются объекты, расположенные сзади индикатора.
2. По координатам Y и Z значениями Y и Z, пропорциональными текущим значениям Х, т.е. Y,Z nX.
На фиг. 3 показаны область ограничения и зоны окончания процесса ограничения координат X и Z в плоскости Z. Кадрирование в этой плоскости заканчивается при попадании точки в зону, определяемую границами X O; X Xmin;Z| nXj Z| mX. Здесь m>n обычно на один разряд. Область ограничения может быть несимметричной. В этом случае значения n и m для положительных и отрицательных Z неодинаковы. Область ограничения и зона окончания процесса ограничения в плоскости Y имеют аналогичный вид. Если область ограничения сплюснута по одной из координат Y или Z, то значения n и m для этих координат будут неодинаковыми. Трехмерное кадрирование заканчивается при попадании точки в зоны окончания процесса ограничения, расположенные в обеих плоскостях Y и Z. Следует иметь в виду, что размеры элементов изображения на экране индикатора определяется отношениями Y/X и Z/X, поэтому величина n непосредственно определяет угол зрения для данного индикатора, в частности при n 1 он равен 90о.
Координаты, например, начальной точки Xн, Yн, Zн отдельных векторов из шины 2 данных вводятся последовательно: вначале координата X в блок 4, затем координаты Y и Z в блоки 3 и 5. Здесь они запоминаются и с выходов блоков поступают на компараторы 8-12. Если сигналы на выходах компараторов удовлетворяют соотношениям
X> 0;Y| < mX;Z| < mX (1), то точка находится внутри области, ограниченной границами зоны окончания процесса ограничения. Координаты этой точки стробируются в буферном блоке 14 и могут быть выданы в следующее устройство системы отображения. Если соотношения (1) неудовлетворяются, то координаты этой точки необходимо ограничить.
После ввода координат Xн, Yн, Zн в те же блоки 4, 3, 5 из шины 2 данных вводятся координаты конца вектора Хк, Yк, Zк, которые запоминаются и проверяются на соответствие условиям (1). После чего осуществляется вывод координат второй точки в буферный блок 14 непосредственно или после ограничения и переход к ограничению следующего вектора.
Блок ограничения работает следующим образом.
При поступлении из шины 2 координаты начальной точки вектора она запоминается на регистре 18. В следующем такте осуществляется ее проверка на соответствие условиям (1) и принимается решение на ограничение. После этого на регистр 15 принимается координата конца вектора, в регистр 17 с выхода сумматора 16 со сдвигом вправо на один разряд заносится их разность. Таким образом, в регистрах 17 блоков 3, 4, 5 будут записаны
Δ X/2 Xк Хн;
Δ Y/2 Yк Yн; (2)
Δ Z/2 Zк Zн.
Процесс ограничения, например, коoрдинаты точки начала вектора реализуется по формулам:
Xi1=Xн±Δ X/2;
Yi1=Yн±Δ Y/2; (3)
Zi1= Zн±Δ Z/2, где Xi1,Yi1,Zi1 координаты точки после первого цикла ограничения.
Полученные в результате суммирования по формулам (3) ограниченные координаты Xi1,Yi1,Zi1 проверяются на соответствие условиям (1), после чего либо они предаются в буферный блок 14, либо проводится второй цикл ограничения. В этом случае содержимое регистра 17 сдвигается на один разряд вправо и образуются новые суммы:
Xi2=Xi1±Δ X/4;
Yi2=Yi1±Δ Y/4;
Zi2=Zi1±Δ Z/4.
Новые значения координат проверяются на соответствие условиям(1). Процесс продолжается до удовлетворения этих условий. После этого во всех блоках 3, 4, 5 из регистра 15 через сумматор 16 и в третий регистр 18 переписываются координаты точки конца вектора и начинается процесс их ограничения, по окончании которого осуществляется переход к следующему вектору.
На фиг. 3 приведен пример ограничения в плоскости одной грани объекта, состоящей из четырех векторов a, b, c, d. Конец и начало вектора находится внутри области ограничения, поэтому их координаты сразу же передаются в буферный блок 14. Конец второго вектора b лежит вне зоны окончания процесса ограничения, поэтому подлежит ограничению. После первого цикла оказалось, что ограниченная точка
Xk2'=Xk2+Δ X/2;
Zk2'= Zk2-Δ Z/2; попала внутрь области ограничения, следовательно, необходимо сделать шаг назад. После второго цикла точка
Xk2''=Xk2'-Δ X/4;
Zk2''=Zk2'+Δ Z/4 оказалась внутри зоны и процесс ограничения закончился.
Конец и начало третьего вектора с находятся вне области ограничения, поэтому этот вектор исключается из рассмотрения. Начальная точка следующего вектора d находится вне зоны, поэтому она ограничивается. В этом случае ограничение потребовало проведения трех циклов. Аналогичные действия проводятся и в плоскости Y до выполнения условий (1). Статистика показывает, что ограничение координат одной точки весьма редко требует более трех циклов.
В случае представления чисел в прямых кодах знак в формулах (3) будет минусом при выполнении условий: Z| > mX и знак Zисх знак Zi; Y| > mZ и знак Yисх знак Yi; (4)
X ≥ Xmin и знак Х +.
Если используются числа в дополнительных кодах, условия (4) будут иметь другой вид.
Блок 1 управления может быть реализован в виде блока микропрограммного управления, вырабатывающего стробирующие импульсы для записи данных в блоки ограничения и в буферный блок 14, импульсы сдвига регистров 17 и сигналы управления сумматорами 16 в соответствии с выражениями (1), (2), (3) и (4).
название | год | авторы | номер документа |
---|---|---|---|
УСТРОЙСТВО ДЛЯ ОТОБРАЖЕНИЯ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ НА ЭКРАНЕ ЭЛЕКТРОННО-ЛУЧЕВОЙ ТРУБКИ | 1994 |
|
RU2043662C1 |
Устройство для отображения векторов, окружностей и дуг на экране электронно-лучевой трубки | 1981 |
|
SU1032475A1 |
Устройство для отображения графической информации на экране телевизионного индикатора | 1989 |
|
SU1661825A1 |
УСТРОЙСТВО ДЛЯ ОТОБРАЖЕНИЯ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ НА ЭКРАНЕ ЭЛЕКТРОННО-ЛУЧЕВОЙ ТРУБКИ | 1992 |
|
RU2049362C1 |
Устройство для отображения графической информации на экране телевизионного индикатора | 1988 |
|
SU1575231A1 |
Устройство для отображения информации | 1987 |
|
SU1513439A1 |
Устройство для распознавания прямого края объекта | 1988 |
|
SU1587552A1 |
Устройство для преобразования координат | 1983 |
|
SU1141405A1 |
Формирователь напряжения | 1982 |
|
SU1058035A1 |
Устройство для отображения информации на экране телевизионного индикатора | 1986 |
|
SU1695372A1 |
Изобретение относится к автоматике и вычислительной технике и может быть использовано в устройствах машинной графики, в частности в системах синтезирования изображений. Цель изобретения - повышение быстродействия. Сущность изобретения: устройство содержит блок управления 1, блоки ограничения координаты 3 - 5, блоки умножения 6, 7, компараторы 8 - 12, датчик ограничения значения координаты X 13, буферный блок 14. Устройство обеспечивает ограничение трех координат одной узловой точки изображения в среднем за 16 тактов работы, что вдвое превышает потребную производительность вычислений для устройств, работающих в реальном масштабе времени. 1 з. п. ф-лы, 3 ил.
Ньюман У | |||
и Спрул Р | |||
Основы интерактивной машинной графики | |||
М.: "Мир", 1976, с.141-145. |
Авторы
Даты
1996-02-20—Публикация
1994-04-18—Подача