心如止水

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

例如有一个Ellipse,名称叫做element,现在有一个点clickPoint,我们就可以用下面的方法判断这个点是否在Ellipse的内部:

GraphicsPath areaPath = new GraphicsPath();

areaPath.AddEllipse(0, 0, (float)element.Width, (float)element.Height);

// 注意把Ellipse的左上角当作(0,0)点。

areaPath.CloseFigure();

if(areaPath.IsVisible(new System.Drawing.PointF((float)clickPoint.X, (float)clickPoint.Y)))

{

// 在里面

}

else

{

// 不在里面

}

对于其他的graph,如Polygon,有相应的AddPolygon方法。

posted on 2008-10-07 15:21  cutebear  阅读(1035)  评论(0编辑  收藏  举报