. 1
которого соединены с первой группой информационных входов пятого коммутатора, выходы третьего коммутатора соединрны с входами второго регистра, выходы которого соединены с второй группой информационных, входов пятого коммутатора, выходы которого соединены с информационными входами накапливакяцего сумматора, выход знака которого соединен с вторым управляющим входом пятого коммутатора и первыми входами с первого по четвертый элемент И, вторые входы которых подключены к выходу генератора тактовых импульсов и первым входам второго и третьего элементов И, третий вход первого и второй вход третьего элементов И соединены с выходом элемента НЕ, второй вход второго и третий
64732вход четвертого элементов И подключены к выходу.триггера знака разнос. ти, выходы-первого и второго элементов И соединены соответственно с первым и вторым входами первого элемента ИЛИ, выход которого соединен со счетным входом реверсивного счет чика абсциссы, выходы третьего и четвертого элементов И соединены соответственно с первым и вторым входами второго элемента Ш111, выход которого соединен со счетным входом реверсивного счетчика ординаты, выхо ды четвертого коммутатора через второй- блок элементов НЕ соеди- : нены с входами сдвигателя , выходы которого соединены- с - установочными входами накапливающего сумматора.
название | год | авторы | номер документа |
---|---|---|---|
Генератор векторов | 1985 |
|
SU1278926A1 |
Цифровой линейный интерполятор | 1991 |
|
SU1807450A1 |
Генератор векторов | 1985 |
|
SU1300541A1 |
Генератор векторов | 1989 |
|
SU1654863A1 |
Генератор векторов | 1988 |
|
SU1596375A2 |
Устройство для отображения векторов на экране электронно-лучевой трубки | 1988 |
|
SU1635171A1 |
Генератор векторов | 1981 |
|
SU1010646A1 |
Генератор векторов | 1986 |
|
SU1361613A1 |
Генератор векторов | 1985 |
|
SU1264232A1 |
Устройство для формирования графических изображений | 1982 |
|
SU1037299A1 |
УСТРОЙСТВО ИНТЕРПОЛЯЩШ ДЛЯ ОТОБРАЖЕНИЯ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ, содержащее генератор тактовых импульсов, вычитакядий счетчик длины вектора, первый коммутатор, блок вычитания, реверсивньш счетчик абсциссы, реверсивный счетчик ординаты, триггер знака-абсциссы, триггер зна.ка ординаты, два регистра и накапливающий сумматор., причем вход знака абсциссы устройства соединен с входом триггера знака, абсциссы, выход которого соединен с управляющим входом реверсивного счетчика абсциссы, выходы которого подключены к выходам абсциссы устройства, вход знака орди:наты устройства соединен с входом триггера знака ординаты, выход кото-, рого соединен с входом управления на, правлением счета реверсивного счетчика ординаты, выходы которого соединены с выходами ординаты устройства, входы абсолютного значения абсциссы и входы абсолютного значения ординаты устройства соединены соответственно с входами уменьшаемого и вычитаемого блока вычитания и первой и второй группами информационных входов первого комм /татора, выходы которого соединены с установочными входами вычитающего счетчика длины вектора, выход обнуления которого соединен с входом останова генератора тактовых импульсов, а счетный вход - с выходом генератора тактовых импульсов, . выход которого подключен ко входу синхронизации накапливающего сумматора, отличающееся тем, что, с целью повышения точности ин-. терполяции, в него введены четьфе элемента И, два элемента ИЛИ, элемент НЕ, два блока элементов НЕ, второй, третий, четвертый и пятый коммутаторы, сдвигатель и триггер знака разности, причем выход знака М .блока вычитания соединен с управляюими входами первого, второго, третьего и четвертого коммутаторов и входом триггера знака разности, выход которого соединен с первым управляющим входом пятого коммутатора и входом элемента НЕ, выходы разности 05 4ik блока вычитания соединены с первой группой информационных входов второ СО 1C го коммутатора и через первый блок элементов НЕ - с первой группой информационных входов третьего коммутатора, входы абсолютного значения абсциссы устройства соединены с второй группой информационных входов третьего коммутатора и первой группой информационных входов четвертого коммутатора, входы абсолютного значения ординаты устройства соединены с второй группой информационных входов второго и четвертого коммутаторов, выходы второго коммутатора соединены с входами первого регистра, выходы
1
Изобретение относится к автоматике и вычислительной технике и может - быть использовано в устройствах отображения и преобразования данных, преимущественно в .устройствах отображения графической информации на матричных экранах, а также на электроннолучевых трубках (ЭЛТ). .
Целью изобретения является повышение точности интерполяции, а .именно улучшение равномерности толщиНы формируемых линий.На фиг.1 приведена структурная схема предлагаемого устройства; на фиг.2 - алгоритм работы устройства.
Устройство содержит накапливакаций сумматор 1, генератор 2 тактовых импульсов, реверсивный счетчик 3 абсциссы, реверсивный счетчик 4 ординаты, триггер 5 знака абсциссы, триггер 6 знака ординаты, блок 7 вычитания, первьй коммутатор 8, второй коммутатор 9, третий коммутатор 10, четвертый коммутатор 11, триггер 12 знака разности, первый регистр 13, второй регистр 14, вычитакщий счетчи 15 длины вектора, первый блок 16 элементов НЕ, второй блок 17 элементов НЕ, сдвигатель 18, первый элемент 19 И, второй элемент И 20, третий элемент 21 И, четвертый эле- , мент 22 И, первый элемент 23 ИЛИ, второй элемент 24ИЛИ, элемент 25 НЕ и пятый коммутатор 26.
Суть используемого метода формирования отрезков прямых линий заключается в пошаговом движении на единицу дискретности экрана вдоль координаты приращение по которой большее, и изменении на единицу или повторении предыдущего значения по другой коорднате в зависимости от того, было ли пересечение с граничнойпрямой, параллельной отображаемой и отстоящей от нее на .пол-единицы дискретности экрана. ,
Если при очередном изменении на единицу координаты с большим приращением пересечения с граничной прямой не произошло, то вычисл€ нная точка отображается на экране, так как она отстоит от идеальной пря:мой не более чем на пол-единицы дискретности экрана, а если при очередном изменении координаты с большим приращением произошло пересечение с гра.ничной прямой, то производится изменение на единицу и координаты с меньшим приращением, и точка с единичными приращениями по обеим координатам отображается на экране, В процессе так го построения каждой координате вдо большего приращения отрезка будет с ответствовать одна точка, т.е. вект будет иметь .равномерную толщину. При описании работы устрр-йства приняты следующие обозначения: X,Y -г- координаты текущей точки вектора; 4X,4Y - приращения отрезка по ося X и Y соответственно; X/- . . -/AY/ - разность модулей прира щений по осйм X и Y, вычисляемая блоком вычитания;;R ,R2 - содержимое первого и вто рого регистров соответст венно} S - содержимое накапливающег сумматора; GI ,Сг С - содержимое вычитающего счетчика длины вектора, реверсивного счетчика абс циссы, реверсивного счетчика ординаты соответственно. Алгоритм построения отрезка прямо линии, заданный приращениями вдоль координат X и Y, приведен на фиг.2. Рассмотрим построение отрезка пря мой линии, начинающейся в начале координат (, ), расположенной в 1 октанте координатной плоскости ( AX-AY). Уравнение отображаемой прямой запишем в виде AY X - dX-Y 0. Уравнение граничной прямой параллельной отображаемой и отстоящей на пол-единицы дискретности экрана- ниже ее выглядиt следукадим. образом: AYX-AXY- у О . . Рассмотрим вьфажение S AYX-iXY- При добавлении .единицы к больщей из ординат (X) величина S сместится в положительную сторону на величину AY, а при одновременном увеличении на единицу обеих .координат величина S сместится в отрицательную сторону так как AY-&X 0. Пересечение с граничной прямой соответствует . , Формируемые на экране точки должны стремитвся к граничной прямой сверху, не переходя за нее. Для этого на каждом шаге добавляют единицу к большей из координат (X) и соответственно добавляют AY к текущему значению величины S до тех пор., пока , но как только величина .5 станет положительной, добавляют единицу и- к меньшей координате (Y) , а величину S при этом изменяют на величину AY-flX. В начальный момент при , ХА получим -г-. Эта величина засылается в накапливающий Сумматор перед началом построения. Количество шагов вычисления и соответственно точек на отрезке равно величине большего из приращений (ДХ). Эта величина засылается в вычитающий счетчик длины вектора перед началом построения.. Устройство работает следующим образом... В исходном состоянии в вычитающем счетчике }5 длины вектора хранится отрицательное число, свидетельствующее об окончании построения предьщущего вектора. Генератор 2 тактовых импульсов не вьщает тактовых импульсов. В реверсивном -счетчике абсциссы 3.и в реверсивном счетчике 4 ординаты хранятся координаты начала вектора. По входам .знака абсциссы и входам знака ординаты в триггер 5 знака абсциссы и в триггер 6 знака ординаты записываются знаки приращений Л X и iiY соответственно, а модули этих приращений по-входам абсолютного значения абсциссы и входам абсолютного значения ординаты поступают на входы блока 7 вычитания и первого 8, второго 9, третьего 10 и четвертого 11 коммутаторов. Знак разности В /ДХ//дY/, определяемый блоком вычитания 7, запоминается в триггере знака разности 12 и управляет засыпкой начальных параметров в первый 13 и второй 14 регистры, в вычитающий счетчик длины вектора 15 и. в накапливающий сумматор 1 через первый 8, второй 9, третий 10, четвертый 11 коммутаторы, первый блок 16 элементов НЕ, второй блок 17 элементов НЕ и сдвигатель 18. При этом в вычитакхций счетчик 15 длины вектора записывается модуль большего из приращений /&.Х/ или /uY/; в первый регистр 13 записывается Y, если .приращение по оси X большее, и /&X/-/&Y/, если приращение по оси X меньше или равно приращению по оси Y во второй регистр 14 записывается /AY/-// iX/ или ЬХ в зависимости от знака разности /u.X/-/iY/; в накапливаюдий сумматор 1 первоначально засы лается число, равное половине большего из приращений /ЛХ/ или , (взятых со знаком минус-. После засылки начальных параметров начинается построение отрезка прямой линии. По- ложительный знак числа в вычитающем счетчике 15 длины вектора разрешает вьщачу тактовых импульсов генератором тактовых импульсов 2. В каждом цикле от содержимого вычитающего счетчика 15 длины вектора вычитается единица и построение отрезка .продолжается до тех пор, пока содержимое счетчика не станет отрицательным. В каждом цикле координата с больпшм приращением изменяется на единицу. . ;. Это выполняется следующим образом Если В О, то триггер знака разности 12установлен в 1 и тактовые импульсы с блока 2 через второй элемент И 20 и первый элемент ИЛИ 23 по ступают на счетный вход реверсивного счетчика абсциссы 3. Если &Х70, то триггер зрака абсциссы 5 переключает реверсивный счетчик абсциссы 3 на . суммирование, если , то счетчик переключается на вычитание. Если то триггер знака разности 12 сброшен в О и через элемент НЕ 25 на третий элемент И 21 поступает разрешающий сигнал для прол оадения тактовых импульсов через второй элементИЛИ 24 на счетный вход реверсивного счетчика ординаты 4. Изменение координаты с меньпшм ; приращением производится только в I . , том случае, если содерж;1мре накапливающего, сумматора 1 , При этом, если , то тактовые импульсы с блока 2 через четвертый. элемент И 22 и второй элемент ИЛИ 24 поступают на счетный вход реверсивного счетчика ординаты 4. Если ., то тактовые импульсы с блока 2 через первый элемент 19 И и первый элемент 23 ИЛИ поступают на счетный вход реверсивного счетчика абсциссы 3. Цикл заканчивается вычислением нового значения содержимого накапли. вакщего сумматора 1 и записью точки с координатами X и Y, хранящимися в реверсивном счетчике абсциссы 3 и реверсивном сче.тчике ординаты 4 соответственно. Координаты точки передаются в индикатор через вьисоды .абсциссы и выходы ординаты устройства. Новое значение содерясимого накапливакицего сумматора 1 вычисляется следующим образом. Если текущее значение , то к прерыдуп1ему содержимому сумматор.а 1 прибавляется абсолютная величина меньшего из приращений координат, а если , то к предьвдущему содержимому сумматора прибавляется разность абсолютных ве-личин меньшего и большего приращений координат. (Эта величина меньше или равна нулю). Величины меньшего из приращений координат отрезка и азность между меньшим.и большим приащениями хранятся в первом 13 и втоом 14 регистрах и поступают на вход накапливакнцего сумматора 1 через пяый коммутатор 26, управляемый от триггера 12 зна.ка разнос;ги и накаплиающего сумматора 1. Применение предлагаемого устройста позволяет строить отрезки прямых иний с абсолютным отклонением от деальной прямой, не превышающим полдиницы дискретности экрана, и равомерной толщиной, а следовательно яркостью вдоль отрезка.
(лУ1 f fT f f I iiy
LJ
/
и IL
JU.
(г/г.;
Отоезок да постро- . . ен
nniflHOHOt/CfffiHt/rnffflOffeTpOBCi kYl/ А//-/4У/
Фиг. 2 Запись movKu с координатами x-Cz; У-CS
ЦИФРОВОЙ ЛИНЕЙНЫЙ ИНТЕРПОЛЯТОР | 0 |
|
SU395839A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
У.Ньюмен и Р, Спрулл | |||
Основы интерактивной машинной графики | |||
М : Мир, 1976, с | |||
Разборное приспособление для накатки на рельсы сошедших с них колес подвижного состава | 1920 |
|
SU65A1 |
Авторы
Даты
1985-06-30—Публикация
1984-01-13—Подача