public override IHitTestObject HitTest(HitTestPointData htd) { HitTestObjectBase result = null; GraphicsPath gp = GetPath(); if (_fillBrush.IsVisible && gp.IsVisible((PointF)htd.GetHittedPointInWorldCoord(_transformation))) { result = new GraphicBaseHitTestObject(this); } else if (_linePen.IsVisible && gp.IsOutlineVisible((PointF)htd.GetHittedPointInWorldCoord(_transformation), _linePen)) { result = new GraphicBaseHitTestObject(this); } else { gp.Transform(htd.GetTransformation(_transformation)); // Transform to page coord if (gp.IsOutlineVisible((PointF)htd.HittedPointInPageCoord, new Pen(Color.Black, 6))) { result = new GraphicBaseHitTestObject(this); } } if (result != null) { result.DoubleClick = EhHitDoubleClick; } return(result); }
public override IHitTestObject HitTest(HitTestPointData htd) { if (_axisStyle.Title != null) { var titleResult = _axisStyle.Title.HitTest(htd); if (null != titleResult) { titleResult.Remove = EhTitleRemove; return(titleResult); } } var pt = htd.GetHittedPointInWorldCoord(); HitTestObjectBase result = null; GraphicsPath gp = GetSelectionPath(); if (gp.IsVisible((PointF)pt)) { result = new MyHitTestObject(this); } if (result != null) { result.DoubleClick = EhHitDoubleClick; } return(result); }