C#初学者求教大神。。。感谢啊!!!
已知一条折线由6个点vi组成,i=012345。并知道这六个点的坐标。。。。θi是由V0V1构成的 向量与ViVi+1构成的向量按逆时针方向形成的夹角。若在点Vi时有(θmax-θmin)>=180度。则记录点Vi。。。。{θmax,,θmin属于(θ0。θ1.....θn-1)}。。。用C#实现
2011-04-29 10:15
程序代码:private List<Point> getpoints(Point[] p)
{
List<Point> res = new List<Point>();
if (p.Length != 6)
{
return null;
}
for (int i = 2; i < 6; i++)
{
double xc3 = p[i - 2].Y + ((p[i].X - p[i - 2].X) / ((double)(p[i - 1].X - p[i - 2].X))) * ((double)(p[i - 1].Y - p[i - 2].Y));
if (xc3 > p[i - 1].Y)//y点在上方 >180
{
res.Add(p[i]);
}
}
return res;
}

2011-04-29 12:50