@@ -583,33 +583,58 @@ def get_vr_projection_config(self, image :np.ndarray) -> dict:
583583 if image .shape [0 ] > 3000 or image .shape [1 ] > 3000 :
584584 image = cv2 .resize (image , None , fx = 0.5 , fy = 0.5 )
585585
586+ ui_texte = []
587+ if "keys" in config .keys ():
588+ for param in config ['keys' ].keys ():
589+ if param in config ['parameter' ].keys () and all (x in config ["keys" ][param ].keys () for x in ["increase" , "decrease" ]):
590+ ui_texte .append ("Use '{}', '{}' to increase/decrease {}" .format (
591+ config ["keys" ][param ]["increase" ],
592+ config ["keys" ][param ]["decrease" ],
593+ param )
594+ )
595+
586596 self .clear_keypress_queue ()
587597 parameter_changed , selected = True , False
588598 while not selected :
589599 if parameter_changed :
590600 parameter_changed = False
591601 preview = FFmpegStream .get_projection (image , config )
592602
593- preview = self .draw_text (preview , "Press 'q ' to use current selected region of interest)" ,
603+ preview = self .draw_text (preview , "Press 'space ' to use current selected region of interest)" ,
594604 y = 50 , color = (255 , 0 , 0 ))
595- preview = self .draw_text (preview , "VR Projection: Use 'w', 's' to move up/down to the region of interest" ,
596- y = 75 , color = (0 , 255 , 0 ))
605+ preview = self .draw_text (preview , "Press '0' (NULL) to reset view)" ,
606+ y = 75 , color = (255 , 0 , 0 ))
607+ for line , txt in enumerate (ui_texte ):
608+ preview = self .draw_text (preview , txt , y = 100 + (line * 25 ), color = (0 , 255 , 0 ))
597609
598610 cv2 .imshow (self .window_name , self .preview_scaling (preview ))
599611
600612 while self .keypress_queue .qsize () > 0 :
601613 pressed_key = '{0}' .format (self .keypress_queue .get ())
602- if pressed_key == "'q' " :
614+ if pressed_key == "Key.space " :
603615 selected = True
604616 break
605- elif pressed_key == "'w'" :
606- config ['parameter' ]['phi' ] = min ((80 , config ['parameter' ]['phi' ] + 5 ))
607- parameter_changed = True
608- elif pressed_key == "'s'" :
609- config ['parameter' ]['phi' ] = max ((- 80 , config ['parameter' ]['phi' ] - 5 ))
617+
618+ if pressed_key == "'0'" :
619+ config = copy .deepcopy (PROJECTION [self .params .projection ])
610620 parameter_changed = True
621+ break
622+
623+ if "keys" not in config .keys ():
624+ break
625+
626+ for param in config ['keys' ].keys ():
627+ if param in config ['parameter' ].keys () and all (x in config ["keys" ][param ].keys () for x in ["increase" , "decrease" ]):
628+ if pressed_key == "'" + config ["keys" ][param ]["increase" ] + "'" :
629+ config ['parameter' ][param ] += 5
630+ parameter_changed = True
631+ break
632+ elif pressed_key == "'" + config ["keys" ][param ]["decrease" ] + "'" :
633+ config ['parameter' ][param ] -= 5
634+ parameter_changed = True
635+ break
611636
612- if cv2 .waitKey (1 ) in [ord ('q ' )]: break
637+ if cv2 .waitKey (1 ) in [ord (' ' )]: break
613638
614639 self .__show_loading_screen (preview .shape )
615640 return config
0 commit comments