[問題] 怎麼記錄不規則的座標值呢

作者: morningjis (morning)   2015-05-07 10:52:28
目前自己在學c#
寫求多邊形的面積
有找到程式碼,如下
float area_of_polygon(int vcount,float x[],float y[])
{
int i;
float s;
if (vcount <3) return 0;
s=y[0]*(x[vcount-1]-x[1]);
for (i=1;i <vcount;i++)
s+=y[i]*(x[(i-1)]-x[(i+1)%vcount]);
return s/2;
}
目前已知的是
應該是記錄邊緣座標值即可
有個小問題就是
好像需要順時針的去記錄座標值
那想請教的就是
怎麼記錄不規則形的座標呢
像是
(2,1) (3,1)
(1,2) (3,2)
(2,3) (4,3)
(2,4) (3,4) (4,4)
謝謝!
作者: GoalBased (Artificail Intelligence)   2015-05-07 11:06:00
你的多邊形怎麼來的?更正*多邊形座標
作者: morningjis (morning)   2015-05-07 11:20:00
二值化後取的邊緣!
作者: GoalBased (Artificail Intelligence)   2015-05-07 12:00:00
你相同的點,不是有可能產生不同的多邊形嗎?
作者: morningjis (morning)   2015-05-07 16:56:00
因為我是新手,所以也不確定會不會^^
作者: Litfal (Litfal)   2015-05-08 00:29:00
會...你隨便畫個三角形,內部隨便加一點,然後玩連連看就知道了
作者: ypsc (愛愛愛)   2015-05-11 23:47:00
參考點 相對座標

Links booklink

Contact Us: admin [ a t ] ucptt.com