public override bool HitTest(LeadPointD point, double hitTestBuffer) { bool hit = base.HitTest(point, hitTestBuffer); if (hit) { AnnPolylineObject line = new AnnPolylineObject(); hit = false; int pointsCount = Points.Count / 2; for (int i = 0; i < pointsCount && !hit; ++i) { line.Points.Add(Points[2 * i]); line.Points.Add(Points[2 * i + 1]); if (line.HitTest(point, hitTestBuffer)) { hit = true; } } } return(hit); }
private void CustomizeAutomationMenu() { AnnAutomationObject autoObj = _annAutomationManager.FindObjectById(AnnObject.LineObjectId); if (autoObj != null) { if (autoObj.ContextMenu != null) { ObjectContextMenu menu = autoObj.ContextMenu as ObjectContextMenu; if (menu != null) { menu.MenuItems.RemoveAt(13); //Unlock menu.MenuItems.RemoveAt(12); //Lock menu.MenuItems.RemoveAt(11); //Separator menu.MenuItems.RemoveAt(10); //Reverse menu.MenuItems.RemoveAt(9); //Flip menu.MenuItems.RemoveAt(8); //Separator } } autoObj = _annAutomationManager.FindObjectById(AnnObject.PolygonObjectId); if (autoObj != null && autoObj.ObjectTemplate != null) { AnnPolylineObject polygon = autoObj.ObjectTemplate as AnnPolylineObject; polygon.IsClosed = true; polygon.FillRule = AnnFillRule.Nonzero; } autoObj = _annAutomationManager.FindObjectById(AnnObject.ClosedCurveObjectId); if (autoObj != null && autoObj.ObjectTemplate != null) { AnnCurveObject closedCurve = autoObj.ObjectTemplate as AnnCurveObject; closedCurve.IsClosed = true; closedCurve.FillRule = AnnFillRule.Nonzero; } // Group autoObj = _annAutomationManager.FindObjectById(AnnObject.PolygonObjectId); if (autoObj != null && autoObj.ObjectTemplate != null) { AnnPolylineObject polygon = autoObj.ObjectTemplate as AnnPolylineObject; polygon.IsClosed = true; polygon.FillRule = AnnFillRule.Nonzero; } autoObj = _annAutomationManager.FindObjectById(AnnObject.ClosedCurveObjectId); if (autoObj != null && autoObj.ObjectTemplate != null) { AnnCurveObject closedCurve = autoObj.ObjectTemplate as AnnCurveObject; closedCurve.IsClosed = true; closedCurve.FillRule = AnnFillRule.Nonzero; } // Group autoObj = _annAutomationManager.FindObjectById(AnnObject.GroupObjectId); if (autoObj != null) { ObjectContextMenu menu = new ObjectContextMenu(); menu = autoObj.ContextMenu as ObjectContextMenu; if (menu != null) { menu.MenuItems.RemoveAt(16); //Ungroup menu.MenuItems.RemoveAt(15); //Group menu.MenuItems.RemoveAt(14); //Separator menu.MenuItems.RemoveAt(13); //Unlock menu.MenuItems.RemoveAt(12); //Lock menu.MenuItems.RemoveAt(11); //Separator menu.MenuItems.RemoveAt(10); //Reverse menu.MenuItems.RemoveAt(9); //Flip menu.MenuItems.RemoveAt(8); //Separator } if (menu != null) { // Remove the 'Control Points' item menu.MenuItems.RemoveAt(8); menu.MenuItems.RemoveAt(7); } } } }