RU2054713C1 - Устройство для кадрирования трехмерных изображений при отображении графической информации - Google Patents
Устройство для кадрирования трехмерных изображений при отображении графической информации Download PDFInfo
- Publication number
- RU2054713C1 RU2054713C1 RU94013401A RU94013401A RU2054713C1 RU 2054713 C1 RU2054713 C1 RU 2054713C1 RU 94013401 A RU94013401 A RU 94013401A RU 94013401 A RU94013401 A RU 94013401A RU 2054713 C1 RU2054713 C1 RU 2054713C1
- Authority
- RU
- Russia
- Prior art keywords
- output
- input
- coordinate
- inputs
- information inputs
- Prior art date
Links
Images
Landscapes
- Image Generation (AREA)
Abstract
Изобретение относится к автоматике и вычислительной технике и может быть использовано в устройствах машинной графики, в частности в системах синтезирования изображений. Цель изобретения - повышение быстродействия. Сущность изобретения: устройство содержит блок управления 1, блоки ограничения координаты 3 - 5, блоки умножения 6, 7, компараторы 8 - 12, датчик ограничения значения координаты X 13, буферный блок 14. Устройство обеспечивает ограничение трех координат одной узловой точки изображения в среднем за 16 тактов работы, что вдвое превышает потребную производительность вычислений для устройств, работающих в реальном масштабе времени. 1 з. п. ф-лы, 3 ил.
Description
Изобретение относится к автоматике и вычислительной технике и может быть использовано в устройствах машинной графики, в частности в системах синтезирования изображений.
На фиг. 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. По координате Х положительными значениями Х при отображении объектов, расположенных перед индикатором, или отрицательными значениями Х, если отображаются объекты, расположенные сзади индикатора.
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> 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н.
Δ 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 координаты точки после первого цикла ограничения.
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.
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 оказалась внутри зоны и процесс ограничения закончился.
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 и знак Х +.
X ≥ Xmin и знак Х +.
Если используются числа в дополнительных кодах, условия (4) будут иметь другой вид.
Блок 1 управления может быть реализован в виде блока микропрограммного управления, вырабатывающего стробирующие импульсы для записи данных в блоки ограничения и в буферный блок 14, импульсы сдвига регистров 17 и сигналы управления сумматорами 16 в соответствии с выражениями (1), (2), (3) и (4).
Claims (2)
1. УСТРОЙСТВО ДЛЯ КАДРИРОВАНИЯ ТРЕХМЕРНЫХ ИЗОБРАЖЕНИЙ ПРИ ОТОБРАЖЕНИИ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ, содержащее блок управления, буферный блок, шину данных, вход-выход блока управления является входом-выходом устройства, первый выход блока управления соединен со стробирующим входом буферного блока, выход которого является выходом устройства, отличающееся тем, что устройство содержит с первого по третий блоки ограничения координаты, первый и второй блоки умножения, с первого по пятый компараторы, датчик граничного значения координаты X, информационные входы блоков ограничения координат соединены с шиной данных, стробирующие входы первого, второго и третьего блоков ограничения координаты соединены с выходами соответственно первой, второй и третьей групп блока управления, управляющие и сдвиговые входы первого, второго и третьего блоков ограничения координаты соединены соответственно с вторым и третьим выходами блока управления, выход первого блока ограничения координат подключен к первым информационным входам первого и третьего компараторов, буферного блока и блока управления, выход второго блока ограничения координаты подключен к вторым информационным входам буферного блока и блока управления, первому информационному входу пятого компаратора и информационным входам первого и второго блоков умножения, выход третьего блока ограничения координаты подключен к первым информационным входам второго и четвертого компараторов, третьим информационным входам буферного блока и блока управления, выход первого блока умножения подключен к вторым информационным входам первого и второго компараторов, выход второго блока умножения подключен к вторым информационным входам третьего и четвертого компараторов, второй информационный вход пятого компаратора соединен с выходом датчика граничного значения координаты X, выходы первого, второго, третьего, четвертого и пятого компараторов подключены к четвертому, пятому, шестому, седьмому и восьмому информационным входам блока управления соответственно.
2. Устройство по п.1, отличающееся тем, что блок ограничения координаты содержит сумматор, первый, второй и третий регистры, информационными входами блока являются первые информационные входы сумматора и третьего регистра и информационные входы первого регистра, стробирующими входами - стробирующие входы первого, второго и третьего регистров, сдвиговым входом - вход сдвига второго регистра, управляющим входом - управляющий вход сумматора, второй, третий и четвертый информационные входы которого соединены соответственно с выходами первого, второго и третьего регистров, выход сумматора подключен к информационному входу второго регистра и второму информационному входу третьего регистра, выход которого является выходом блока.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU94013401A RU2054713C1 (ru) | 1994-04-18 | 1994-04-18 | Устройство для кадрирования трехмерных изображений при отображении графической информации |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU94013401A RU2054713C1 (ru) | 1994-04-18 | 1994-04-18 | Устройство для кадрирования трехмерных изображений при отображении графической информации |
Publications (2)
Publication Number | Publication Date |
---|---|
RU94013401A RU94013401A (ru) | 1996-01-27 |
RU2054713C1 true RU2054713C1 (ru) | 1996-02-20 |
Family
ID=20154787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU94013401A RU2054713C1 (ru) | 1994-04-18 | 1994-04-18 | Устройство для кадрирования трехмерных изображений при отображении графической информации |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2054713C1 (ru) |
-
1994
- 1994-04-18 RU RU94013401A patent/RU2054713C1/ru active
Non-Patent Citations (1)
Title |
---|
Ньюман У. и Спрул Р. Основы интерактивной машинной графики. М.: "Мир", 1976, с.141-145. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5638503A (en) | Method and apparatus for generating bitmaps from outlines containing bezier curves | |
JPH04246790A (ja) | ベクトル/円錐曲線/エリアフィルプリミティブジェネレータ | |
US5402533A (en) | Method and apparatus for approximating a signed value between two endpoint values in a three-dimensional image rendering device | |
US5283866A (en) | Image processing system | |
US5929872A (en) | Method and apparatus for multiple compositing of source data in a graphics display processor | |
RU2054713C1 (ru) | Устройство для кадрирования трехмерных изображений при отображении графической информации | |
EP0327001B1 (en) | Pattern data generating system | |
US4393453A (en) | Region information processing system | |
US6784895B1 (en) | Programmable multiple texture combine circuit for a graphics processing system and method for use thereof | |
US5926181A (en) | Method and apparatus for identifying and eliminating three-dimensional objects visually obstructed from a planar surface | |
JPH0695341B2 (ja) | 隠れ面処理装置 | |
JPS6114514B2 (ru) | ||
SU1037299A1 (ru) | Устройство дл формировани графических изображений | |
JP3090644B2 (ja) | 画像データ処理装置及びそれを用いたシステム | |
RU2058600C1 (ru) | Специализированный вычислитель для устройств машинной графики | |
JPH0468666B2 (ru) | ||
JPH06119437A (ja) | 図形描画装置 | |
SU1068981A1 (ru) | Устройство дл отображени информации на экране электронно-лучевой трубки | |
Bang et al. | ESEU-a hardware architecture for fast image generation | |
SU1259217A1 (ru) | Цифровой интерпол тор | |
JPS63118991A (ja) | 隠れ面処理装置 | |
JPS6045287A (ja) | クリツピング処理装置 | |
SU1269152A1 (ru) | Двумерный линейный интерпол тор | |
RU2043662C1 (ru) | Устройство для отображения графической информации на экране электронно-лучевой трубки | |
SU1015411A1 (ru) | Устройство дл сокращени избыточности информации |