(54) ГЕНЕРАТОР ДУГ ОКРУЖНОСТЕЙ
первые входы которых соединены с первыми выходами блока управления, блок сравнения, первый и второй входы которого подключены к первому и второму выходам первого регистра, второй коммутатор, входы которого соединены с третьим выходом первого регистра и первым выходом сумматора, второй выход которого подключен к первому входу блока управления, генератор импульсов, введены второй, третий и четвертый регистры и третий, четвертый коммутаторы, выходы которых подключены ко входам третьего и четвертого регистров, входы третьего коммутатора соединены с выходом первого счетчика и выходом второго счетчика, подключенным к первому входу четвертого коммутатора, другие входы которого соединены с выходом второго регистра и первым выходом сумматора, входы которого подключены к выходам третьего и четвертого регистров, первые входы первого и второго счетчиков соединены с выходами первого и второго когФ утаторов, а. вторые входы со вторыми выходами блока управления, вторые входы третьего и четвертого счетчиков подключены к первым выходам первого регистра, третий и четвертый выходы которого соединены со вторым и третьим входами первого коммутатора, выход которого подключен ко входу второго регистра, выход генератора импульсов соединен со вт)рым входом блока управления, третий выход которого подключен к третьему входу блока сравнения, четвертый и пятый входы которого соединены с выходами третьего и четвертого счетчиков.
На чертеже схематически представлен генератор дуг окружностей.
Он содержит первый счетчик 1, второй счетчик 2, сумматор 3, генератор 4 импульсов, третий счетчик 5, четвертый счетчик б, первый регистр 7, блок 8 управления, блок 9 сравнения, первый и второй коммутаторы 10 и 11, второй регистр 12, третий коммутатор 13, третий регистр 14, четвертый коммутатор 15, четвертый регистр 16.
Первый счетчик 1 и второй счетчик 2 предназначены для получения чисел для проведения необходимых опеграций на. сумматоре 3 в процессе построения окружности. Данные числа получаются путем изменения состояния счетчиков 1 и 2 на единицу или двойку. Генератор 4 импульсов вырабатывает Последовательность тактовых импульсов, по которым производится выполнение арифметических операций. Первый регистр 7 выполняет функцию хранения, характеризующей параметры дуги окружности. Блок 8 управления предназначен для управления режима-.
ми работы счетчиков 5 и 6. Блок 9 сравнения производит сравнение текущих значений и абсолютных значений кодов. Коммутаторы 10. и 15 выполняют логическую функцию 2 И - 3 ИЛИ,
а коммутаторы 11 и 13 - функцию 2 И2 ИЛИ.
Устройство работает следующим бразом.
Информация, характеризующая дугу окружности, поступает из источника информации (например, -из ЭЦВМ) и запоминается в регистре 7 на все отображения дуги. Начальные
координаты дуги по осям X и Y переписываются из регистра 7, соответственно в счетчики 5 и 6, с выхода которых данная информация выдается на преобразующую и отклоняющую систему аппаратуры отображения. После
этого в эту же часть регистра 7 записываются коды конечных координат дуги окружности по осям X и Y . Коды проекций радиуса окружности, проведенного из ее центра к начальном координатам дуги (Хд„и Удн), переписываются из регистра 7 через коммутаторы 10 и 11 в счетчики 1 и 2 соответственно. Код проекции Хдц записывается также в регистр 12. Перед
0 процессом построения дуги выполняется вспомогательная операция.
2ЛХд,-Уд„- I)N;.
Результатом выполнения этой операции является полученное число N , необходимое для дальнейших вычислений в процессе отображения дуги, а также во время этой операции может быть Определено наибольшее из чисел
0 Ам АН
Для выполнения этой операции код
Удц поступает на один из входов сумматора 3 через коммутатор 13 и регистр 14, на другой вход сумматора 3 подается .код Уду через коммутатор
5 15 и регистр 16.
Если Хдц «Удм, то код Гдц через коммутатор 10 переписывается в регистр 12.
Если Хдц Удн; то код Удм заноси-0 тся в счетчик 1, в регистре 12 остается код Хду,, после чегополученное ранее на выходе сумматора 3 число N переписывается через коммутатор 11 в счетчик 2.
5 Одновременно выполняется второе вспомогательное действие: измен);;ется состояние счетчика 1 на единицу, где имеется наименьшее из чисел Хд„ или Удм
0 дн(± 2
Если Хдц - Хлн движение при построении производится по часовой стрелке, то выполняется действие
Хл.
Если Хдц Удн, то выполняется де 2 Если же начертание дуги производ ся против часовой стрелки, то, соот ветственно, выполняются следующие деЯстпия: Удн+1 М2. Таким образом, после выполнения перечисленных операций, т.е, перед началом построения дуги, в счетчиках 1 и 2 находятся числа N и N, а в регистре 12 - наибольший из ко дов Хдц или Удм. Указанные ниже операции cyNBUHpo вания, которые выполняются в целях определения порядка следования еди ничных перемещений при построении заданной дуги окружности, производятся по каждому тактовому сигналу, вырабатываемому генератором 4 пульсов . Рассмотрим порядок выполнения о раций суммирования для случая, ког да начало дуги находится в первом квадранте и , т.е. в первой по ловине первого квадранта. Первая о рация суммирования всегда имеет сл дующий вид: P-2N,,±R. Одновременно с выполнением этой операции изменяются состояния счетчиков 1 и 2 на единицу: , Для одновременного выполнения этих двух операций на сумматоре 3 и на счетчиках 1 и 2 числа Р и 2N2 переписываются, соответственно, в регистры 16 и 14. Если полученный результат , то состояние счетчика 5 увеличивайся на единицу, а состояние счетчика 6 остается без изменения. Таки образом,производится единичное пе5)емещение только по оси X. Одновременно выполняются следующие дей.ствия на сумматоре 3: (N2+1)+R2 и на счетчике 2: (. Если же , то состояние, счетчика 5 увеличивается, а состояние счетчика 6 уменьшается на единицу, т.е. производится одновременное перемещение по осям X и Y . Определение моментов выдачи сигналов на сче чики 5 и б производится с помощью блока 8 управления. Одновременно выполняются действия на сумматоре 3 -R + 2()+R, и на счетчике 2:. ()+2. Одновременно с состоянием счетчика 2 изменяется на единицу, независимо от знака результата R, состояние счетчика 1. Последующие действия выполняются аналогичным образом. Данный алгоритм выполнения операций, необходимых для построения дуги, не отличается от алгоритма, описанного в известном устройстве за исключением того, что вторая операция суммирования, которая производится одновременно с основными операциями суммирования с использованием сумматора, в предлагаемом устройстве выполняется с помощью счетчиков 1 и 2, что позволяет несколько увеличить быстродействие устройства. В целях повышения точности построения дуги окружности в алгоритме выполнения операций суммирования вводятся корректирующие операции. При переходе черезэ середину квадранта, когда Хд1р Уд„, т.е. когда N --2 f число Ng уменьшается не на единицу, а на два. Вместо действия R--2(N,-H) (если ) -R,-+2() (если 0) выполняются корректирующие действия -R.+2() (если .) или (N2+ (если RY.O). Если при переходе через середину квадранта число N равно нулю (), то число N уменьшается на единицу, и выполняется одна из корректирующих операций, приведенная ранее. При переходе через ось координат перед выполнением последней операции суммирования состояние счетчика 1 нулевое f из условий выполненных операций), а число, полученное на счетчике 2, равно радиусу окружности (N.Я), которое запоминается в регистре 12. В последующих тактах состояния счетчика N увеличивается, а состояние счетчика N уменьшается. Через одно действие, т.е. после перехода через ось координат, преыдушее состояние счетчика 1, равное 2, записывается в. регистр 14, а в регистр 16 заносится код радиуса окружности из регистра 12, в результате чего вместо действия %--2 Й.Ч выполняется операция , где R - код радиуса окружности. Определение момента окончания процесса построения дуги окружности
производится с помощью блока 9 сравнения при равенстве текущих координат положения луча, которые имеются на счетчикс1Х 5 и 6, и конечных координат дуги, которые хранятся в регистре 7.
Формула изобретения
Генератор дуг окружностей, содержащий первый счетчик, второй счетчик, выход которого подключен к первому входу первого коммутатора, третий и четвертый счетчики, первые входы которых соединены с первыми выходами блока управления, блок сравнения., первый и второй входы которого .подключены к первому и второму вьссодам первого регистра, второй коммутатор входы которого соединены с третьим выходом первого регистра и первым выходом сумматора, второй выход которого подключен к первому входу блока управления, генератор импульсов, отличающийся тем что, с целью повышения точности генератора, в него введены второй, -третий и четвертый регистры и третий четвертый коммутаторы, выходы которых подклгачены ко входам третьего и четвертого регистров, входы третьего коьвлутатора соединены с выходом
первого счетчика и выходом второго счетчика, подключенным к первому входу четвертого коммутатора, другие входы которого соединены с выходом второго регистра и первым выходом сумматора, входы которого подключены к выходам третьего и четвертого регистрбв, первые входы первого и второго счетчиков соединены с выходами первого и второго коммутаторов, а вторые входы - со вторыми выходами блока управления, вторые входы третьего и четвертого счетчиков подключены к первым выходам первого регистра, третий и четвертый выходы которого соединены со вторым и третьим входами первого коммутатора, выход которого подключен ко входу второго регистра, выход генератора импульсов соединен со вторым входом блока управления, третий выход которого подключен к третьему входу блока сравнения, четвертый и. пятый входы которюго соединены с выходами третьего, и четвертого счетчиков.
Источники информации, принятые -во внимание при экспертизе
1.Авторское свидетельство СССР № 397902, кл. G 06 F 3/14, 1973.
2.Авторское свидетельство СССР по заявке № 2534759/18-24,
кл, G 06 К 15/20, 16.05.78 (прототип) .
название | год | авторы | номер документа |
---|---|---|---|
Генератор дуг окружностей | 1977 |
|
SU732935A1 |
Устройство для отображения графической информации на экране электронно-лучевой трубки | 1980 |
|
SU964705A1 |
Устройство для отображения графи-чЕСКОй иНфОРМАции HA эКРАНЕ элЕКТ-POHHO-лучЕВОй ТРубКи | 1978 |
|
SU813494A1 |
Устройство для поворота изображе-Ния СиМВОлОВ | 1979 |
|
SU841030A1 |
Устройство для формирования окружностей | 1977 |
|
SU741294A1 |
Устройство для отображения информацииНА эКРАНЕ ТЕлЕВизиОННОгО пРиЕМНиКА | 1979 |
|
SU842933A1 |
Устройство для двухкоординатного программного управления | 1981 |
|
SU962857A1 |
Устройство для контроля цифровыхОб'ЕКТОВ | 1979 |
|
SU851410A1 |
Устройство для выполнения быстрого преобразования Фурье | 1981 |
|
SU1020833A1 |
Устройство для быстрого преобразования Фурье | 1981 |
|
SU1042029A1 |
Авторы
Даты
1981-02-15—Публикация
1978-12-28—Подача