contrib/brl/bmvl/bmvv/bmvv_f_menus.cxx
Go to the documentation of this file.
00001 #include "bmvv_f_menus.h"
00002 //:
00003 // \file
00004 #include <vgui/vgui.h>
00005 #include <vgui/vgui_key.h>
00006 #include <vgui/vgui_menu.h>
00007 #include <bmvv/bmvv_f_manager.h>
00008 
00009 //Static munu callback functions
00010 //Static munu callback functions
00011 
00012 void bmvv_f_menus::quit_callback()
00013 {
00014   bmvv_f_manager::instance()->quit();
00015 }
00016 
00017 
00018 void bmvv_f_menus::load_image_callback()
00019 {
00020   bmvv_f_manager::instance()->load_image();
00021 }
00022 
00023 void bmvv_f_menus::load_image_and_cam_callback()
00024 {
00025   bmvv_f_manager::instance()->load_image_and_cam();
00026 }
00027 
00028 void bmvv_f_menus::save_image_callback()
00029 {
00030   bmvv_f_manager::instance()->save_image();
00031 }
00032 
00033 
00034 void bmvv_f_menus::clear_display_callback()
00035 {
00036   bmvv_f_manager::instance()->clear_display();
00037 }
00038 
00039 void bmvv_f_menus::read_corrs_callback()
00040 {
00041   bmvv_f_manager::instance()->read_corrs();
00042 }
00043 
00044 void bmvv_f_menus::load_world_callback()
00045 {
00046   bmvv_f_manager::instance()->load_world();
00047 }
00048 
00049 void bmvv_f_menus::save_world_callback()
00050 {
00051   bmvv_f_manager::instance()->save_world();
00052 }
00053 
00054 void bmvv_f_menus::reconstruct_world_callback()
00055 {
00056   bmvv_f_manager::instance()->reconstruct_world();
00057 }
00058 
00059 void bmvv_f_menus::save_corrs_callback()
00060 {
00061   bmvv_f_manager::instance()->save_corrs();
00062 }
00063 
00064 void bmvv_f_menus::display_corrs_callback()
00065 {
00066   bmvv_f_manager::instance()->display_corrs();
00067 }
00068 
00069 void bmvv_f_menus::project_world_callback()
00070 {
00071   bmvv_f_manager::instance()->project_world();
00072 }
00073 
00074 void bmvv_f_menus::read_f_matrix_callback()
00075 {
00076   bmvv_f_manager::instance()->read_f_matrix();
00077 }
00078 
00079 void bmvv_f_menus::save_f_matrix_callback()
00080 {
00081   bmvv_f_manager::instance()->save_f_matrix();
00082 }
00083 
00084 void bmvv_f_menus::display_right_epi_lines_callback()
00085 {
00086   bmvv_f_manager::instance()->display_right_epi_lines();
00087 }
00088 
00089 void bmvv_f_menus::display_picked_epi_line_callback()
00090 {
00091   bmvv_f_manager::instance()->display_picked_epi_line();
00092 }
00093 
00094 void bmvv_f_menus::create_correspondence_callback()
00095 {
00096   bmvv_f_manager::instance()->create_correspondence();
00097 }
00098 
00099 void bmvv_f_menus::pick_correspondence_callback()
00100 {
00101   bmvv_f_manager::instance()->pick_correspondence();
00102 }
00103 
00104 void bmvv_f_menus::compute_f_matrix_callback()
00105 {
00106   bmvv_f_manager::instance()->compute_f_matrix();
00107 }
00108 
00109 void bmvv_f_menus::set_range_params_callback()
00110 {
00111   bmvv_f_manager::instance()->set_range_params();
00112 }
00113 
00114 void bmvv_f_menus::intensity_profile_callback()
00115 {
00116   bmvv_f_manager::instance()->intensity_profile();
00117 }
00118 
00119 void bmvv_f_menus::intensity_histogram_callback()
00120 {
00121   bmvv_f_manager::instance()->intensity_histogram();
00122 }
00123 
00124 //bmvv_f_menus definition
00125 vgui_menu bmvv_f_menus::get_menu()
00126 {
00127   vgui_menu menubar;
00128   vgui_menu menufile;
00129   vgui_menu menuview;
00130   vgui_menu menuedit;
00131 
00132   //file menu entries
00133   menufile.add( "Quit(CTL-q)", quit_callback,(vgui_key)'q', vgui_CTRL);
00134   menufile.add( "Load Image(CTL-l)", load_image_callback,(vgui_key)'l', vgui_CTRL);
00135   menufile.add( "Load Image and Camera", load_image_and_cam_callback);
00136   menufile.add( "Save Image", save_image_callback);
00137   menufile.add( "Read Correspondences", read_corrs_callback);
00138   menufile.add( "Save Correspondences", save_corrs_callback);
00139   menufile.add( "Load world", load_world_callback);
00140   menufile.add( "Save world", save_world_callback);
00141   menufile.add( "Read F Matrix", read_f_matrix_callback);
00142   menufile.add( "Save F Matrix", save_f_matrix_callback);
00143 
00144   //view menu entries
00145   menuview.add("Set Range Params", set_range_params_callback);
00146   menuview.add("Intensity Profile", intensity_profile_callback);
00147   menuview.add("Histogram Plot ", intensity_histogram_callback);
00148   menuview.add( "Clear Geometry(selected pane)", clear_display_callback);
00149   menuview.add( "Display Corrs", display_corrs_callback);
00150   menuview.add( "Display World", project_world_callback);
00151   menuview.add( "Display Right Epipolar Lines", display_right_epi_lines_callback);
00152   menuview.add( "Display Picked Epipolar Lines(d)", display_picked_epi_line_callback, (vgui_key)'d');
00153 
00154 
00155   //edit menu entries
00156   menuedit.add( "Create Correspondence(k)", create_correspondence_callback, (vgui_key)'k');
00157   menuedit.add( "Pick Correspondence(p)", pick_correspondence_callback,(vgui_key)'p');
00158   menuedit.add( "Compute F Matrix", compute_f_matrix_callback);
00159   menuedit.add( "Reconstruct World Points", reconstruct_world_callback);
00160 
00161   //operation menu entries
00162 
00163   //Top level menu layout
00164   menubar.add( "File", menufile);
00165   menubar.add( "View", menuview);
00166   menubar.add( "Edit", menuedit);
00167   return menubar;
00168 }
00169 
00170