Разное

Графический примитив: Геометрические примитивы — Документация Varwin 0.16.* Beta

Геометрические примитивы — Документация Varwin 0.16.* Beta

Что такое точка — математическая точка или пустой объект невидим в режим просмотра. Может использоваться в качестве родительского объекта для удобства работы с иерархией. Также при перемещении по маршруту удобно задать путь, создав список точек и передав его в качестве маршрута

Рассмотрим пример использования примитивов для создания маршрута перемещения от объекта к объекту, то есть по маршруту

  1. Разместите на 3D сцене несколько любых объектов, находящихся в вашей библиотеке объектов

Примечание

Важно, для задания маршрута подходят только Varwin объекты!

В нашем примере, разместим куб, цилиндр, пирамиду, гексагон, сферу и точку

  1. Сохраните сцену и перейдите в редактор логики. Создадим вот такую несложную логику:

2.1. Разметим блок «Запустить цепочку при старте сцены» из категории «События» для инициализации событий во время запуска сцены

2.

2. Создадим переменную «Маршрут» в категории «Переменные»

2.3. Присвоим созданной переменной создание списка, блоком «Создать список из..» из категории «Списки»

2.4. В список добавим те объекты, которые располагаются на сцене, кроме движимого, в нашем случае это будет объект «Сфера». Переменные этих объектов можно найти в категории «Объекты» в заголовке каждого необходимого объекта. Они будут выступать в качестве точек маршрута для сферы

Примечание

На практике, в качестве точек маршрута обычно используются точки для удобства восприятия

2.5. Из категории «Цепочки» перенесите блок «Выполнять цепочку постоянно». Использование этого блока будет выполнять эту цепочку действий постоянно, начиняя её заново при достижении ее конца

2.6. Поместите в него блок «Ожидать в течении N секунд» из категории «Цепочки» и установите любое значение на ваше усмотрение. Это поможет отследить начало и конец выполнения цепочки

2. 7. В категории «Объекты», найдите движимый объект, в нашем случае это сфера, и из его категории «Перемещение» вытащите блок «Выполнить «Сфера» перемещаться по маршруту N со скоростью M». В качестве параметра N установите переменную «Маршрут» из категории блоков «Переменные». А в качестве параметра M установите любую подходящую скорость перемещения

2.8. Поместите в цепочку блок «Выполнить «Сфера» остановить действие любой силы» чтобы устранить влияние от столкновения с последним объектом. Использование этого блока не влияет на физику объекта «Сфера», поэтому движение она не прекратит

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

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

Что такое графический примитив? Определение, применение и особенности — RUUD

Содержание статьи:

  • Использование примитивов в редакторах
  • Что такое пиксель
  • Дисплейный файл и кадровый буфер
  • Управление дисплеем и дисплейный процессор
  • Графические редакторы
  • Точки и линии в графике
  • Линия как примитив
  • Генерация линий
  • Цифровой дифференциальный анализатор
  • Полигоны или многоугольники
  • Заполнение полигонов

Начиная работать в редакторах, новички могут столкнуться с таким понятием, как “графический примитив”. Для работы знания в этой области будут очень полезны. Что такое графический примитив и как он используется? Так называют простой или низкоуровневый объект, а также элементарную операцию. С их помощью можно построить более сложные объекты и осуществлять операции более высокого уровня. Примитивы в графическом редакторе — это базовые элементы, такие как линии, кривые и полигоны, которые могут быть объединены для создания более сложных графических изображений. В программировании это основные операции, поддерживаемые языком программирования. Для создания любого чертежа в компьютере такие графические примитивы — это то, что образует часть программного обеспечения.

Вам будет интересно:Программное обеспечение для устройства не было установлено: почему возникает ошибка и как ее исправить?

Использование примитивов в редакторах

Графика в общем смысле состоит из трех основных элементов, в отличие от большого разнообразия графических приложений: пикселя, линии и полигона. Основная из этих элементарных структур — пиксель. Графические примитивы в графическом редакторе представляют собой простой объект, необходимый для создания или построения сложных изображений. Графика в программах для создания векторных изображений построена на таких элементах, как точка, линия и состоящие из них простые фигуры. Это круг, треугольник и квадрат, которые также можно назвать полигонами. Поэтому чаще всего при работе в графическом редакторе примитивами называются именно эти простые фигуры. Для растровой графики таким элементом будет пиксель.

Вам будет интересно:Сбой программы установки NVIDIA: простейшие методы исправления ошибок

Что такое пиксель?

