⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 standard_hob.cpp

📁 C# 教学示例程序
💻 CPP
📖 第 1 页 / 共 3 页
字号:
	 int i; 
	 double direction;
	 write_para(dialog_id);
	 
	 UF_STYLER_item_value_type_t ang;
	 ang.item_attr=UF_STYLER_VALUE;
     ang.item_id=STANDARD_HOB_XUAN;
	 UF_STYLER_ask_value(dialog_id,&ang);
     direction=ang.value.integer;

	 const char env[255]="UGII_USER_DIR";
	 char *basedir=NULL;
	 basedir=getenv(env);
	 
	 char dir[100];
	 strcpy(dir,basedir);
	 strcat(dir,"\\ug_grip\\standard_hob.grx");
  	 
	 char *grip_exe=dir;
  
	 int status;
	 int grip_arg_count=14;
     UF_args_t grip_arg_list[14];

	 for(int j=0;j<13;j++)
	 {
		 if(fabs(data[j].value.real)==0.0)
		 {
			 uc1601("输入数据不能为零",1);
			 return ( UF_UI_CB_CONTINUE_DIALOG );
		 }
	 }

     for(i=0;i<13;i++)
	 {
		grip_arg_list[i].type=UF_TYPE_DOUBLE;
        grip_arg_list[i].length=0;
        grip_arg_list[i].address=&data[i].value.real;;
	 }
        grip_arg_list[13].type=UF_TYPE_DOUBLE;
        grip_arg_list[13].length=0;
        grip_arg_list[13].address=&direction;
      
     status=UF_call_grip(grip_exe,grip_arg_count,grip_arg_list);
     UF_terminate ();
    /* Callback acknowledged, terminate dialog             */
    /* It is STRONGLY recommended that you exit your       */
    /* callback with UF_UI_CB_EXIT_DIALOG in a ok callback.*/
    /* return ( UF_UI_CB_EXIT_DIALOG );                    */
    return (UF_UI_CB_EXIT_DIALOG);                           
}


/* -------------------------------------------------------------------------
 * Callback Name: STANDARD_HOB_cancel
 * This is a callback function associated with an action taken from a
 * UIStyler object. 
 *
 * Input: dialog_id   -   The dialog id indicate which dialog this callback
 *                        is associated with.  The dialog id is a dynamic,
 *                        unique id and should not be stored.  It is
 *                        strictly for the use in the NX Open API:
 *                               UF_STYLER_ask_value(s) 
 *                               UF_STYLER_set_value   
 *        client_data -   Client data is user defined data associated
 *                        with your dialog.  Client data may be bound
 *                        to your dialog with UF_MB_add_styler_actions
 *                        or UF_STYLER_create_dialog.                 
 *        callback_data - This structure pointer contains information
 *                        specific to the UIStyler Object type that  
 *                        invoked this callback and the callback type.
 * -----------------------------------------------------------------------*/
int STANDARD_HOB_cancel ( int dialog_id,
             void * client_data,
             UF_STYLER_item_value_type_p_t callback_data)
{
     /* Make sure User Function is available. */  
     if ( UF_initialize() != 0) 
          return ( UF_UI_CB_CONTINUE_DIALOG );

     /* ---- Enter your callback code here ----- */

     UF_terminate ();

    /* Callback acknowledged, terminate dialog             */
    /* It is STRONGLY recommended that you exit your       */
    /* callback with UF_UI_CB_EXIT_DIALOG in a cancel call */
    /* back rather than UF_UI_CB_CONTINUE_DIALOG.          */
    return ( UF_UI_CB_EXIT_DIALOG );                       
}


/* -------------------------------------------------------------------------
 * Callback Name: STANDARD_HOB_cutter_database
 * This is a callback function associated with an action taken from a
 * UIStyler object. 
 *
 * Input: dialog_id   -   The dialog id indicate which dialog this callback
 *                        is associated with.  The dialog id is a dynamic,
 *                        unique id and should not be stored.  It is
 *                        strictly for the use in the NX Open API:
 *                               UF_STYLER_ask_value(s) 
 *                               UF_STYLER_set_value   
 *        client_data -   Client data is user defined data associated
 *                        with your dialog.  Client data may be bound
 *                        to your dialog with UF_MB_add_styler_actions
 *                        or UF_STYLER_create_dialog.                 
 *        callback_data - This structure pointer contains information
 *                        specific to the UIStyler Object type that  
 *                        invoked this callback and the callback type.
 * -----------------------------------------------------------------------*/
int STANDARD_HOB_cutter_database ( int dialog_id,
             void * client_data,
             UF_STYLER_item_value_type_p_t callback_data)
{
     /* Make sure User Function is available. */  
     if ( UF_initialize() != 0) 
          return ( UF_UI_CB_CONTINUE_DIALOG );

     /* ---- Enter your callback code here ----- */	
	 char *str_mid[30];
	 char table[50]="standard_hob_table";
     if(choice_data_func(dialog_id,str_mid,table)==TRUE)
	 {
	 read_para_from_database(dialog_id,str_mid);
	 }
     UF_terminate ();
    /* Callback acknowledged, do not terminate dialog */
    return (UF_UI_CB_CONTINUE_DIALOG);   
    /* or Callback acknowledged, terminate dialog.    */
    /* return ( UF_UI_CB_EXIT_DIALOG );               */
}

