static void make_2nd_level_image_menu(){ int iflag_draw_m = send_iflag_draw_mesh(); int iflag_draw_p = send_iflag_draw_current_psf(); int iflag_draw_f = send_iflag_draw_fline(); int iflag_axis = send_object_property_flags(AXIS_TOGGLE); int iflag_draw_coast = send_object_property_flags(COASTLINE_SWITCH); int iflag_draw_sph = send_object_property_flags(SPHEREGRID_SWITCH); glut_menu_id->color_mode_menu = glutCreateMenu(color_mode_handler); glut_color_mode_menu_item(); glut_menu_id->polygon_id_menu = glutCreateMenu(object_property_handler); glut_draw_axis_menu_item(iflag_axis); glut_draw_coast_menu_item(iflag_draw_coast); glut_draw_sph_grid_menu_item(iflag_draw_sph); if ( (iflag_draw_coast != 0) || (iflag_draw_sph != 0)) { glutAddMenuEntry("Set Coastline radius",SET_COAST_RADIUS); }; glut_drawing_select(); if ( (iflag_draw_m > 0) && (iflag_draw_p == 0) && (iflag_draw_f == 0) ) { glutAddMenuEntry("Object distance",SET_DISTANCE_DOMAIN); }; glutAddMenuEntry("Output transfer matrices",OUTPUT_V_MATRIX); glutAddMenuEntry("Load transfer matrices",INPUT_V_MATRIX); glut_menu_id->draw_rot_image_menu = glutCreateMenu(draw_rot_image_handler); glutAddMenuEntry("x-axis",ROTATE_X); glutAddMenuEntry("y-axis",ROTATE_Y); glutAddMenuEntry("z-axis",ROTATE_Z); return; };
void glut_drawing_select() { int iflag_shade = send_object_property_flags(SHADING_SWITCH); int iflag_polygon = send_object_property_flags(POLYGON_SWITCH); if(iflag_shade == FLAT_SHADE ){ glutAddMenuEntry("flat => smooth",SHADING_SWITCH); } else{ glutAddMenuEntry("smooth => flat",SHADING_SWITCH); }; if(iflag_polygon== NORMAL_POLYGON ){ glutAddMenuEntry("normal => reverse",POLYGON_SWITCH); } else{ glutAddMenuEntry("reverse => normal",POLYGON_SWITCH); }; glutAddMenuEntry("size of node", SET_NODE_SIZE); return; }