我有这段代码来找出是否4 x,y坐标使矩形工作得很好,但是,我需要使它只有当点输入正确顺序,即: 点#1:点#2:点#3:点#4:会说: “是矩形” 但: 点#1:点#2:点#3:点#4:会说:“是不是矩形”(因为点的正确顺序的arent)C点形成矩形
这是我有:
static bool IsRectangle(float x1, float y1, float x2, float y2,
float x3, float y3, float x4, float y4)
{
x2 -= x1; x3 -= x1; x4 -= x1; y2 -= y1; y3 -= y1; y4 -= y1;
return
(x2 + x3 == x4 && y2 + y3 == y4 && x2 * x3 == -y2 * y3) ||
(x2 + x4 == x3 && y2 + y4 == y3 && x2 * x4 == -y2 * y4) ||
(x3 + x4 == x2 && y3 + y4 == y2 && x3 * x4 == -y3 * y4);
}
林完全不确定如何限制它只能以正确的顺序工作... :( 谢谢
“按照正确的顺序”,你的意思是从左下角开始,或者逆时针从任何顶点开始? – 2014-11-02 18:56:46