如何确保形状有直角

时间:2016-10-25 22:56:38

标签: javascript jquery

我正在寻找一种在图像上绘制形状,获取坐标,然后进行微小修正以获得完美正方形或菱形的方法。

我有一个平面图,我试图突出某些方面。由于我正在绘制图像,因此我无法始终获得完美的形状,手动更正需要时间。

我想绘制图像,然后将其传递给功能,确保每个角度为90度,或者固定坐标。形状总是方形或矩形。我想要的只是校正后的坐标,因此它们可以保存在文件中。

以下是我正在使用的图片样本以及一个位置: var loc6 = [{x:711,y:596},{x:787,y:595},{x:784,y:641},{x:711,y:641}];

https://imagebin.ca/v/2zjcnTJCRL2n

数学不是我最大的资产,我已经得到了下面的功能,但它只能在正方形上制作一个完美的正方形,并且会弄乱钻石。

function fixRectangle(coords){
    var precision = 8;
    if(coords[0].y - coords[1].y < precision){
        coords[0].y = coords[1].y;
    }

    if(coords[1].x - coords[0].x < precision){
        coords[0].x = coords[1].x;
    }

    if(coords[2].y - coords[3].y < precision){
        coords[2].y = coords[3].y;
    }

    if(coords[2].x - coords[3].x < precision){
        coords[2].x = coords[3].x;
    }

    return coords;
}

(如果需要,我会使用jquery)

感谢您的帮助!

0 个答案:

没有答案