Exemplo n.º 1
0
void create_form_MainForm()
{
  FL_OBJECT *obj;
  MainForm = fl_bgn_form(FL_NO_BOX,280.0,180.0);
  obj = fl_add_box(FL_UP_BOX,0.0,0.0,280.0,180.0,"");
  QuitButton = obj = fl_add_button(FL_NORMAL_BUTTON,200.0,70.0,60.0,40.0,"Quit");
    fl_set_object_lsize(obj,FL_LARGE_FONT);
    fl_set_call_back(obj,QuitProc,0);
  DrawButton = obj = fl_add_button(FL_NORMAL_BUTTON,20.0,70.0,150.0,40.0,"New Line");
    fl_set_object_lsize(obj,FL_LARGE_FONT);
    fl_set_call_back(obj,DrawButtonProc,0);
  UndoButton = obj = fl_add_button(FL_NORMAL_BUTTON,20.0,20.0,90.0,40.0,"Undo");
    fl_set_object_lsize(obj,FL_LARGE_FONT);
    fl_set_call_back(obj,UndoButtonProc,0);
  VertexButton = obj = fl_add_lightbutton(FL_PUSH_BUTTON,130.0,20.0,130.0,40.0,"Vertices Only");
    fl_set_call_back(obj,VertexButtonProc,0);
  obj = fl_add_text(FL_NORMAL_TEXT,0.0,110.0,280.0,50.0,"Click RIGHT mouse button on an\n object to draw lines.");
    fl_set_object_lcol(obj,4);
    fl_set_object_align(obj,FL_ALIGN_CENTER);
    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
  obj = fl_add_text(FL_NORMAL_TEXT,0.0,150.0,280.0,30.0,"GRAFFITI");
    fl_set_object_align(obj,FL_ALIGN_CENTER);
    fl_set_object_lstyle(obj,FL_BOLD_STYLE);
  fl_end_form();
}
Exemplo n.º 2
0
static void g3d_create_retract_strat_frame(void){
  g3d_create_labelframe(&RETRACT_STRAT_FRAME,FL_ENGRAVED_FRAME,-1,-1,"Retract Strat",(void**)&NODE_FRAME,0);
  RETRACT_STRAT_GROUP = fl_bgn_group();
  //Glob Search
  g3d_create_checkbutton(&GLOBAL_SEARCH_CHECKB,FL_RADIO_BUTTON,-1,20,"Glob search",(void**)&RETRACT_STRAT_FRAME,0);
  fl_set_object_color(GLOBAL_SEARCH_CHECKB,FL_MCOL,FL_GREEN);
  fl_set_call_back(GLOBAL_SEARCH_CHECKB,CB_RetractPlan_strategy,(long)GLOBAL_SEARCH_CHECKB);
  //Forw Search
  g3d_create_checkbutton(&FORW_SEARCH_CHECKB,FL_RADIO_BUTTON,-1,20,"Forw search",(void**)&RETRACT_STRAT_FRAME,0);
  fl_set_object_color(FORW_SEARCH_CHECKB,FL_MCOL,FL_GREEN);
  fl_set_call_back(FORW_SEARCH_CHECKB,CB_RetractPlan_strategy,(long)FORW_SEARCH_CHECKB);
  //Linear Search
  g3d_create_checkbutton(&LINEAR_SEARCH_CHECKB,FL_RADIO_BUTTON,-1,20,"Linear search",(void**)&RETRACT_STRAT_FRAME,0);
  fl_set_object_color(LINEAR_SEARCH_CHECKB,FL_MCOL,FL_GREEN);
  fl_set_call_back(LINEAR_SEARCH_CHECKB,CB_RetractPlan_strategy,(long)LINEAR_RETRACT_SEARCH);
  //RETRACT_STRAT_GROUP =
  fl_end_group();
  switch (p3d_get_retract_search_type()){
    case (ALL_RETRACT_SEARCH):{
      fl_set_button(GLOBAL_SEARCH_CHECKB,1);
    break;
    }
    case (FORWARD_RETRACT_SEARCH):{
      fl_set_button(FORW_SEARCH_CHECKB,1);
    break;
    }
    case (LINEAR_RETRACT_SEARCH):{
      fl_set_button(LINEAR_SEARCH_CHECKB,1);
    break;
    }
  }
}
Exemplo n.º 3
0
static void g3d_create_vis_graph_frame(void){
  g3d_create_frame(&VIS_GRAPH_FRAME,FL_NO_FRAME,155,-1,"",(void**)&PATH_DEFORM_FORM,1);
  //vis graph
  g3d_create_xyplot(&VIS_GRAPH_XYPLOT,FL_POINTS_XYPLOT,150,150,"",(void**)&VIS_GRAPH_FRAME,0);
  fl_set_xyplot_inspect(VIS_GRAPH_XYPLOT,1);//set the xyplot reagent to mouse events
  fl_set_object_color(VIS_GRAPH_XYPLOT, FL_SLATEBLUE, FL_WHITE);
  fl_set_call_back(VIS_GRAPH_XYPLOT,CB_vis_graph_xyplot,0);
  //Draw
  g3d_create_button(&DRAW_BUTTON,FL_NORMAL_BUTTON,50.0,30.0,"Draw",(void**)&VIS_GRAPH_FRAME,0);
  fl_set_call_back(DRAW_BUTTON,CB_draw_button,0);
  //space 2
  g3d_create_frame(&SPACE2,FL_NO_FRAME,40,-1,"",(void**)&VIS_GRAPH_FRAME,0);
  //Cancel
  g3d_create_button(&CANCEL_BUTTON,FL_NORMAL_BUTTON,50.0,30.0,"Cancel",(void**)&VIS_GRAPH_FRAME,0);
  fl_set_call_back(CANCEL_BUTTON,CB_cancel_button,0);
}
Exemplo n.º 4
0
static void g3d_create_nbretract_input(void){
  char buffer [10];
  g3d_create_input(&NBRETRACT_INPUT,FL_NORMAL_INPUT,20,20,"nbRetract",(void**)&PATH_DEFORM_FORM,1);
  sprintf(buffer, "%d", p3d_get_nretract_max());
  fl_set_input(NBRETRACT_INPUT, buffer);
  fl_set_call_back(NBRETRACT_INPUT,CB_nbretract_input,0);
}
Exemplo n.º 5
0
static void g3d_create_gvis_checkb(void){
  g3d_create_checkbutton(&GVIS_CHECKB,FL_PUSH_BUTTON,-1,-1,"Enable Gvis",(void**)&PATH_DEFORM_FORM,1);
  fl_set_object_color(GVIS_CHECKB,FL_MCOL,FL_GREEN);
  fl_set_call_back(GVIS_CHECKB,CB_gvis_checkb,0);
  if (p3d_get_gvis())
    fl_set_button(GVIS_CHECKB,1);
}
Exemplo n.º 6
0
void g3d_create_steering_form(void)
{int i;
 double s;

  s = P3D_NB_LOCAL_PLANNER*20.0 + 20;

  BUTTON_TAB_OBJ = (FL_OBJECT  **) malloc(P3D_NB_LOCAL_PLANNER*sizeof(FL_OBJECT  *));

  STEERING_FORM = fl_bgn_form(FL_UP_BOX,200.0,s+30);

  obj1 = fl_add_frame(FL_ENGRAVED_FRAME,10,15,180,s,""); 
  obj2 = fl_add_box(FL_FLAT_BOX,55,10,90,10,"Steering methods");

  GROUP = fl_bgn_group();

  for(i=0;i<P3D_NB_LOCAL_PLANNER;i++){
    BUTTON_TAB_OBJ[i] = fl_add_checkbutton(FL_RADIO_BUTTON,45,25+i*20.0,55,25,p3d_local_getname_planner((p3d_localpath_type) i));
    fl_set_object_color(BUTTON_TAB_OBJ[i],FL_MCOL,FL_GREEN);
    fl_set_call_back(BUTTON_TAB_OBJ[i],CB_button_tab_obj,i);
  }

  fl_set_button(BUTTON_TAB_OBJ[p3d_local_get_planner()],1);

  //GROUP = 
  fl_end_group();

  fl_end_form();
}
Exemplo n.º 7
0
/* -------------------- MAIN GROUP --------------------- */
static void g3d_create_grasp_planning_group(void)
{
  int x, y, dy, w, h, shift;
  FL_OBJECT *frame= NULL, *box= NULL;

  frame = fl_add_labelframe(FL_ENGRAVED_FRAME, 18, 235, 185, 330, "Interface");
  box = fl_add_box(FL_ENGRAVED_FRAME, 23, 250, 175, 310, "");
  fl_set_object_color(box, FL_GREEN, FL_COL1);


  MOTIONGROUP = fl_bgn_group();

  x= 30;
  y= 20;
  w= 160;
  h= 40;
  dy= h + 10;
  shift= 40;
  BT_1_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Test");
  BT_2_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + dy, w, h, "SAHandRight");
  BT_3_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + 2*dy, w, h, "Double Grasp");
  BT_4_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + 3*dy, w, h, "Display grasps");


  BT_5_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 4*dy, w, h, "Selected Object: none");
  BT_6_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 5*dy, w, h, "Selected Hand Robot: none");
  BT_7_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 6*dy, w, h, "Browse Grasps");
  BT_8_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 7*dy, w, h, "Delete Grasp");
  BT_9_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 8*dy, w, h, "Add Grasp");
  BT_10_OBJ = fl_add_button(FL_NORMAL_BUTTON, x, y + shift + 9*dy, w, h, "Save Grasps");


  fl_set_call_back(BT_1_OBJ, CB_test, 0);
  fl_set_call_back(BT_2_OBJ, CB_SAHandRight, 0);
  fl_set_call_back(BT_3_OBJ, CB_double_grasp, 0);
  fl_set_call_back(BT_4_OBJ, CB_display_grasps, 0);

  fl_set_object_color(BT_4_OBJ,FL_MCOL,FL_GREEN);
  fl_set_call_back(BT_5_OBJ, CB_select_object, 0);
  fl_set_call_back(BT_6_OBJ, CB_select_hand_robot, 0);
  fl_set_call_back(BT_7_OBJ, CB_browse_grasps, 0);
  fl_set_call_back(BT_8_OBJ, CB_delete_grasp, 0);
  fl_set_call_back(BT_9_OBJ, CB_add_grasp, 0);
  fl_set_call_back(BT_10_OBJ, CB_save_grasps, 0);

  fl_end_group();
}
Exemplo n.º 8
0
static void g3d_create_ndraw_counter(void){
  g3d_create_counter(&NDRAW_COUNTER,FL_SIMPLE_COUNTER,50,15,"ndraw",(void**)&PATH_DEFORM_FORM,1);
  fl_set_counter_value(NDRAW_COUNTER, 100);
  fl_set_counter_bounds(NDRAW_COUNTER, 1,(double)p3d_get_nretract());
  fl_set_counter_precision(NDRAW_COUNTER, 0);
  fl_set_counter_step(NDRAW_COUNTER, 1, 10);
  fl_set_call_back(NDRAW_COUNTER,CB_ndraw_counter,0);
}
Exemplo n.º 9
0
static void g3d_create_retract_frame(void){
  g3d_create_frame(&RETRACT_FRAME,FL_ENGRAVED_FRAME,-1,-1,"",(void**)&PATH_DEFORM_FORM,1);
  g3d_create_checkbutton(&CYCLE_CHECKB,FL_PUSH_BUTTON,-1,-1,"Cycle",(void**)&RETRACT_FRAME,0);
  fl_set_object_color(CYCLE_CHECKB,FL_MCOL,FL_GREEN);
  fl_set_call_back(CYCLE_CHECKB,CB_cycle_checkb,0);
  if (p3d_get_cycles())
    fl_set_button(CYCLE_CHECKB,1);
  g3d_create_checkbutton(&RETRACT_CHECKB,FL_PUSH_BUTTON,-1,-1,"Retract",(void**)&RETRACT_FRAME,0);
  fl_set_object_color(RETRACT_CHECKB,FL_MCOL,FL_GREEN);
  fl_set_call_back(RETRACT_CHECKB,CB_retract_checkb,0);
  if (p3d_get_test_reductib())
    fl_set_button(RETRACT_CHECKB,1);
  g3d_create_checkbutton(&DISCREET_CHECKB,FL_PUSH_BUTTON,-1,-1,"Discreet",(void**)&RETRACT_FRAME,0);
  fl_set_object_color(DISCREET_CHECKB,FL_MCOL,FL_GREEN);
  fl_set_call_back(DISCREET_CHECKB,CB_discreet_checkb,0);
  if (p3d_get_is_visibility_discreet())
    fl_set_button(DISCREET_CHECKB,1);
}
Exemplo n.º 10
0
static void g3d_create_node_frame(void){
  char buffer[10];
  g3d_create_frame(&NODE_FRAME,FL_NO_FRAME,120,-1,"",(void**)&PATH_DEFORM_FORM,1);
  //add Node
  g3d_create_button(&ADD_NODE_BUTTON,FL_NORMAL_BUTTON,55,20,"Add Node",(void**)&NODE_FRAME,0);
  fl_set_call_back(ADD_NODE_BUTTON,CB_add_node_button,0);
  //Last Node
  g3d_create_button(&LAST_NODE_BUTTON,FL_NORMAL_BUTTON,55,20,"Last Node",(void**)&NODE_FRAME,0);
  fl_set_call_back(LAST_NODE_BUTTON,CB_last_node_button,0);
  //Replot
  g3d_create_button(&REPLOT_BUTTON,FL_NORMAL_BUTTON,55,20,"Replot",(void**)&NODE_FRAME,0);
  fl_set_call_back(REPLOT_BUTTON,CB_replot_button,0);
  //Clear
  g3d_create_button(&CLEAR_BUTTON,FL_NORMAL_BUTTON,55,20,"Clear",(void**)&NODE_FRAME,0);
  fl_set_call_back(CLEAR_BUTTON,CB_clear_button,0);
  //Node counter
  g3d_create_counter(&NODE_COUNTER,FL_NORMAL_COUNTER,100,20,"Node",(void**)&NODE_FRAME,0);
  fl_set_counter_value(NODE_COUNTER, 0);
  if(XYZ_GRAPH != NULL) {
    fl_set_counter_bounds(NODE_COUNTER, 0, (double)( XYZ_GRAPH->nnode -1));
  } else {
    fl_set_counter_bounds(NODE_COUNTER, 0, 0);
  }
  fl_set_counter_step(NODE_COUNTER, 1, 10);
  fl_set_counter_precision(NODE_COUNTER, 0);
  fl_set_call_back(NODE_COUNTER,CB_node_counter,0);
  //Plot all Check box
  g3d_create_checkbutton(&PLOT_ALL_CHECKB,FL_PUSH_BUTTON,-1,20,"Plot all",(void**)&NODE_FRAME,0);
  fl_set_object_color(PLOT_ALL_CHECKB,FL_MCOL,FL_GREEN);
  fl_set_call_back(PLOT_ALL_CHECKB,CB_plot_all_checkb,0);
  if (FLAG_IS_ALLPLOT)
    fl_set_button(PLOT_ALL_CHECKB,1);
  //Plot all input
  g3d_create_input(&PLOT_ALL_INPUT,FL_NORMAL_INPUT,40,20,"",(void**)&NODE_FRAME,0);
  sprintf(buffer, "%d", p3d_get_Nstep());
  fl_set_input(PLOT_ALL_INPUT, buffer);
  fl_set_call_back(PLOT_ALL_INPUT,CB_plot_all_input,0);
  //Filter graph
  g3d_create_checkbutton(&FILTER_GRAPH_CHECKB,FL_PUSH_BUTTON,-1,20,"Filter graph",(void**)&NODE_FRAME,0);
  fl_set_object_color(FILTER_GRAPH_CHECKB,FL_MCOL,FL_GREEN);
  fl_set_call_back(FILTER_GRAPH_CHECKB,CB_filter_graph_checkb,0);
  if (p3d_get_show_cycle_only())
    fl_set_button(FILTER_GRAPH_CHECKB,1);
  //Retract strat frame
  g3d_create_retract_strat_frame();
}
Exemplo n.º 11
0
void create_form_PickInfoForm()
{
  FL_OBJECT *obj;
  PickInfoForm = fl_bgn_form(FL_NO_BOX,295.0,165.0);
  obj = fl_add_box(FL_UP_BOX,0.0,0.0,295.0,165.0,"");
  obj = fl_add_text(FL_NORMAL_TEXT,15.0,135.0,255.0,15.0,"The cursor is not pointing at an object.");
  DoneButton = obj = fl_add_button(FL_NORMAL_BUTTON,220.0,10.0,60.0,40.0,"OK");
    fl_set_object_lsize(obj,FL_LARGE_FONT);
    fl_set_call_back(obj,DoneButtonProc,0);
  obj = fl_add_text(FL_NORMAL_TEXT,5.0,115.0,280.0,15.0,"Click the right mouse button on any object");
  obj = fl_add_text(FL_NORMAL_TEXT,10.0,95.0,270.0,15.0,"in the geomview window to draw.  If you");
  obj = fl_add_text(FL_NORMAL_TEXT,5.0,75.0,270.0,15.0,"have no objects to draw on, you may load");
  obj = fl_add_text(FL_NORMAL_TEXT,20.0,55.0,240.0,15.0,"one with the geomview Load button.");
  fl_end_form();
}
Exemplo n.º 12
0
static void g3d_create_genom_group(void) {
	int x, y, dy, w, h;
	FL_OBJECT *obj;

	obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 5, 15, 140, 870, "Genom Requests");

	GENOMGROUP = fl_bgn_group();

	x= 15;
	y= 30;
	w= 120;
	h= 40;
	dy= h + 10;

         BT_SET_CARTESIAN = fl_add_button(FL_RADIO_BUTTON, x, y, w, h, "Set Cartesian");
	fl_set_call_back(BT_SET_CARTESIAN, CB_set_cartesian, 1);
	fl_set_object_color(BT_SET_CARTESIAN,FL_MCOL,FL_GREEN);
	fl_set_button(BT_SET_CARTESIAN, FALSE);


	 y+= dy;
         BT_GRAB_OBJECT = fl_add_button(FL_RADIO_BUTTON, x, y, w, h, "Grab Object");
	fl_set_call_back(BT_GRAB_OBJECT, CB_grab_object, 1);
	fl_set_object_color(BT_GRAB_OBJECT,FL_MCOL,FL_GREEN);
	fl_set_button(BT_GRAB_OBJECT, FALSE);

		 y+= dy;
         BT_RELEASE_OBJECT = fl_add_button(FL_RADIO_BUTTON, x, y, w, h, "Release Object");
	fl_set_call_back(BT_RELEASE_OBJECT, CB_release_object, 1);
	fl_set_object_color(BT_RELEASE_OBJECT,FL_MCOL,FL_GREEN);
	fl_set_button(BT_RELEASE_OBJECT, FALSE);
	
	y+= dy;
	DELETE_GRAPHS =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Delete Graphs");
	fl_set_call_back(DELETE_GRAPHS, CB_genomCleanRoadmap_obj, 1);

        y+= dy;
	BT_ARM_GOTO_Q_OBJ =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Arm Goto Q");
