def rotated(self, rotation_center, angle):
        """Returns a RotatedBox that is obtained by rotating this box around a given center by a given angle.

        >>> assert RotatedBox([2, 2], 2, 1, 0.1).rotated([1, 1], np.pi/2).approx_equal([0, 2], 2, 1, np.pi/2+0.1)
        """
        rot = np.array([[np.cos(angle), np.sin(angle)], [-np.sin(angle), np.cos(angle)]])
        t = np.asfarray(rotation_center)
        new_c = np.dot(rot.T, (self.center - t)) + t
        return RotatedBox(new_c, self.width, self.height, (self.angle+angle) % (np.pi*2))
def rotated ( self , rotation_center , angle ) : rot = np . array ( [ [ np . cos ( angle ) , np . sin ( angle ) ] , [ - np . sin ( angle ) , np . cos ( angle ) ] ] ) t = np . asfarray ( rotation_center ) new_c = np . dot ( rot . T , ( self . center - t ) ) + t return RotatedBox ( new_c , self . width , self . height , ( self . angle + angle ) % ( np . pi * 2 ) )
Returns a RotatedBox that is obtained by rotating this box around a given center by a given angle.

        >>> assert RotatedBox([2, 2], 2, 1, 0.1).rotated([1, 1], np.pi/2).approx_equal([0, 2], 2, 1, np.pi/2+0.1)