Пиксель — это графический примитив, который является точкой света. Это всего лишь одна маленькая точка, часть растрового изображения. Хотя он не имеет структуры, но, безусловно, является строительным блоком. Следовательно, пиксель — графический примитив. Разрешение ЭЛТ-мониторов связано с размером этой точки и ее диаметром, которое может меняться.

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

Вам будет интересно:App Store: что это, описание, функции и возможности, особенности

Дисплейный файл и кадровый буфер

Графическим примитивом является также программное обеспечение, при помощи которого на экран выводится определенное изображение. Один из них — дисплейный файл. Он является массивом некоррелированных данных или набором команд, которые необходимы для правильной отрисовки изображения на экране. Массивы заполняются из данных списка, хранящегося в памяти. В результате их обработки на ЭЛТ-мониторе создается картинка, состоящая из пикселей разного цвета. Кадровым буфером называют устройство для хранения и вывода видео на экран. Обычно это устройство или вид памяти, которое хранит несколько кадров видеоизображения. Изображение находится в памяти в виде массива данных, где записаны последовательные цветовые значения каждого пикселя.

Управление дисплеем и дисплейный процессор

Система управления дисплеем позволяет управлять видом изображения на экране и помогает пользователю просматривать его под желаемым углом или менять размер, уменьшая и увеличивая его. Дисплейный процессор в это время прочитывает данные из буфера и преобразовывает их в картинку. Он может повторять это действие около 30 раз в секунду, чтобы сохранять изображение на экране. Для обновления изображения нужно изменить содержимое буфера.

Графические редакторы

Графическое программное обеспечение — это программа или набор программ, которые позволяют управлять визуальными изображениями в компьютерной системе. Существует два типа графики, а именно растровая и векторная.

Растровая графика, или растровое изображение — это структура данных с точечной матрицей, представляющая в целом прямоугольную сетку пикселей.

Векторная графика использует геометрические примитивы. Что такое графический примитив в векторной графике, уже говорилось выше. Это точки, линии, кривые и многоугольники (или полигоны) или векторные изображения. Такие фигуры основаны на математических выражениях, для представления изображений в компьютерной графике. Конвертировать векторную графику в растровую довольно просто, но из растровой в векторную гораздо сложнее. Некоторые программы пытаются это сделать. В дополнение к статической графике, есть анимация и программное обеспечение для редактирования видео. Компьютерная графика также может использоваться другим программным обеспечением для редактирования, таким как Adobe Photoshop, Pizap, Microsoft Publisher, Picasa и т. д. Еще один вариант — это программы для анимации, и видеоредакторы, такое как Windows Movie Maker.

Точки и линии в графике

Теперь, когда стало немного понятнее, что такое графический примитив, внимательнее рассмотрим каждый из них. Начнем с точек и линий. Точки используются во всей графике как строительные блоки для более сложных фигур. Например, треугольники созданы при помощи трех точек, соединенных между собой. Другим фундаментальным геометрическим объектом в 2D-графике является линия. Для создания прямой линии нужны две точки.

Линия как примитив

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

Генерация линий

Для того чтобы понять, что такое графический примитив, нужно разобраться, как он создается. В математике и информатике существуют специальные алгоритмы, которые являются пошаговой инструкцией для выполнения расчетов. Алгоритмы созданы для расчета, обработки данных и их автоматизированного анализа. Для того чтобы нарисовать линии на экране компьютера, используется так называемый алгоритм Брезенхэма. Он определяет, как лучше всего построить линию, и формирует оптимальный вариант создания прямой линии между двумя заданными точками, закрашивая определенные пиксели на мониторе.

Алгоритм был разработан еще в 1962 году и до сих пор актуален. Он использует только целочисленное сложение, вычитание и смещение битов, когда цифры перемещаются или сдвигаются влево или вправо. Все они являются очень дешевыми операциями в стандартных компьютерных архитектурах. Это один из самых ранних алгоритмов, разработанных в области компьютерной графики. Незначительное расширение исходного алгоритма также касается рисования кругов.

Цифровой дифференциальный анализатор

Другой алгоритм — цифровой дифференциальный анализатор — представляет собой алгоритм генерации отрезка, основанный на вычислении либо dy, либо dx. Для этого нужно спроецировать линию на единичные интервалы в одной координате и определить соответствующие значения целого числа, ближайшие к пути линии, для другой координаты. Алгоритм принимает в качестве входных данных две позиции пикселей на концах отрезка. Горизонтальные и вертикальные различия между позициями конечных точек назначаются параметрам dx и dy. Разница с большей величиной определяет приращение шагов параметра. Начиная с положения пикселя определяется смещение, необходимое на каждом шаге, для создания следующего положения пикселя вдоль линии.