//	BT_PLOT_Q_WRITE_FILE_OBJ= fl_add_button(FL_RADIO_BUTTON, x, y + 1*dy, w, h, "Write file and plot qi");
	fl_set_call_back(BT_ARM_GOTO_Q_OBJ, CB_genomArmGotoQ_obj, 1);
  
        y+= dy;
  BT_ARM_EXTRACT_OBJ =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Arm Extract");
  fl_set_call_back(BT_ARM_EXTRACT_OBJ, CB_genomArmExtract_obj, 1);
  
        y+= dy;
  BT_ARM_GOTO_X_OBJ =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Arm Goto X");
//  BT_PLOT_Q_WRITE_FILE_OBJ= fl_add_button(FL_RADIO_BUTTON, x, y + 1*dy, w, h, "Write file and plot qi");
  fl_set_call_back(BT_ARM_GOTO_X_OBJ, CB_genomArmGotoX_obj, 1);
  
	y+= dy;
        BT_FIND_GRASP_CONFIG_AND_COMP_TRAJ_OBJ =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Pick Up");
        fl_set_call_back(BT_FIND_GRASP_CONFIG_AND_COMP_TRAJ_OBJ, CB_genomPickUp_gotoObject, 1);


	y+= dy;
        BT_PICK_UP_TAKE =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Take To Conf");
        fl_set_call_back(BT_PICK_UP_TAKE, CB_genomPickUp_takeObject, 1);

  y+= dy;
        BT_PICK_UP_TAKE_XYZ =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Take To XYZ");
        fl_set_call_back(BT_PICK_UP_TAKE_XYZ, CB_genomPickUp_takeObjectToXYZ, 1);
  y+= dy;
        BT_TAKE_TO_PLACE =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Take To Place");
        fl_set_call_back(BT_TAKE_TO_PLACE, CB_genomTakeToPlace, 1);
	y+= dy;
        BT_PLACE =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Place From Free");
        fl_set_call_back(BT_PLACE, CB_genomPlaceObject, 1);
  y+= dy;
        BT_ESCAPE_OBJECT =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Escape object");
        fl_set_call_back(BT_ESCAPE_OBJECT, CB_genomEscapeObject, 1);

  y+= dy;
  BT_CONSTRUCTPRM =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Build PRM");
  fl_set_call_back(BT_CONSTRUCTPRM, CB_genomArmComputePRM_obj, 0);


  y+= dy;
  BT_PLANVIAPOINTS =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Plan Via Conf traj");
  fl_set_call_back(BT_PLANVIAPOINTS, CB_genomPlanTrajViaPoints, 0);
  
  y+= dy;
  BT_SEQUENCE =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Sequence");
  fl_set_call_back(BT_SEQUENCE, CB_genomSequence, 0);
  
#ifdef DPG
  y+= dy;
  BT_CHECKCOLONTRAJ =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Check Col Traj");
  fl_set_call_back(BT_CHECKCOLONTRAJ, CB_checkColOnTraj, 0);
  y+= dy;
  BT_REPLANCOLTRAJ =  fl_add_button(FL_NORMAL_BUTTON, x, y, w, h, "Replan Col Traj");
  fl_set_call_back(BT_REPLANCOLTRAJ, CB_replanColTraj, 0);
  y+= dy;
#endif
  
  fl_end_group();
}