首页 > 已知扇形角度,半径,求其中一个角的坐标

已知扇形角度,半径,求其中一个角的坐标

情况一:

白色线的圆,将其四等份,变成四个扇形

第一个扇形是右上角,依次为右下角,左下角,左上角

在处理第一个扇形的时候,我会画一条垂直的线,从图中的样子看就是从90°到A点那里的这条线

这个时候我要知道B点的坐标位置,当我知道了B点的坐标位置时,又以B点作为基础画一个扇形

找到C点的坐标位置,以此类推

情况二 :

将图中的圆,划为三等分,画图顺序和【情况一】一样,都是先画了一条边

然后要知道扇形另一条边的X,Y坐标

现在就是困在这个地方,求一个公式,JS代码。


<!DOCTYPE html>
<html>
<head>

<title>圆角坐标</title>
<meta charset="utf-8"/>

</head>
<body>

<p></p>

<script type="text/javascript">
    

    function cal (x,y,r,n) {
        var res = [];
        var th = n*2*Math.PI/360;
        for (var i = 0; ; i++) {
            if (n*i<360) {
                point = "("+(x+r*Math.sin(th*i))+","+(y-r*Math.cos(th*i))+")";
                res.push(point);
            }else{
                break;
            }
        };
        document.getElementsByTagName('p')[0].innerHTML = res;
    }

    window.onload = function(){
        var x = 300;
        var y = 300;
        var r = 100;
        var n = 120;
        cal(x,y,r,n);
    }
    
</script>

</body>
</html>

个人感觉这样应该可以完成,x、y、r、n都是可以改的,限定旋转在一圈以内。


简单起见,我用复数表示边,不懂的反思自己高中是怎么过的

一个复数(x0,y0)逆时针旋转120度,相当于和(-1/2, 根号3/2)作乘法,因此用复数乘法公式可求出下一条边。再求一次乘法,则可得第三边

【热门文章】
【热门文章】