public bool ContainsPoint(float X, float Y) { for (int i = _GroupItem.Count - 1; i >= 0; i--) { Item It = (Item)_GroupItem[i]; switch (It.TypeShape) { case Nows.Line: Line L = (Line)_GroupItem[i]; if (L.ContainsPoint(X, Y)) { return(true); } break; case Nows.Rec: Rec R = (Rec)_GroupItem[i]; if (R.ContainsPoint(X, Y)) { return(true); } break; case Nows.Ellip: case Nows.Pie: Pie P = (Pie)_GroupItem[i]; if (P.ContainsPoint(X, Y)) { return(true); } break; case Nows.Group: GroupItem GI = (GroupItem)_GroupItem[i]; if (GI.ContainsPoint(X, Y)) { return(true); } break; default: break; } } return(false); }
public Object FindShape(float X, float Y) { for (int i = _Items.Count - 1; i >= 0; i--) { switch (_Items.GetTypeOfObj(i)) { case Nows.Line: Line L = (Line)_Items[i]; if (L.ContainsPoint(X, Y)) { return(_Items[i]); } break; case Nows.Rec: Rec R = (Rec)_Items[i]; if (R.ContainsPoint(X, Y)) { return(_Items[i]); } break; case Nows.Ellip: case Nows.Pie: Pie P = (Pie)_Items[i]; if (P.ContainsPoint(X, Y)) { return(_Items[i]); } break; case Nows.Group: GroupItem GI = (GroupItem)_Items[i]; if (GI.ContainsPoint(X, Y)) { return(_Items[i]); } break; } } return(null); }
public bool ContainsPoint(float X, float Y, bool CtrlPressed) { //bool result = false; for (int i = _Item.Count - 1; i >= 0; i--) { // if (result) return result; Item It = (Item)_Item[i]; switch (It.TypeShape) { case Nows.Line: Line L = (Line)_Item[i]; if (L.ContainsPoint(X, Y)) { if (CtrlPressed) { _Item.RemoveAt(i); } return(true); } break; case Nows.Rec: Rec R = (Rec)_Item[i]; if (R.ContainsPoint(X, Y)) { if (CtrlPressed) { _Item.RemoveAt(i); } return(true); } break; case Nows.Ellip: case Nows.Pie: Pie P = (Pie)_Item[i]; if (P.ContainsPoint(X, Y)) { if (CtrlPressed) { _Item.RemoveAt(i); } return(true); } break; case Nows.Group: GroupItem GI = (GroupItem)_Item[i]; if (GI.ContainsPoint(X, Y)) { if (CtrlPressed) { _Item.RemoveAt(i); } return(true); } break; default: break; } } return(false); }