【发布时间】:2010-04-27 10:22:12
【问题描述】:
在我的一个应用程序中,我正在处理图形对象。我正在使用开源GPC library 来剪辑/合并两个形状。为了提高准确性,我正在对现有形状进行采样(在两条边之间添加多个点)。但在显示合并的形状之前,我需要删除两条边之间的所有点。
但我无法找到一种有效的算法来删除两条边之间的所有点,这些点具有相同的斜率,且 CPU 利用率最低。目前所有的点都是类型
PointF
我正在使用以下函数计算斜率
private float Slope(PointF point1, PointF point2)
{
return (point2.Y - point1.Y) / (point2.X - point1.X);
}
任何关于此的指针都会有很大帮助。
【问题讨论】:
-
一个更具体的标题会很有帮助。
-
你能画一些ASCII艺术来表达你的意思吗?他们说一张图描绘一千个字,它真的可以帮助任何人理解你的要求。
标签: c# .net performance algorithm geometry