public static void SplitSelectedVertex(ProceduralObject obj, List <int> editingVertexIndex, Vertex[] buffer) { foreach (Vertex v in buffer) { if (!v.IsDependent) { continue; } if (!editingVertexIndex.Contains(v.DependencyIndex)) { continue; } v.DependencyIndex = 0; v.IsDependent = false; ProceduralObjectsLogic.instance.editingVertexIndex.Add(v.Index); } ProceduralUtils.UpdateVertexSelectedState(ProceduralObjectsLogic.instance.editingVertexIndex, obj); }
public static void InvertSelection(ProceduralObject obj, List <int> editingVertexIndex, Vertex[] buffer) { var logic = ProceduralObjectsLogic.instance; foreach (Vertex v in buffer) { if (v.IsDependent) { continue; } if (editingVertexIndex.Contains(v.Index)) { editingVertexIndex.Remove(v.Index); } else { editingVertexIndex.Add(v.Index); } } ProceduralUtils.UpdateVertexSelectedState(editingVertexIndex, obj); }