contrib/brl/bseg/segv/segv_vil_menus.cxx

Go to the documentation of this file.
00001 #include "segv_vil_menus.h"
00002 //:
00003 // \file
00004 #include <vgui/vgui.h>
00005 #include <vgui/vgui_key.h>
00006 #include <vgui/vgui_menu.h>
00007 #include "segv_vil_segmentation_manager.h"
00008 
00009 //Static munu callback functions
00010 
00011 void segv_vil_menus::quit_callback()
00012 {
00013   segv_vil_segmentation_manager::instance()->quit();
00014 }
00015 
00016 
00017 void segv_vil_menus::load_image_callback()
00018 {
00019   segv_vil_segmentation_manager::instance()->load_image();
00020 }
00021 
00022 void segv_vil_menus::save_image_callback()
00023 {
00024   segv_vil_segmentation_manager::instance()->save_image();
00025 }
00026 
00027 void segv_vil_menus::save_camera_callback()
00028 {
00029   segv_vil_segmentation_manager::instance()->save_nitf_camera();
00030 }
00031 
00032 void segv_vil_menus::remove_image_callback()
00033 {
00034   segv_vil_segmentation_manager::instance()->remove_image();
00035 }
00036 
00037 
00038 void segv_vil_menus::convert_to_grey_callback()
00039 {
00040   segv_vil_segmentation_manager::instance()->convert_to_grey();
00041 }
00042 
00043 void segv_vil_menus::set_range_params_callback()
00044 {
00045   segv_vil_segmentation_manager::instance()->set_range_params();
00046 }
00047 
00048 void segv_vil_menus::clear_display_callback()
00049 {
00050   segv_vil_segmentation_manager::instance()->clear_display();
00051 }
00052 
00053 void segv_vil_menus::threshold_image_callback()
00054 {
00055   segv_vil_segmentation_manager::instance()->threshold_image();
00056 }
00057 
00058 void segv_vil_menus::harris_corners_callback()
00059 {
00060   segv_vil_segmentation_manager::instance()->harris_corners();
00061 }
00062 
00063 void segv_vil_menus::nonmaximal_suppression_callback()
00064 {
00065   segv_vil_segmentation_manager::instance()->nonmaximal_suppression();
00066 }
00067 
00068 void segv_vil_menus::vd_edges_callback()
00069 {
00070   segv_vil_segmentation_manager::instance()->vd_edges();
00071 }
00072 
00073 void segv_vil_menus::fit_lines_callback()
00074 {
00075   segv_vil_segmentation_manager::instance()->fit_lines();
00076 }
00077 
00078 void segv_vil_menus::fit_conics_callback()
00079 {
00080   segv_vil_segmentation_manager::instance()->fit_conics();
00081 }
00082 
00083 void segv_vil_menus::fit_overlay_conics_callback()
00084 {
00085   segv_vil_segmentation_manager::instance()->fit_overlay_conics();
00086 }
00087 
00088 void segv_vil_menus::regions_callback()
00089 {
00090   segv_vil_segmentation_manager::instance()->regions();
00091 }
00092 
00093 void segv_vil_menus::rotate_image_callback()
00094 {
00095   segv_vil_segmentation_manager::instance()->rotate_image();
00096 }
00097 
00098 void segv_vil_menus::reduce_image_callback()
00099 {
00100   segv_vil_segmentation_manager::instance()->reduce_image();
00101 }
00102 
00103 void segv_vil_menus::reduce_image_bicubic_callback()
00104 {
00105   segv_vil_segmentation_manager::instance()->reduce_image_bicubic();
00106 }
00107 
00108 void segv_vil_menus::expand_image_callback()
00109 {
00110   segv_vil_segmentation_manager::instance()->expand_image();
00111 }
00112 
00113 void segv_vil_menus::expand_image_bicubic_callback()
00114 {
00115   segv_vil_segmentation_manager::instance()->expand_image_bicubic();
00116 }
00117 
00118 void segv_vil_menus::flip_image_lr_callback()
00119 {
00120   segv_vil_segmentation_manager::instance()->flip_image_lr();
00121 }
00122 
00123 void segv_vil_menus::display_images_as_color_callback()
00124 {
00125   segv_vil_segmentation_manager::instance()->display_images_as_color();
00126 }
00127 
00128 void segv_vil_menus::add_images_callback()
00129 {
00130   segv_vil_segmentation_manager::instance()->add_images();
00131 }
00132 
00133 void segv_vil_menus::subtract_images_callback()
00134 {
00135   segv_vil_segmentation_manager::instance()->subtract_images();
00136 }
00137 
00138 void segv_vil_menus::negate_image_callback()
00139 {
00140   segv_vil_segmentation_manager::instance()->negate_image();
00141 }
00142 
00143 void segv_vil_menus::entropy_callback()
00144 {
00145   segv_vil_segmentation_manager::instance()->entropy();
00146 }
00147 
00148 void segv_vil_menus::minfo_callback()
00149 {
00150   segv_vil_segmentation_manager::instance()->minfo();
00151 }
00152 
00153 void segv_vil_menus::max_trace_scale_callback()
00154 {
00155   segv_vil_segmentation_manager::instance()->max_trace_scale();
00156 }
00157 
00158 void segv_vil_menus::inline_viewer_callback()
00159 {
00160   segv_vil_segmentation_manager::instance()->inline_viewer();
00161 }
00162 
00163 void segv_vil_menus::intensity_profile_callback()
00164 {
00165   segv_vil_segmentation_manager::instance()->intensity_profile();
00166 }
00167 
00168 void segv_vil_menus::intensity_histogram_callback()
00169 {
00170   segv_vil_segmentation_manager::instance()->intensity_histogram();
00171 }
00172 
00173 // JIM PROJECT POINTS
00174 void segv_vil_menus::project_points_callback()
00175 {
00176   segv_vil_segmentation_manager::instance()->project_points();
00177 }
00178 
00179 //segv_vil_menus definition
00180 vgui_menu segv_vil_menus::get_menu()
00181 {
00182   vgui_menu menubar;
00183   vgui_menu menufile;
00184   vgui_menu menuview;
00185   vgui_menu menuedit;
00186   vgui_menu menuops;
00187   //file menu entries
00188   menufile.add( "Quit", quit_callback,(vgui_key)'q', vgui_CTRL);
00189   menufile.add( "Load Image", load_image_callback,(vgui_key)'l', vgui_CTRL);
00190   menufile.add( "Save Image", save_image_callback);
00191   menufile.add( "Save NITF Camera", save_camera_callback);
00192 
00193   //view menu entries
00194   menuview.add("Remove Image", remove_image_callback);
00195   menuview.add("Clear Spatial Objects", clear_display_callback);
00196   menuview.add("Intensity Profile", intensity_profile_callback);
00197   menuview.add("Set Range Params", set_range_params_callback);
00198   menuview.add("Inline Histogram Viewer", inline_viewer_callback);
00199   menuview.add("Histogram Plot ", intensity_histogram_callback);
00200   menuview.add("RotateImage ", rotate_image_callback);
00201   menuview.add("ReduceImage(Burt)", reduce_image_callback);
00202   menuview.add("ReduceImage(bicubic)", reduce_image_bicubic_callback);  
00203   menuview.add("ExpandImage(Burt) ", expand_image_callback);
00204   menuview.add("ExpandImage(bicubic) ", expand_image_bicubic_callback);
00205   menuview.add("Flip Image (LR)", flip_image_lr_callback);
00206   menuview.add("Images as Color", display_images_as_color_callback);
00207   menuview.add("Project Points RPC", project_points_callback);
00208   //edit menu entries
00209 
00210   menuedit.add("Threshold", threshold_image_callback);
00211   menuedit.add("Harris", harris_corners_callback);
00212   menuedit.add("VD Edges", vd_edges_callback);
00213   menuedit.add("Line Segments", fit_lines_callback);
00214   menuedit.add("Conic Segments", fit_conics_callback);
00215   menuedit.add("Overlay Conic Segments", fit_overlay_conics_callback);
00216   menuedit.add("Edgel Regions", regions_callback);
00217   menuedit.add("Non-Maximal Suppression", nonmaximal_suppression_callback);
00218 
00219   //operation menu entries
00220   menuops.add("Convert To Greyscale:", convert_to_grey_callback);
00221   menuops.add("Add Images:", add_images_callback);
00222   menuops.add("Subtract Images:", subtract_images_callback);
00223 
00224   menuops.add("Negate Image:", negate_image_callback);
00225   menuops.add("Entropy", entropy_callback);
00226   menuops.add("Mutal Information", minfo_callback);
00227   menuops.add("Max Trace Scale",  max_trace_scale_callback);
00228 
00229   //Top level menu layout
00230   menubar.add( "File", menufile);
00231   menubar.add( "View", menuview);
00232   menubar.add( "Edit", menuedit);
00233   menubar.add( "Image Ops", menuops);
00234   return menubar;
00235 }
00236 

Generated on Mon Oct 6 05:24:40 2008 for contrib/brl/bseg/segv by  doxygen 1.5.1