Книга: Написание скриптов для Blender 2.49

Выбор полюсов

Выбор полюсов

Для того чтобы выбрать вершины с определённого числа шагов, мы можем выполнить следующие шаги:

1. Независимо проверить, что активный объект - это меш.

2. Независимо убедиться, что мы - в режиме объектов.

3. Показать всплывающее меню для ввода минимального количества рёбер.

4. Для каждой вершины:

• Итерация по всем рёбрам, подсчет вхождений вершины

• Если счет - больше или равен минимуму, выбрать вершину

Этот метод - прямой и простой. Функция, которая ответственна за фактическую работу, показана ниже (полный скрипт называется poleselect1.py). Она близко следует нашей схеме. Фактический выбор вершин осуществляется путем присвоения атрибуту вершины sel. Заметим также, что атрибуты v1 и v2 объекта ребра не являются индексами в атрибуте verts нашего меша, а ссылаются на объекты MVert. Вот почему нам нужно извлекать атрибуты index для сравнения.

def poleselect1(me,n=5):
   for v in me.verts:
      n_edges=0
      for e in me.edges:
         if e.v1.index == v.index or
                    e.v2.index == v.index:
            n_edges+=1
            if n_edges >= n:
               v.sel = 1
               break

Оглавление книги

Оглавление статьи/книги

Генерация: 1.345. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз