- Фантастика и фэнтези
- Ироническое фэнтези
- Стимпанк
- Детективная фантастика
- Киберпанк
- Попаданцы
- LitRPG
- Космоопера
- Технофэнтези
- Городская фантастика
- Русское фэнтези
- Юмористическая фантастика
- Космическая фантастика
- Боевое фэнтези
- Эпическая фантастика
- Зарубежная фантастика
- Книги магов
- Мистика
- Разная фантастика
- Разное фэнтези
- Любовное фэнтези
- Романтическая фантастика
- Городское фентези
- Историческая фантастика
- Историческое фэнтези
- Социально-философская фантастика
- Сказочная фантастика
- Иностранное фэнтези
- Романтическое фэнтези
- Ироническая фантастика
- Ужасы и Мистика
- Постапокалипсис
- Героическая фантастика
- Фэнтези
- Научная Фантастика
- Социально-психологическая
- Альтернативная история
- Боевая фантастика
- Разная литература
- Пословицы, поговорки
- Шахматы
- Визуальные искусства
- Фанфик
- Авто и ПДД
- Военное
- Отраслевые издания
- Гиды, путеводители
- Зарубежная образовательная литература
- Военная история
- Цитаты из афоризмов
- Современная литература
- Великолепные истории
- Начинающие авторы
- Современная зарубежная литература
- Боевые искусства
- Изобразительное искусство, фотография
- Кино
- Литература 19 века
- Недвижимость
- Музыка, музыканты
- Готические новеллы
- Истории из жизни
- Культура и искусство
- Спецслужбы
- Зарубежная прикладная литература
- Музыка, танцы
- Подростковая литература
- Прочее
- Военная техника, оружие
- Газеты и журналы
- Периодические издания
- Домоводство, Дом и семья
- Любовные романы
- Экономическая литература
- Научные и научно-популярные книги
- О животных
- Биохимия
- Культурология
- Юриспруденция
- Политика
- Психотерапия
- Языкознание
- Научпоп
- Медицина
- Психология, личное
- Радиотехника
- Филология
- Педагогика
- Образовательная литература
- Деловая литература
- Физика
- Науки: разное
- Химия
- Воспитание детей, педагогика
- Детская психология
- Зарубежная публицистика
- Биология
- Архитектура
- Зарубежная психология
- Науки о космосе
- Социология
- Математика
- География
- Беременность, ожидание детей
- Литературоведение
- Транспорт, военная техника
- Обществознание
- Зоология
- География
- Альтернативная медицина
- Иностранные языки
- Ветеринария
- Рефераты
- Астрология
- Биофизика
- Экология
- История Европы
- Учебники
- Шпаргалки
- Государство и право
- Ботаника
- Религиоведение
- История
- Техническая литература
- Прочая научная литература
- Психология
- Детективы и Триллеры
- Справочная литература
- Проза
- Новелла
- Юмор
- Проза
- Историческая проза
- Русская современная проза
- Советская классическая проза
- Повести
- Очерки
- Эссе
- Рассказы
- Зарубежная современная проза
- Сентиментальная проза
- Зарубежная классика
- Афоризмы
- Эпистолярная проза
- Феерия
- Семейный роман/Семейная сага
- Разное
- Антисоветская литература
- Магический реализм
- Русская классическая проза
- Современная проза
- О войне
- Контркультура
- Классическая проза
- Поэзия, Драматургия
- Детская литература
- Детская фантастика
- Детские остросюжетные
- Детские стихи
- Детские приключения
- Внеклассное чтение
- Учебная литература
- Зарубежные детские книги
- Бизнес
- Загадки
- Книги для подростков
- Школьные учебники
- Детский фольклор
- Книги для дошкольников
- Детские детективы
- Детская познавательная и развивающая литература
- Буквари
- Прочая детская литература
- Сказка
- Детская проза
- Детская образовательная литература
- Юмор
- Документальные книги
- Бизнес
- Внешнеэкономическая деятельность
- Тайм-менеджмент
- Кадровый менеджмент
- О бизнесе популярно
- Управление, подбор персонала
- Бизнес
- Менеджмент и кадры
- Продажи
- Экономика
- Ценные бумаги и инвестиции
- Малый бизнес
- Делопроизводство, офис
- Корпоративная культура, бизнес
- Банковское дело
- Финансы
- Зарубежная деловая литература
- Ораторское искусство / риторика
- Личные финансы
- Интернет-бизнес
- Поиск работы
- Государственное и муниципальное управление
- Бухучет и аудит
- Работа с клиентами
- Менеджмент
- Краткое содержание
- Личная эффективность
- Переговоры
- Приключения
- Старинная литература
- Религия и духовность
- Компьютеры и Интернет
- Блог
Читаем без скачивания Цифровой журнал «Компьютерра» № 146 - Коллектив Авторов
Шрифт:
Интервал:
Закладка:
Сазерленд начал трудиться над Sketchpad (в переводе название означает «блокнот для набросков») в 1960 году. Для начала он реализовал рисование прямых линий. Решение Сазерленда было простым и изящным: чтобы нарисовать отрезок, пользователь должен был навести световое перо на точку его начала, нажать на пульте клавишу LINE и указать пером конечную точку отрезка. Sketchpad считывал координаты точек и соединял их линией.
Сазерленд за SketchpadВдохновлённый успехом, Сазерленд в декабре 1961 года показывает прототип системы Клоду Шеннону и... получает от него ряд критических замечаний. Консультант докторской Сазерленда предлагает расширить функциональность «блокнота», добавив возможность рисования окружностей и максимально приблизив функции аппаратных клавиш Sketchpad к стандартным инструментам проектировщика.
Процедура рисования окружностей отняла у Сазерленда массу сил и времени. Разработать подпрограмму, с помощью которой можно было бы указать центр окружности и точку, ограничивающую её радиус, было просто. Но вот описать границу для дуги, завершающей рисование окружности, было весьма непросто.
Под указательным пальцем на световом пере находилась кнопка спускаРешение этой проблемы вылилось в разработку обобщённого понятия «ограничитель» (constraint), описывающего границы самых разнообразных объектов, формируемых Sketchpad. Тогда же Сазерленд пришёл к мысли об унификации элементов, составляющих рисунок в Sketchpad. Он предложил представлять любой нарисованный элемент n-компонентной структурой, в которой атомарной единицей был бы компонент.
Структура n-компонентного элемента «линия»Например, компонент «отрезок» представлялся двумя компонентами «точка», каждый из которых представлялся двумя компонентами "X"- и "Y"-координаты. В свою очередь, треугольник составляется из трёх компонентов «отрезок». С помощью компонентов типа «ограничитель» можно было задать отношения между визуальными компонентами. Установив ограничитель «параллельность» между двумя отрезками, можно было менять координаты одного из них, не заботясь об изменении координат другого отрезка. Тот автоматически перерисовывался параллельным первому. Точно так же, выбрав ограничитель «равенство», можно было сделать все грани многоугольника одинаковыми, превратив его в равнобедренный.
Следующий логичный шаг, сделанный Сазерлендом, заключался в применении рекурсии для масштабирования изображений. Вместо того, чтобы многократно вручную рисовать элементы разного масштаба, процедура рекурсии позволяла пользователю Sketchpad сгенерировать подмножество любого элемента в разных масштабах и под разными углами, просто пересчитав значения его дочерних компонентов.
Выравнивание фигур с помощью ограничителя «параллельность». Обратите внимание на ряд функциональных клавиш у левого края дисплеяРазработав базовые подходы к визуализации элементов рисунка, Сазерленд озаботился его хранением. Для быстрого вывода рисунка на экран компьютеру требовалась структура, хранящая координаты массива точек, составляющих рисунок. В Sketchpad каждая точка описывалась 36-разрядным словом, двадцать бит которого содержали координаты X и Y, а шестнадцать были указателем на элемент n-компонентной структуры, к которой принадлежит точка. Для проектировщика же требовалось хранить сведения обо всех элементах n-компонентоной структуры, составляющей рисунок.
Чтобы унифицировать эти данные, Сазерленд позаимствовал подход, применявшийся в редакторе Scopewriter, где файл, содержащий сведения о том или ином символе, представлял собой стек шестнадцатибитных указателей на элемент. Сазерленд расширил это представление, введя так называемую «кольцевую структуру» — замкнутый буфер, содержащий указатели на элементы n-компонентной структуры.
Родительские элементы в кольцевой структуре именовались «курица» (hen), а следовавшие за ней дочерние элементы логично обзывались «цыплятами» (chicken). Специальная процедура позволяла дополнить любую n-компонентную структуру новыми дочерними элементами, разместив «цыплят» позади «курицы». Кольцевая структура обеспечивала компьютеру возможность быстро просматривать множество родительских и дочерних элементов, выбирая необходимые для отображения на экране.
Создав в Sketchpad элементы лица, Сазерленд научил картинку подмигиватьУсилиями Сазерленда в библиотеку хранимых компонентов Sketchpad попали не только геометрические фигуры, но и символы алфавита, цифры, научные символы, радиотехнические элементы и даже такие элементы, как «глаз», «нос», «рот», позволяющие нарисовать, например, такое лицо.
Программа позволяла не только рисовать, но и визуализировать результаты расчётов других программ, необходимые на этапе проектирования. Например, создав проект арочного моста с определёнными пропорциями элементов, проектировщик мог в режиме реального времени получить на экране сведения о напряжениях, возникающих в разных точках конструкции, что существенно облегчало процесс оптимизации чертежа.
Сделанный на Sketchpad чертёж моста с «привязанными» к элементам его конструкции расчётами механических напряженийВ 1963 году вторая версия Sketchpad, а также полное описание структур хранимых «компьютерным блокнотом» данных и математических процедур, обеспечивающих реализацию ограничений и рекурсии элементов, была готова.
Демонстрация программы вызвала настоящий фурор. Стало ясно, что для специалистов, использующих системы проектирования, появился инструмент, обеспечивающий удобный ввод чертёжной информации в систему. Разработанные чертежи можно хранить в памяти компьютера и многократно использовать их или же легко редактировать при необходимости.
Безусловно, представленная версия Sketchpad была лишь прототипом. Для своей работы «рисовалка» требовала всей мощности компьютера TX-2, занимающего несколько комнат лаборатории. «Полученный опыт — самый важный результат разработки Sketchpad. В настоящее время использовать компьютер стоит, если вы хотите получить нечто большее, чем просто рисунок, — писал Сазерленд. — Для обычных рисунков всё же пока экономнее применять обычные карандаш и бумагу».
Опыт действительно оказался бесценным. С одной стороны, из Sketchpad выросли современные системы автоматизированного проектирования. С другой — эта программа стимулировала разработки в области человеко-машинного взаимодействия и, в конечном счёте, стала прародителем всех систем с графическим интерфейсом пользователя, в том числе Windows и Mac OS.
Мечтал ли о таком развитии событий Айвен Сазерленд? Конечно! В основе Sketchpad лежала идея простого общения людей и компьютеров, подмеченная им однажды в университетском кампусе. А ведь именно такие идеи и обеспечивают очередной рывок вперёд мира технологий.
Ученики СазерлендаК оглавлению
Терралаб
Обзор беспроводной акустической системы BBK BTA 106
Ника Парамонова
Опубликовано 07 ноября 2012 года
Беспроводная акустика на рынке появилась довольно давно и сейчас, похоже, всё больше входит в моду в качестве аксессуара для вездесущих мобильных устройств. Компактная пятнадцативаттная акустическая система BBK BTA 106 с двумя динамиками и встроенным микрофоном — достойный представитель этой тенденции.
BTA106 соединяется по Bluetooth практически с любым смартфоном, компьютером, планшетом или каким-либо другим устройством, обладающим поддержкой этой технологии (используются протоколы A2DP, HFP, HSP). Радиус действия беспроводной связи составляет около десяти метров (на такое расстояние можно разнести друг от друга аудиосистему и источник сигнала).
Мощности динамиков устройства достаточно для того, чтобы «прозвучить» средних размеров помещение. Говорить об этом устройстве в аудиофильских категориях бессмысленно по определению, однако на фоне других устройств подобного класса акустическая система BBK смотрится неплохо.
Аудиосистема заключена в пластиковый корпус красного, белого или чёрного цвета и выглядит как перекрученный брус. Она предназначена для размещения на горизонтальных поверхностях, но за счёт резиновых вполне устоит и на поверхностях с небольшим наклоном, таких, например, как передняя панель в салоне автомобиля.