Rotate rectangle around a point

后端 未结 1 1241
悲&欢浪女
悲&欢浪女 2021-02-09 17:58

How would I get 4 points rotated a certain degrees around a pointer to form a rectangle? I can rotate a point around a point, but I can\'t offset it to make a rectangle that isn

相关标签:
1条回答
  • 2021-02-09 18:28

    If you can rotate a point around a point then it should be easy to rotate a rectangle - you just rotate 4 points.

    Here is a js function to rotate a point around an origin:

    function rotate_point(pointX, pointY, originX, originY, angle) {
        angle = angle * Math.PI / 180.0;
        return {
            x: Math.cos(angle) * (pointX-originX) - Math.sin(angle) * (pointY-originY) + originX,
            y: Math.sin(angle) * (pointX-originX) + Math.cos(angle) * (pointY-originY) + originY
        };
    }
    

    And then you can do this to each point. Here is an example: http://jsfiddle.net/dahousecat/4TtvU/

    Change the angle and hit run to see the result...

    0 讨论(0)
提交回复
热议问题