Ejemplo n.º 1
0
            public virtual ISelectable[] GetFromSubGroupOnScreen(ISelectable selected)
            {
                var allOnScreen = AreaSelectionType.GetAllInsideViewportArea(GetMainList(), this.ViewportHelper.InitialViewportPoint, this.ViewportHelper.FinalViewportPoint);

                ISelectable[] result = SubGroupUtil.FilterBySubGroup(allOnScreen, selected, EqualityComparer);
                return(DistanceHelper.SortWorldSpace(result, selected.Position));
            }
Ejemplo n.º 2
0
        public ISelectable[] GetSelection(ISelectable[] mainList, Vector2 startScreenPoint, Vector2 endPoint)
        {
            List <ISelectable> result = new List <ISelectable>();

            if (mainList == null)
            {
                return(result.ToArray());
            }
            for (int i = 0; i < mainList.Length; i++)
            {
                if (_areaSelection.IsInsideScreenPoints(startScreenPoint, endPoint, mainList[i]))
                {
                    result.Add(mainList[i]);
                }
            }
            ISelectable[] selectables = DistanceHelper.SortScreenSpace(result, startScreenPoint);
            return(selectables);
        }
Ejemplo n.º 3
0
 public virtual ISelectable[] FilterBySubGroup(ISelectable[] selectables, ISelectable selected)
 {
     ISelectable[] result = SubGroupUtil.FilterBySubGroup(selectables, selected, EqualityComparer);
     return(DistanceHelper.SortWorldSpace(result, selected.Position));
 }