点击查看详细介绍

UF求助,

ccpseric 10年前 2173 0

购买与咨询 NX 二次开发视频教程,请联系微信号:13890821008  QQ号:85585969  


extern void ufsta( char *param, int *returnCode, int rlen )

{

/* Initialize the API environment */

if( UF_CALL(UF_initialize()) )

{

/* Failed to initialize */

return;

}

char *cp1 = "請選擇";

int ip2 = 0;

char cp3[4][38] = {"建立塊","建立圓柱","建立圓錐","建立球"};

int ip4 = 4;

int value;

tag_t view_tag = NULL_TAG;

char cue[]="ppp";

UF_UI_POINT_base_method_t base_method=UF_UI_POINT_CURSOR_POS;

tag_t point_tag;

double base_pt[3]={0.0,0.0,0.0};

int response;

UF_FEATURE_SIGN sign = UF_NULLSIGN;

double cyl_origin[3] = {0.0,0.0,0.0};

char *cyl_height = "20.0";

char *cyl_diam = "10.0";

double cyl_direction[3] = {0.0,0.0,1.0};

tag_t cyl_obj_id;

double cone_origin[3] = {0.0,0.0,0.0};

char *cone_height = "20.0";

char *cone_diam[2] = {"10.0","20.0"};

double cone_direction[3] = {0.0,0.0,1.0};

tag_t cone_obj_id;

double sphere_center[3] = {0.0,0.0,0.0};

char *sphere_diam = "30.0";

tag_t sphere_obj_id;

if(!UF_initialize())

{

value = uc1603(cp1,ip2,cp3,ip4);

switch(value)

{

case 5:

UF_UI_point_construct(cue,&base_method,&point_tag,base_pt,&response);

if(response==UF_UI_OK)

{

char *cc1 ="輸入尺寸";

char cc2[][16]={"長度","寬度","高度"};

int ii6,ii3=3;

double tool_data[3]={0.0,0.0,0.0};

int ii5[]={6,6,6};

int actprt=0;

ii6 = uc1609(cc1,cc2,ii3,tool_data,ii5);

// char x[1],y[1],z[1],tmp[3];

double blk_corner[3]={base_pt[0],base_pt[1],base_pt[2]};

char *blk_edge_len[3]={"0.0","0.0","0.0"};

// if(ii6!=NULL_TAG)

// {

// char *blk_edge_len[3]={"tool_data[0]","tool_data[1]","tool_data[2]"};

// }

tag_t blk_obj_id;

UF_MODL_create_block1(sign,blk_corner,blk_edge_len,&blk_obj_id);

}

break;

case 6:

UF_MODL_create_cyl1(sign,cyl_origin,cyl_height,cyl_diam,cyl_direction,&cyl_obj_id);

break;

case 7:

UF_MODL_create_cone1(sign,cone_origin,cone_height,cone_diam,cone_direction,&cone_obj_id);

break;

case 8:

UF_MODL_create_sphere1(sign,sphere_center,sphere_diam,&sphere_obj_id);

break;

default:

uc1601("it's wrong!",0);

}

UF_VIEW_ask_work_view(&view_tag);

UF_VIEW_fit_view(view_tag,0.7);

UF_PART_save();

UF_terminate();

}

/* Terminate the API environment */

UF_CALL(UF_terminate());

}

我查过UC1607的函数三个值输出型态为double
但是UF_MODL_create_block1的blk_edge_len型态为char*
请教高手如何将double转成char*?
另请教有更好的写法能同时满足创建圆柱、角锥、球体的方式吗?
我需要能使用者输入数值介面的
只是学习...

0

最新回复 (0)
请登录后发表新帖