Полигоны или многоугольники

Примитивами в векторном графическом редакторе являются полигоны, или многоугольники. Это замкнутая область изображения, ограниченная прямыми или изогнутыми линиями и заполненная одним сплошным цветом. Примитивами в графическом редакторе называются двумерные фигуры, поэтому многоугольник представляет собой замкнутую плоскую фигуру. Полигон является важным графическим примитивом. С ним обращаются как с единым целым, так как изображения объектов из реального мира состоят по большей из части многоугольников.

Полигоны, или многоугольники, используются в компьютерной графике для создания изображений, которые выглядят трехмерными. Обычно треугольные полигоны применяют при моделировании поверхности объекта, выбирая вершины и визуализируя объект как модели из проволоки. Это быстрее для создания объемного изображения, чем проработка теней. Также использование полигонов является одним из этапов в процессе проектирования компьютерной анимации.

Заполнение полигонов

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

Источник

Графические примитивы — Помощь разработчику

Графические примитивы

На этой странице содержится информация о графической библиотеке, найденной в библиотеках Microchip для приложений (MLA). Это не относится к графической библиотеке MPLAB® Harmony.

Графические примитивы
Графические примитивы — это неинтерактивные элементарные элементы, отображаемые на экране. Несколько примитивных элементов могут быть объединены вместе для создания сложного изображения. Элементы графического примитива используются приложениями Microchip Harmony и MLA.

К графическим примитивам относятся:

  • Линии, окружности, дуги, прямоугольники и т. д.
  • Символьные шрифты
  • Импортированные изображения

Следует соблюдать осторожность при использовании графических примитивов в приложении. Графические примитивы просты для понимания и программирования. Дизайнеры, плохо знакомые с графикой, склонны чрезмерно использовать графические примитивы при отображении динамических данных. Примитивы в основном используются во вводных экранах или экранах-заставках. Графические объекты лучше всего использовать для отображения динамических данных и извлечения пользовательского ввода с сенсорных экранов.

Функции настройки:

DRVgfx_Initialize(): инициализирует драйвер дисплея. Эта функция должна вызываться перед отображением любого графического элемента.

GFX_Primitive_Initialize(): Инициализирует программное обеспечение слоя примитива, позволяя работать функциям рисования примитива.

GFX_ColorSet(color): Устанавливает цвет рисунка. Значение цвета задается макросом RGB565 и может быть найдено в GFXColor.h.

GFX_ScreenClear(): очищает экран текущим цветом, затем помещает курсор в (0,0).

GFX_LineStyleSet(key): Устанавливает, что любая рисуемая линия имеет атрибут, заданный ключом. Варианты ключей:

GFX_LINE_STYLE_THIN_SOLID сплошная линия шириной в один пиксель (по умолчанию)
GFX_LINE_STYLE_THIN_DOTTED пунктирная линия шириной в один пиксель
GFX_LINE_STYLE_THIN_DASHED пунктирная линия шириной в один пиксель
GFX_LINE_STYLE_THICK_SOLID сплошная линия шириной три пикселя (по умолчанию)
GFX_LINE_STYLE_THICK_DOTTED пунктирная линия шириной три пикселя
GFX_LINE_STYLE_THICK_DASHED пунктирная линия шириной три пикселя

Функции рисования:

GFX_LineDraw(unit16 x1, unit16 y1, unit16 x2 и unit16 y2) рисует линию от x1,y1 до x2,y2 и оставляет курсор в конечной точке линии.

GFX_RectangleDraw(unit16_t Left, unit16_t Top, unit16_t Right и unit16_t Bottom) рисует прямоугольник, используя текущий тип линии и координаты сверху, слева, справа и снизу.

GFX_RectangleRoundDraw(верхний, левый, нижний, правый и радиус) визуализирует прямоугольную форму с закругленными углами, используя заданные параметры левого, верхнего, правого, нижнего и радиуса для определения размера формы. Радиус определяет форму закругленного угла. Когда x1 = x2 и y1 = y2, рисуется круглый объект. Когда x1 < x2 и y1 < y2 и rad (радиус) = 0, рисуется прямоугольный объект.

GFX_RectangleRoundFillDraw(верхний, левый, нижний, правый и радиус) рисует на экране заполненную скошенную фигуру. Для залитого круглого объекта используйте верх = низ, а лево = право. Для прямоугольного объекта с заливкой используйте радиус = 0.

GFX_CircleDraw(x, y и радиус) рисует окружность с заданным радиусом и центральной точкой, используя текущий тип линии.
GFX_CircleFillDraw(x, y и радиус) рисует круг, заполненный текущим цветом.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *