'Resize the ROI by scaling relative to *center*.
See setPos() for an explanation of the *update* and *finish* arguments.'

def scale(self, s, center=[0, 0], update=True, finish=True):

    c = self.mapToParent((Point(center) * self.state['size']))
    self.prepareGeometryChange()
    newSize = (self.state['size'] * s)
    c1 = self.mapToParent((Point(center) * newSize))
    newPos = ((self.state['pos'] + c) - c1)
    self.setSize(newSize, update=False)
    self.setPos(newPos, update=update, finish=finish)
