stringtranslate.com

Геометрический примитив

Векторная графика состоит из геометрических примитивов.

В векторной компьютерной графике , системах САПР и географических информационных системах геометрический примитив (или примитив ) — это простейшая (то есть «атомарная» или несократимая) геометрическая форма , которую система может обрабатывать (рисовать, сохранять). Иногда подпрограммы , рисующие соответствующие объекты, также называют «геометрическими примитивами». Наиболее «примитивные» примитивы — это точка и отрезок прямой линии , которые были всем, что было в ранних системах векторной графики.

В конструктивной объемной геометрии примитивы представляют собой простые геометрические фигуры, такие как куб , цилиндр , сфера , конус , пирамида , тор .

Современные системы 2D компьютерной графики могут оперировать примитивами, представляющими собой кривые (отрезки прямых, круги и более сложные кривые), а также формы (коробки, произвольные многоугольники, круги).

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

Общие примитивы

Набор геометрических примитивов основан на размерности представляемой области: [1]

В ГИС о поверхности местности часто говорят как о «2 1/2-мерной», поскольку необходимо представить только верхнюю поверхность. Таким образом, возвышение можно концептуализировать как свойство скалярного поля или функцию двумерного пространства, что дает ему ряд преимуществ при моделировании данных по сравнению с истинными трехмерными объектами. Форма любого из этих измерений больше нуля состоит из бесконечного числа различных точек. Поскольку цифровые системы конечны, можно хранить только выборочный набор точек фигуры. Таким образом, структуры векторных данных обычно представляют собой геометрические примитивы с использованием стратегической выборки, организованной в структуры, которые позволяют программному обеспечению интерполировать остальную часть формы во время анализа или отображения, используя алгоритмы вычислительной геометрии . [2]

Простая полилиния
3D- прим тора , созданный в Second Life , пример параметрической формы.
NURBS-поверхность

Применение в ГИС

За время существования географических информационных систем было разработано большое разнообразие структур и форматов векторных данных , но они имеют общую фундаментальную основу для хранения основного набора геометрических примитивов для представления местоположения и масштабов географических явлений. Местоположение точек почти всегда измеряется в стандартной земной системе координат, будь то сферическая географическая система координат (широта/долгота) или плоская система координат, такая как Универсальная поперечная система Меркатора . Они также разделяют необходимость хранить набор атрибутов каждого географического объекта вместе с его формой; традиционно это достигалось с использованием моделей данных, форматов данных и даже программного обеспечения реляционных баз данных .

Ранние векторные форматы, такие как POLYVRT , ARC/INFO Coverage и шейп-файл Esri , поддерживают базовый набор геометрических примитивов: точки, полилинии и многоугольники, только в двухмерном пространстве, а последние два — только с интерполяцией прямых линий. Также были добавлены структуры данных TIN для представления поверхностей местности в виде треугольных сеток. С середины 1990-х годов были разработаны новые форматы, расширяющие диапазон доступных примитивов, обычно стандартизированные спецификацией Simple Features Open Geospatial Consortium . [3] Общие расширения геометрических примитивов включают: трехмерные координаты точек, линий и многоугольников; четвертое «измерение» для представления измеряемого атрибута или времени; изогнутые сегменты в линиях и многоугольниках; текстовая аннотация как форма геометрии; и полигональные сетки для трехмерных объектов.

Часто представление формы явления реального мира может иметь другое (обычно более низкое) измерение, чем представляемое явление. Например, город (двумерный регион) может быть представлен в виде точки, а дорога (трехмерный объем материала) может быть представлена ​​в виде линии. Это размерное обобщение коррелирует с тенденциями пространственного познания. Например, вопрос о расстоянии между двумя городами предполагает концептуальную модель городов в виде точек, тогда как указание направлений движения «вверх», «вниз» или «вдоль» дороги подразумевает одномерную концептуальную модель. Это часто делается в целях эффективности данных, визуальной простоты или когнитивной эффективности и приемлемо, если понятно различие между представлением и представляемым, но может вызвать путаницу, если пользователи информации предполагают, что цифровая форма является идеальным представлением реальности. (то есть, полагая, что дороги на самом деле являются линиями).

В 3D моделировании

В программном обеспечении САПР или 3D-моделировании интерфейс может предоставлять пользователю возможность создавать примитивы, которые могут быть дополнительно изменены путем редактирования. [4] Например, при моделировании коробок пользователь начинает с кубоида, затем использует выдавливание и другие операции для создания модели. В этом случае примитив является просто удобной отправной точкой, а не фундаментальной единицей моделирования.

3D-пакет может также включать список расширенных примитивов, которые представляют собой более сложные формы, поставляемые с пакетом. Например, чайник указан как примитив в 3D Studio Max .

В графическом оборудовании

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

Смотрите также

Рекомендации

  1. ^ Пеке, Донна Дж. (1984), Концептуальная основа и сравнение моделей пространственных данных, Cartographica 21 (4): 66–113. doi: 10.3138/D794-N214-221R-23R5.
  2. ^ Векторные модели данных, Основы географических информационных систем , Академия Сэйлора, 2012 г.
  3. ^ Открытый геопространственный консорциум, Спецификация реализации OpenGIS для географической информации — простой доступ к функциям, версия 1.2.1
  4. ^ "3D-примитивы студии" .

Внешние ссылки