def align_clusters(dst, src, scale): """ Scale, rotate, translate srcLoc w.r.t. dst. """ assert(isinstance(src, Positions)) assert(isinstance(dst, Positions)) if scale: stitcher = AoAStitcher(reflectable=True) else: stitcher = DistStitcher() stitcher.align(dst, src)
def align_clusters(dst, src, scale): """ Scale, rotate, translate srcLoc w.r.t. dst. """ assert (isinstance(src, Positions)) assert (isinstance(dst, Positions)) if scale: stitcher = AoAStitcher(reflectable=True) else: stitcher = DistStitcher() stitcher.align(dst, src)
def test_aoa_stitcher(self): src = self.setup_positions([[0, 1, 2, 3, 4]]) dst = self.setup_positions([[0, 1, 2, 5, 6]]) #theta = 60/180.*pi #R = array([[cos(theta), -sin(theta)], [sin(theta), cos(theta)]]) #ccw #self.transform(src, R, [-1.62, -0.8], 0.5) #transform src positions self.transform(src) stitcher = AoAStitcher() stitcher.stitch(dst, src) rms = get_rms(self.test_cluster, dst) self.assertTrue(rms < 0.001, 'Stitching was not good enough.') self.assertTrue(len(dst) == 1, 'Wrong number of subclusters.')
def test_aoa_stitcher(self): src = self.setup_positions([[0, 1, 2, 3, 4]]) dst = self.setup_positions([[0, 1, 2, 5, 6]]) #theta = 60/180.*pi #R = array([[cos(theta), -sin(theta)], [sin(theta), cos(theta)]]) #ccw #self.transform(src, R, [-1.62, -0.8], 0.5) #transform src positions self.transform(src) stitcher = AoAStitcher() stitcher.stitch(dst, src) rms = get_rms(self.test_cluster, dst) self.assertTrue(rms<0.001, 'Stitching was not good enough.') self.assertTrue(len(dst)==1, 'Wrong number of subclusters.')