@@ -7820,8 +7820,21 @@ async def step_off_foil(
78207820 )
78217821
78227822 # Get the absolute locations for center front top and center back top
7823- back_location = well .get_absolute_location ("c" , "b" , "t" )
7824- front_location = well .get_absolute_location ("c" , "f" , "t" )
7823+ orientation = well .get_absolute_rotation ().z % 90
7824+ if orientation == 0 :
7825+ back_location = well .get_absolute_location ("c" , "b" , "t" )
7826+ front_location = well .get_absolute_location ("c" , "f" , "t" )
7827+ elif orientation == 90 :
7828+ back_location = well .get_absolute_location ("r" , "c" , "t" )
7829+ front_location = well .get_absolute_location ("l" , "c" , "t" )
7830+ elif orientation == 180 :
7831+ back_location = well .get_absolute_location ("c" , "f" , "b" )
7832+ front_location = well .get_absolute_location ("c" , "b" , "b" )
7833+ elif orientation == 270 :
7834+ back_location = well .get_absolute_location ("l" , "c" , "b" )
7835+ front_location = well .get_absolute_location ("r" , "c" , "b" )
7836+ else :
7837+ raise ValueError ("Rotation of well must be a multiple of 90 degrees" )
78257838
78267839 try :
78277840 # Then move all channels in the y-space simultaneously.
0 commit comments