2.1.3. Компоненты Element*

IMAGE

2.1.3.1 Analyse (Анализ)

IMAGE

  1. Mesh Closest Point
  2. Mesh Evaluate
  3. Mesh Sample Plus

Element* Mesh Closest Point (Ближайшая точка Mesh)

В отличие от компонента Grasshopper Mesh Closest Point этот компонент также вычисляет нормаль и цвет выведенной точки, устраняя необходимость в компоненте Mesh Eval и упрощая пространство холста.

Element* Mesh Evaluate (Определение Mesh)

Встроенный компонент Grasshopper Mesh Eval требует параметр mesh в качестве ввода, который можно извлечь из компонента Mesh Closest Point* но который трудно создать вручную. Компонент Element Closest Point предоставляет прямой ввод индекса полигона mesh и барицентрические координаты.

Примечание - барицентрические координаты определяются таким образом, что они всегда прибавляют 1. Если значения ввода U, V и W не прибавляют 1, этот компонент будет поддерживать коэффициент трех значений, в то же время нормализуя их. Например, если у вас имелись значения ввода 2, 2 и 4, параметр mesh был бы рассчитан как {0.25;0.25;0.5}

Element* Mesh Sample Plus

Этот компонент используется, чтобы быстро извлечь информацию о цвете из mesh. Он выдает значения Альфа, Красный, Зеленый, Голубой, Тон, Насыщенность и Яркость введенных точек. Если данные точки находятся не на mesh, этот компонент будет брать для расчета ближайшую точку. Этот компонент использует параллельное вычисление для быстроты.

2.1.3.2 Data (Данные)

IMAGE

  1. Data Visualizer
  2. Edge Neighbors
  3. Face Neighbors
  4. Vertex Neighbors

Element* Data Visualizer (Визуализация Данных)

Этот компонент используется для визуализации данных half-edge полигонов вводной mesh.

Element* Edge Neighbors (Соседние Ребра)

Этот компонент предоставляет доступ к смежным данным, которые структурируются в соответствии с ребрами вводной mesh. Данные на выходе предоставляются как дерево с одной веткой для каждого ребра mesh. Он выдает ребра mesh, конечные точки ребра, центральные точки на полигонах смежные с каждым ребром (дуальные), соседние ребра как линейные объекты (упорядочены по часовой стрелке), и центры соседних полигонов (центральные точки полигонов смежные с начальной и конечной точками ребра).

IMAGE

Edge Neighbors - ребра, конечные вершины, кентры смежных полигонов, соседние ребра и центры соседних полигонов

Element* Face Neighbors (Соседние Полигоны)

Этот компонент похож на другие из этого раздела, но данные организуются в виде дерева, в соответствии с полигонами mesh, с одной веткой на полигон. Выходы - это центры полигона, вершины каждого полигона (упорядочены против движения часовой стрелки), соседние ребра (упорядочены против движения часовой стрелки) и центры соседних полигонов (упорядочены против движения часовой стрелки).

IMAGE

Face Neighbors - центры полигона, вершины полигона, соседние ребра, центры соседнего полигона

Element* Vertex Neighbors (Соседние Вершины)

Этот компонент выдает вершины mesh, соседние вершины (упорядочены по часовой стрелке), соседние ребра (упорядочены по часовой стрелке) и центры соседнего полигона (упорядочены по часовой стрелке), в виде дерева в соответствии с вершинами mesh.

IMAGE

Vertex Neighbors - Вершины, соседние вершины, соседние ребра, центры соседнего полигона

2.1.3.3 Primitives (Примитивы)

Element* предоставляет четыре дополнительных mesh примитива: додекаэдр, тетраэдр, октаэдр и икосаэдр. Эти компоненты берут одно число как вход для радиуса и производят несколько mesh, с центром в начале системы координат и состоящих из одного полигона на одной стороне. Добавив Куб, который является уже встроенным примитивом в Grasshopper, они представляют пять Платоновых тел.

IMAGE

  1. Додекаэдр
  2. Тетраэдр
  3. Октаэдр
  4. Икосаэдр

2.1.3.4 Smooth (Сглаживание)

Element* Smooth предоставляет оптимизированный сглаженный алгоритм, который более продуктивен, чем компонент Grasshopper Smooth Mesh для огромных массивов данных. Он использует алгоритм Lapacian Smoothing для Half-Edge структурированных mesh. Он не меняет топологию или количество вершин спаенных mesh, но он будет объединять идентичные вершины, если имеются любые дубликаты, причиной которых является неспаенная mesh. Мы можем указать силу сглаживания, граничные условия, граничную точность, а также число итераций.

IMAGE

2.1.3.5 Subdivide (Подразделение)

Element* Catmull Clark Subdivision

Это рекурсивное подразделение, определяемое алгоритмом Catmull Clark. Мы можем указать число итераций, а также то, как поступать с naked ребрами.

Element* Constant Quad

Этот компонент подразделения создает все четырехугольные mesh путем добавления полигона для каждого ребра mesh.

IMAGE

  1. Constant Quad подразделение
  2. Catmull Clark подразделение

2.1.3.6 Transform (Трансформация)

IMAGE

  1. Mesh Windown
  2. Mesh Frame
  3. Mesh Thicken
  4. Mesh Offset
  5. Mesh Poke Face

Эти компоненты предоставляют различные трансформации, которые описываются ниже. Каждый компонент имеет дополнительную способность принятия данных о расстоянии per-vertex, что позволяет вариации трансформации амплитуды через mesh.

Element* Mesh Window

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

Element* Mesh Frame

Выдает рамку вокруг полигонов mesh. У каждого итогового полигона будет новое отверстие в центре. Этот компонент принимает либо mesh либо список закрытых полилиний как ввод.

Element* Mesh Thicken

Этот компонент будет утолщать вход mesh вдоль нормали вершин, а также в соответствии с предоставленными значениями расстояния.

Element* Mesh Offset

Этот компонент создает смещение вводной mesh на основе вершин нормали.

Element* Mesh Poke Face

Сначала, полигон mesh проходит через операцию фрейминга, затем внутренний полигон разделяется на выбранные полигоны и позволяет пользователю указывать силу притягивания или отталкивания от центра исходного полигона. Например, четырехсторонний полигон (четырехугольник) разделяется на 4 трехсторонних полигона с одной общей вершиной в середине. Ввод высоты позволяет трансформировать эту вершину.

IMAGE

  1. Mesh Window
  2. Mesh Frame
  3. Икосаэдр, измененный вместе с mesh фреймингом, затем применено утолщение и подразделение

2.1.3.7 Utility

IMAGE

  1. Mesh Combine & Clean
  2. Mesh Edges
  3. Mesh Status

The Element* Mesh Combine and Clean

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

The Element* Mesh Edges

Этот компонент выдает naked ребра mesh, ребра mesh, полилинии полигона и, если mesh неспаенная, он выдаст неспаенные ребра mesh.

The Element* Mesh Status

Этот компонент выдает информацию о mesh, на основе топологии. Имеются два режима, в которых мы можем просматривать информацию, первый - Mesh Info, который выдает данные о геометрии, такие как правильность mesh, количество вершин, количество полигонов и количество нормалей. Другой режим выдает Статус Mesh, который рассказывает о состоянии mesh, есть ли у нее неоднородные ребра, количество неправильных полигонов, количество naked ребер и количество необъединенных mesh. Этот компонент не работает с mesh, он просто выдает данные пользователю. Также есть опция для объединения одинаковых вершин, таким образом, что пользователь может видеть его влияние на mesh.