proc save_viewpoint {} { global viewpoints if [info exists viewpoints] {unset viewpoints} # get the current matricies foreach mol [molinfo list] { set viewpoints($mol) [molinfo $mol get { center_matrix rotate_matrix scale_matrix global_matrix}] } } proc restore_viewpoint {} { global viewpoints foreach mol [molinfo list] { puts "Trying $mol" if [info exists viewpoints($mol)] { molinfo $mol set {center_matrix rotate_matrix scale_matrix global_matrix} $viewpoints($mol) } } }