Устройство для формирования окружностей Советский патент 1984 года по МПК G09G1/08 

Описание патента на изобретение SU1096688A2

с

Изобретение относится к устройствам вычислительной техники, используемым при проектировании устройств отображения.

По основному авт. св. № 991486 известно устройство для формирования окружности, которое содержит блок управления, регистр, выход которого соединен с одним входом блока деления, другой вход которого соединен с одним из выходов блока управления, другим йыходом и одним из входов подключенного к счетчику адреса, третий выход блока управления соединен с одним из входов блока регистров второй вход которого подключен к второму выходу счетчика адреса, третий вход соединен с выходом блока, деления, а выход подключен к одному из входов мультиплексора, выход которого соединен с одним из входов сумматора, другим входом подключенного к четвертому выходу блока управления а третьим входом к соответствунщему выходу анализатора знака координат, другой выход которого и один из входов соединены с блоком управления, соответствующим выходом подключенным к входу блока постоянной памяти, выход которого соединен с вторым входом мультиплексора, третьим входом подключенного к выходу регистра, второй вход блока постоянной памяти подключен к выходу счетчика узлов интерполяции, соединенного с анализатором знака координат, третий вход блока постоянной памяти подключен к выходу триггера, соединенного с блоком управления, соответствующим выходом подключенным к входу триггера, вьпсад которого соединен с входом линейного интерполятора, другим входом подключенного к выходу сумматора, а третьим входом и одним из выходов - к блоку управления l.

Недостатком устройства является низкое быстродействие при интерполировании окружности радиусом, меньшим К,, обусловленная тем, что аппроксимация дуги окружности производится путем построения определенного количества хорд для окружности с максимальным радиусом, вследствие чего устройство при интерполировании окружности с радиусом, меньшим максимального, аппроксимирующейся меньшим количеством хдрд, производит вычисление координат всех интерполяционных узлов и интерполяцию всех

хорд, снижая этим производительность устройства.

Цель изобретения - повышение быстродействия.

Поставленная.цель достигается тем, что в устройство введен второй блок постоянной памяти, первый вход которого соединен с выходом регистра, второй вход - с выходом счетчика узлов интерполяции, а выход подключен к третьему входу первого блока постоянной памяти и к второму входу анализатора знака координат.

Введение второго блока постоянной

памяти позволяет оптимально, в зависимости от радиуса окружности, производить аппроксимацию дуги окружности, снижая при этом время интерполирования окружности.

На фиг. 1 представлена блок-схема предлагаемого устройства; на фиг.2 кусочно-линейная аппроксимация дуг окружностей различного радиуса; на фиг. 3 - определение проекции радиуса на ось абсцисс X; на фиг. 4 - элемент окружности в дискретном пространстве; на фиг. 5 - таблица значений координат точек прямых, аппроксимирующих окружность для R

Ь 1 мм.

Устройство для формирования окружностей содержит блок 1 управления, регистр 2, выход которого соединен с одним входом блока 3 деления, другой вход которого соединен с одним из выходов блока 1 управления, другим выходом и одним из входов подключенного к счетчику 4, третий выход блока 1 управления соединен с

ОДНИМ из входов блока 5 регистров, второй вход которого подключен к второму выходу счетчика 4, третий вход соединен с выходом блока 3 деления, а выход подключен к одному из входов

