Работа с группами точек для текущего активного объекта осуществляется через его структуру “vertex_groups”.
1 |
bpy.context.active_object.vertex_groups |
Для создания новой группы точек нужно выполнить команду:
1 |
new_vertex_group = bpy.context.active_object.vertex_groups.new(name='_GROUP_NAME_') |
указав в параметре “name” желаемое имя для группы.
В группе точек хранится список индексов вертексов, которые включены в эту группу.
Чтобы добавить нужные вертексы в группу, выполните следующую команду:
1 2 |
vertex_group_data = [1, 3, 5, 7] new_vertex_group.add(vertex_group_data, 1.0, 'ADD') |
Где “vertex_group_data” – список индексов вертексов, которы нужно включить в группу.
Второй параметр – вес, по умолчанию назначаемый точке в данной группе.
Третий параметр может иметь три варианта:
- ‘ADD’ – точки просто добавляются в группу
- ‘SUBTRACT’ – режим вычитания. Если точка уже была добавлена в группу ранее, она будет удалена из нее.
- ‘REPLACE’ – режим замены. Если точка уже была добавлена в группу ранее, для нее будет заменен вес по умолчанию. Сама точка останется включенной в группу.
Финальный код:
1 2 3 4 5 |
import bpy new_vertex_group = bpy.context.active_object.vertex_groups.new(name='_GROUP_NAME_') vertex_group_data = [1, 3, 5, 7] new_vertex_group.add(vertex_group_data, 1.0, 'ADD') |
Для активного меша будет создана новая группа точек и в нее будут добавлены точки с индексами из списка.