我有一个 bool 函数,用于检查点是否在椭圆上。此外,用户可以将鼠标移动到椭圆路径附近以选择椭圆,以便将其移动到新位置。 我检查了椭圆外接矩形的角点。如果用户选择这四个点,则启用椭圆的调整大小功能,我已经实现了该功能。
为了启用移动功能,我使用 Region 类检查距离等于 cushion
的点(即为鼠标位置提供的填充)。
<强> 在下面的代码中,我考虑了 3 个边界矩形,如果要检查的点位于外部椭圆和内部椭圆的区域之间,我想返回 true。如果不是,则返回 false。
我希望在红色区域检查我的观点。 p.S::连续边界矩形之间的距离与图片中绘制的不同,即椭圆边(外、中、内)之间的距离相同 我引用的链接::Link 1寻求解决方案
编辑::已解决问题 GraphicsPath.IsOutlineVisible()
最佳答案
如果您手头有 Region
对象,为什么不使用它支持的 IsVisible
方法,如下所示:
if(yourEllipseRegion.IsVisible(pointToCheck)){
//your code here
}
更多信息Region.IsVisible
关于c#:检查椭圆上的点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18180334/