мультиплексора 6, выход которого соединен с одним из входов блока 7 суммирования, другим входом подключенного к четвертому выходу блока 1 управления, а третьим входом - к соответствующему выходу анализатора 8 знака координат, другой выход которого и один из входов соединены с блоком 1 управления, соответствующим выходом подключенным к входу блока 9 постоянвой памяти, выход которого соединен с вторым входом мультиплексора 6, третьим входом подключенного к выходу регистра 2, второй вход блока 9 постоянной памяти подключен к 1 выходу блока 10 постоянной памяти, вход которого соединен с выходом счетчика 11 узлов интерполяции, входом подключенного к третьему выходу анализатора 8 знака координат, вторым входом соединенного с выходом блока 10 постоянной памяти, второй вход которого подаслючен к выходу регистра 2, третий вход блока 9 постоянной памяти подключен к выходу триг гера 12, соединенного с блоком 1 управления, соответствующим выходом подключенньм к входу триггера 13, выход которого соединен с входом линейного интерполятора 14, другим вхо дом подключенного к выходу блока 7 суммирования, а третьим входом и одним из выходов - к блоку 1 управления. Блок 1 управления предназначен для управления работой блоков уст.ройства и выполняет следующие функции: устанавливает в исходное состояние счетчик 4, анализатор. 8 знака координат, триггеры 12 и 13, управляет работой блока 3 деления, счетчика 4 адреса и блока 5 регистров; управляет работой блока 7 суммирования , триггеров 12 и 13, анализатора 8 знака координат, линейного интерполятора 14; формирует код слагаемого алгебраической суммы для блока 9 постоянной памяти. Регистр 2 предназначен для хранения сдвинутых значений кода радиуса. Блок 3 деления предназначен для деления кода радиуса окружности на 2 4, 8, 16 и т.д. в зависимости от тре буемой точности построения окружности Счетчик 4 предназначен для формирования кода адреса соответствующего р гистра блока 5 регистров. Блок 5 регистров предназначен для хранения сдвинутых значений кода радиуса. Мультиплексор 6 обеспечивает передачу информахщи с адресуемого входа на выход. Блок 7 суммирования предназначен для сложения величин, необходимых для определения кодов проекций радиуса на оси координат. Анализатор 8 знака координат упра ляет работой счетчика 11 узлов интер поляции, при переходе из одного квадранта в другой корректирует знак и результат блока 7 суммирования, выг55 дает в блок 1 управления сигнал, соответствующий координате первого удла интерполяции в квадранте, и сиг88соответствующий координате последнего узла интерполяции в четвертом квадранте. Блок 9 постоянной памяти предназначен для формирования адреса слагаемых алгебраических сумм, соответствующих проекции радиуса на оси координат для узлов интерполяции. Блок 10 постоянной памяти формирует код узла интерполяции в зависимости от значения кода радиуса и кода счетчика 11. При равенстве значения кода узла интерполяции 0-му и ц-му узлам интерполяции вьфабатывает соответствукнцие сигналы в анализатор 8 знака координат. Счетчик 11 узлов интерполяции предназначен для подсчета единичных импульсов как в прямому так и в обратном направлении. Триггер 12 осуществляет выбор абсциссы или ординаты вычисляемой координаты. В исходном состоянии производит выбор абсциссы, изменяет состояние на противоположное после вычисления абсциссы (ординаты) и занесения ее а линейный интерполятор 14. Триггер 13 предназначен для управления записью в линейный интерполятор 14 координат начала и конца отрезка. В исходном состоянии управляет записью координаты начала отрезка, изменяет состояние на противолоположное после вычисления ординаты узла интерполяции и занесения ее значения в линейный интерполятор 14. Линейный интерполятор 14 представ„ „ yerpu«u-r«u „„..,.и..„ляет собой устройство для интерполирования прямой в заданном дискретном пространстве, заданной координатами вечных точек отрезка. Предлагаемое устройство работает следующим образом. Аппроксимация дуги окружности производится путем построения определённого количества отрезков прямых, соединяющих узловые точки О, Г, 2, ..., П (фиг. 2). Число отрезков прямых m, аппроксимирующих окружность, определяется в зависимости от требуемой точности построения окружности. Построение осуществляется для максимальной для данной аппаратуры окружности радиуса R . Координаты узловых точек определяются путем вычисления абсцисс: где Xft 1г;сое«(„; 06п угол, образованный радиусом окружности и осью абсцисс (ot, 1п) ,, 0 1.2.4,8,.. и определения точного значения ординат Y, , соответствующих абсциссам Х по формуле ,,, где Oi К„б1 - коэффициент, порядок которого зависит от значения радиуса и точности нахождения ординаты 8 (Ю для заданного дискретного пространства (фиг. 3 и 4). В качестве приближения к определяются значения 4n. Rtn где „ - коэффициент, путем разложения в ряд V Т - - , где{„еРп ;D 1,2,4,8 При этом должно соблюдаться условие ),,; где 8(Ь) - заданная точность нахождения ординаты для данного дискретного пространства. Приближение к условию (3) выполняется итеративно. Таким образом, значения координа узловых Точек окружности для первог квадранта могут быть представлены в виде алгебраической суммы слагаемых, которые, представляют собой коды, полученные путем сдвига кода ра диуса на определенное число разрядов. Выражения для определения кодов проекций радиуса на оси координат дХ и &Y в различных квадрантах окруж ности в дискретном пространстве им ют следующий вид: ЛХ«-() 2 квадрант (6 4 п лУ (Xrt) 3 квадрант (7 а -(Y + 1) . лХ Хи 4 квадрант ( AV«-(n+1) Сигнал запуска, поступающий на вход блока 1 управления и регистр устанавливает в исходное нулевое с тояние анализатор 8 знака координа 86 счетчик 11 узлов интерполяции, счет чик 4, триггеры 12 и 13. Код радиуса, записанньй в регистр 2, поступает в блок 3 деления, который осуществляет деление кода радиуса окружности на 2, 4, 8, 16 и т.д. в зависимости от требуемой точности построения окружности путем сдвига его на определенное число разрядов. Результат деления после каждого сдвига запоминается в блоке регистров 5. Счетчик 4 под действием единичных импульсов, формируемых в процессе сдвига кода радиуса, образует код адреса соответствующего регистра блока 5 регистров. При равенстве кода числа, записанного в счетчике 4, числу регистров 5, сигнал, формируемый на выходе счетчика 4, поступает в блок 1 управления. Информационные.. сигналы, соответствующие прямым и обратным значениям кода радиуса, из блока 5 регистров поступают на вход мультиплексора 6, обеспечивающего передачу информации с адресуемого входа на выход. По сигналам, формируемым блоком 1 управления, триггером .12, счетчиком 11 и блоком 10 постоянной памяти, из блока 9 постоянной памяти на адресный вход мультиплексора 6 поступает сигнал, соответствующий адресу коммутируемого входа мультиплексора, по которому код соответствукяцего слагаемого поступает на вход блока 7 суммирования, который производит сложение составляющих для определения кодов проекций радиуса окружности на оси координат согласно выражению (1) и округление результата. Результат, соответствующий кода абсциссы нулевого узла интерполяции, заносится в линейный интерполятор 14. Триггер 12 устанавливается в состояние, при котором на его выходе появляется сигнал, запускающий блок 7 суммирования, который осуществляет процесс вычисления кода ординаты аналогично определению кода , абсцисс. Результат запоминается в линейном интерполяторе 14. Триггер 13 устанавливается в состояние, при котором он вццает сигнал, управпяющиА записью координаты конца (начала) отрезка. Анализатор 8 знака координат изменяет состояние счетчика 11 узлов интерполяции на единицу.

После вычисления и занесения в линейный интерполятор 14 абсциссы и ординаты первого узла интерполяции блок 1 управления вьщает сигнал в линейный интерполятор 14, по которому начинается процесс отображения окружности. Одновременно происходит определение абсцисс и ординаты второго (последующего) узла интерполяции и т.д.

В зависимости от того, в каком квадранте находится узел интерполяции, анализатор 8 знака координат управляет блоком 7 суммирования в соответствии .с выражениями (6), (7) (8), изменяя знак и корректируя величину проекции радиуса на ось координат .

Процесс формирования координат заканчивается при формировании блоком 10 сигнала постоянной памяти, соответствующего 0-му узлу интергголяции, фиксируемого анализатором 8 знака координат в четвертом квадранте , записи координат последнего узла интерполяции в линейньй интерполятор 14 и отображения им последнег аппроксимирукщего отрезка.

Рассмотрим случай определения координат первого узла интерполяции () для конкретных значений величин ft 100 мм,h 1 мм, S {h)0,5, при которых .

, Д, «-со5

360°

где ot 45

.(7, X, 100 cos 7,,1;

R;

128

Y R M 8

Значение остальных координат узлов интерполяция для построения окружности данного радиуса приведены в таблице (фиг. 5).

По сравнению с устройством-прототипом применение предлагаемого технического решения позволяет повысить быстродействие интерполяции окружности вследствие оптимальной аппроксимации дуги окружности в диапазоне изменения радиуса от нуля до Р.

УУЛЫ (мтерполлции

Фш.1

Похожие патенты SU1096688A2

название год авторы номер документа
Устройство для формирования окружностей 1981
  • Роспономарев Владимир Алексеевич
SU991486A1
Устройство для формирования окружностей 1984
  • Роспономарев Владимир Алексеевич
SU1221678A2
Устройство для формирования растрового изображения кривых 1986
  • Роспономарев Владимир Алексеевич
SU1446646A1
Устройство для формирования окружностей 1985
  • Роспономарев Владимир Алексеевич
SU1322361A2
Многокоординатный линейно-круговой интерполятор 1988
  • Личман Людмила Васильевна
  • Мурза Владимир Максимович
  • Простаков Олег Георгиевич
  • Раисов Юрий Абрамович
  • Спасский Василий Нилович
  • Сухер Александр Николаевич
SU1603345A1
Цифровой линейный интерполятор 1991
  • Романюк Александр Никифорович
  • Сенчик Владимир Сергеевич
  • Мельник Елена Пантелеймоновна
  • Пилипчук Инна Евгеньевна
SU1807450A1
Линейно-круговой интерполятор 1985
  • Огранович Михаил Наумович
  • Простаков Олег Георгиевич
  • Раисов Юрий Абрамович
  • Спасский Василий Нилович
  • Сухер Александр Николаевич
  • Тройников Валентин Семенович
SU1259218A1
Линейный интерполятор 1986
  • Романюк Александр Никифорович
SU1413603A1
Устройство поворота изображения на экране телевизионного приемника 1989
  • Власов Михаил Владимирович
  • Клюева Татьяна Ивановна
  • Тюхтина Ольга Леонидовна
SU1755298A1
Устройство для программного управления электроприводом 1985
  • Гиппиус Андрей Андреевич
  • Ермошин Александр Тимофеевич
  • Лычкин Василий Петрович
  • Макаров Николай Николаевич
  • Эйнгорин Михаил Яковлевич
SU1260919A1

Иллюстрации к изобретению SU 1 096 688 A2

Реферат патента 1984 года Устройство для формирования окружностей

УСТРОЙСТВО ДЛЯ ФОРМИРОВАНИЯ ОКРУЖНОСТЕЙ по авт. св. № 991486, отличающееся тем что, с целью повьшения быстродействия, в него введен второй блок постоянной памяти, первый вход которого соединен с выходом регистраi второй вход - с выходом счетчика узлов интерполяции, a выход подключен к третьему входу первого блока постоянной памяти и к второму входу анализатора знака координат.

Формула изобретения SU 1 096 688 A2

Cput.

Документы, цитированные в отчете о поиске Патент 1984 года SU1096688A2

Печь для непрерывного получения сернистого натрия 1921
  • Настюков А.М.
  • Настюков К.И.
SU1A1
Устройство для формирования окружностей 1981
  • Роспономарев Владимир Алексеевич
SU991486A1
Разборный с внутренней печью кипятильник 1922
  • Петухов Г.Г.
SU9A1

SU 1 096 688 A2

Авторы

Роспономарев Владимир Алексеевич

Даты

1984-06-07Публикация

1983-01-03Подача