void write_para(int dialog_id)
{
	 data[0].item_attr=UF_STYLER_VALUE;
	 data[0].item_id=STANDARD_HOB_MN;
     UF_STYLER_ask_value(dialog_id,&data[0]);

	 data[1].item_attr=UF_STYLER_VALUE;
	 data[1].item_id=STANDARD_HOB_ZN;
     UF_STYLER_ask_value(dialog_id,&data[1]);

	 data[2].item_attr=UF_STYLER_VALUE;
	 data[2].item_id=STANDARD_HOB_B;
     UF_STYLER_ask_value(dialog_id,&data[2]);

	 data[3].item_attr=UF_STYLER_VALUE;
	 data[3].item_id=STANDARD_HOB_SN;
     UF_STYLER_ask_value(dialog_id,&data[3]);

	 data[4].item_attr=UF_STYLER_VALUE;
	 data[4].item_id=STANDARD_HOB_DA;
     UF_STYLER_ask_value(dialog_id,&data[4]);

	 data[5].item_attr=UF_STYLER_VALUE;
	 data[5].item_id=STANDARD_HOB_BN;
     UF_STYLER_ask_value(dialog_id,&data[5]);

	 data[6].item_attr=UF_STYLER_VALUE;
	 data[6].item_id=STANDARD_HOB_AG;
     UF_STYLER_ask_value(dialog_id,&data[6]);

	 data[7].item_attr=UF_STYLER_VALUE;
	 data[7].item_id=STANDARD_HOB_HEG;
     UF_STYLER_ask_value(dialog_id,&data[7]);

	 data[8].item_attr=UF_STYLER_VALUE;
	 data[8].item_id=STANDARD_HOB_HG;
     UF_STYLER_ask_value(dialog_id,&data[8]);

	 data[9].item_attr=UF_STYLER_VALUE;
	 data[9].item_id=STANDARD_HOB_TNG;
     UF_STYLER_ask_value(dialog_id,&data[9]);

	 data[10].item_attr=UF_STYLER_VALUE;
	 data[10].item_id=STANDARD_HOB_SNG;
     UF_STYLER_ask_value(dialog_id,&data[10]);

	 data[11].item_attr=UF_STYLER_VALUE;
	 data[11].item_id=STANDARD_HOB_R1;
     UF_STYLER_ask_value(dialog_id,&data[11]);

	 data[12].item_attr=UF_STYLER_VALUE;
	 data[12].item_id=STANDARD_HOB_R2;
     UF_STYLER_ask_value(dialog_id,&data[12]);	 
}


void read_para_from_database(int dialog_id,void *str_mid)
{
	     /* Make sure User Function is available. */  
     /* ---- Enter your callback code here ----- */
	 UF_STYLER_item_value_type_t data;

	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_MN;
	 data.value.real=atof(((char **)str_mid)[1]);
	 UF_STYLER_set_value(dialog_id,&data);

	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_ZN;
	 data.value.real=atof(((char **)str_mid)[2]);
	 UF_STYLER_set_value(dialog_id,&data);

	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_B;
	 data.value.real=atof(((char **)str_mid)[4]);
	 UF_STYLER_set_value(dialog_id,&data);
 
	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_SN;
	 data.value.real=atof(((char **)str_mid)[5]);
	 UF_STYLER_set_value(dialog_id,&data);
	 
	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_DA;
	 data.value.real=atof(((char **)str_mid)[6]);
	 UF_STYLER_set_value(dialog_id,&data);

	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_BN;
	 data.value.real=atof(((char **)str_mid)[8]);
	 UF_STYLER_set_value(dialog_id,&data);
	 
	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_AG;
	 data.value.real=atof(((char **)str_mid)[3]);
	 UF_STYLER_set_value(dialog_id,&data);
	 
	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_HEG;
	 data.value.real=atof(((char **)str_mid)[18]);
	 UF_STYLER_set_value(dialog_id,&data);

	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_HG;
	 data.value.real=atof(((char **)str_mid)[19]);
	 UF_STYLER_set_value(dialog_id,&data);
	 
	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_TNG;
	 data.value.real=atof(((char **)str_mid)[25])*cos(atof(((char **)str_mid)[24])*3.1415926/180);
	 UF_STYLER_set_value(dialog_id,&data);

	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_SNG;
	 data.value.real=atof(((char **)str_mid)[26])*cos(atof(((char **)str_mid)[24])*3.1415926/180);
	 UF_STYLER_set_value(dialog_id,&data);

	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_R1;
	 data.value.real=atof(((char **)str_mid)[28]);
	 UF_STYLER_set_value(dialog_id,&data);
 
	 data.item_attr=UF_STYLER_VALUE;
     data.item_id=STANDARD_HOB_R2;
	 data.value.real=atof(((char **)str_mid)[29]);
	 UF_STYLER_set_value(dialog_id,&data);    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -