private void TrackSelection() { int index; if (Mode == SelectionMode.Shape3D) { bool newPatternTracked = false; ; temp.Clear(); for (int i = 0; i < SelectedShape3Ds.Count; i++) { Shape oldShape = SelectedShape3Ds[i].shape; Shape newShape = OnlineFrame.Track(oldShape); if (newShape == null) continue; if (oldShape.refPattern != newShape.refPattern) newPatternTracked = true; if ((index = Mathf.Min(SelectedShape3Ds[i].index, newShape.InsCount - 1)) != -1) if (!temp.Contains(newShape[index])) temp.Add(newShape[index]); } SelectedShape3Ds.Clear(); SelectedShape3Ds.AddRange(temp); if (newPatternTracked) onNewPatternTracked(); } else { } }
public void ClearSelection() { SelectedTiles.Clear(); SelectedShape3Ds.Clear(); }