Работа с группами точек для текущего активного объекта осуществляется через его структуру «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') |
Для активного меша будет создана новая группа точек и в нее будут добавлены точки с индексами из списка.