你好,欢迎来到UG二次开发专业技术交流论坛! 会员登录 | 快速注册 | 忘记密码?
UG二次开发最新技术资料
  • 为什么打开的文本窗口里面有没有内容?我本地都有,读不出内容

    发布者:tt526778665 查看次数:19 评论条数:0 发布时间:2019-2-15
      //判断是否导入技术文件 intstatus1; stringdd=aa.substr(0,aa.length()-3)+"txt";  //bb在aa的基础上求aa总长度-3 UF_CFI_ask_file_exist(dd.c_str(),&status1);      //此函数标识查询文件是否存在 if(status1=0) {       if(toggle02->value())          {       //导入本地文本,零件技术文档           //打开数据库               intTEXT0=uc4504("dd",1,79);  //79代表txt文件格式,详情看NXOPEN帮助文件                  //读取该文件               char*outdate;               intdata=uc4514a(TEXT0,&outdate);           //打印               UF_UI_open_listing_window();    //打开窗口             while(data>=0)  //当读取数据>=0时开始读入               {             strcat(outdate,"/n");    //C语言拼接字符串,在所读数据后添加/n,换行             UF_UI_write_listing_window(outdate);//写数据到信息窗口             data=uc4514a(TEXT0,&outdate);//读取信息窗口数据               }   uc4540(TEXT0,0);       UF_free(outdate);         }       //else  //否则关闭文本窗口   }
  • 为什么自己下载的图片在外挂上总是无法加载?

    发布者:tt526778665 查看次数:25 评论条数:0 发布时间:2019-2-14
    为什么自己下载的图片在drawing中无法找到
  • UG二次开发,有代做数据库的嘛

    发布者:tt526778665 查看次数:32 评论条数:1 发布时间:2019-2-10
    UG二次开发,有代做数据库的嘛
  • 点击查看GRIP全套视频教程
  • 总是显示无法找到uf.h源文件

    发布者:tt526778665 查看次数:57 评论条数:2 发布时间:2019-1-28
    我是从别人VC++6.0复制到我VS2010来的,在用VS2010打开时,一直这样,不知道怎么办了,附加目录也改了,求个大神帮帮忙~~~~万分感谢
  • NX CAM的二次开发,切削起点设置

    发布者:wguitar 查看次数:259 评论条数:1 发布时间:2018-12-19
    有没有小伙伴做CAM二次开发的?本人,刚开始利用录制函数功能,C++语言,实现一个平面路径的生成,但,路径不一定完全符合要求。有没有小伙伴能够利用API函数,生成刀具路径,采用C++语言的。万分感谢!!微信15771779925  有没有CAM二次开发的教学视频?真心求购
  • 有知道SNAP中SCALE缩放体命令的不

    发布者:s100881898 查看次数:117 评论条数:0 发布时间:2018-12-14
    有知道SNAP中SCALE缩放体命令的不,只找到一个无参的函数。有参的SCALE命令有人知道不。
  • 关于NX做CAM的二次开发

    发布者:wguitar 查看次数:491 评论条数:1 发布时间:2018-11-19
    有没有小伙伴做CAM二次开发的?目前可以利用录制函数功能,实现一个平面路径的生成,但,路径并非完全符合要求。有没有小伙伴能够利用API函数,生成刀具路径,采用C++语言的。求助大神。万分感谢
  • 点击查看VIP会员特权
  • 求助!UG open c 外部模式求大神指导~!

    发布者:deawin 查看次数:251 评论条数:0 发布时间:2018-11-14
    想导出jpg格式的图片,正三轴测图左视图俯视图UF_DISP_create_image只能用在内部模式宏文件调用也是在内部模式不知道日志可以用么?想问下群里有大神知道嘛?求指点!!!
  • GRX文件制作为工具条图标

    发布者:misterdog 查看次数:444 评论条数:1 发布时间:2018-10-22
    看了教程,但是我用的是UG11.0,定制菜单里并没有加载选项,求解答。
  • UG API 求助 写或者改一个转化prt为parasolid后者igs的程序

    发布者:znl515901 查看次数:402 评论条数:1 发布时间:2018-10-17
    工作中遇到问题需要写一个把prt格式转化成x_t或者igs格式的程序,模型中包含有片体,网上找到的程序不能包含片体,求助大神int  prt_save_as_xt(tag_tbody_tag,stringps){    //没有后缀名时,加上后缀名    if(std::string::npos==ps.find(".x_t"))        ps+=".x_t";    //引用代码:Ug2Ansys.cpp  李响,中国地质大学(北京)2006.12.31    uf_list_p_tbody_list;    //获得装配树根事例root_part_occ,当函数返回NULL_TAG时,表明当前部件文件中没有装配(即单个部件)    tag_troot_part_occ=UF_ASSEM_ask_root_part_occ(body_tag);    VISUALSAN_NUAA_202_RUN(UF_MODL_create_list(&body_list));    //如果是单个部件    if(root_part_occ==NULL_TAG)    {        tag_tobject=NULL_TAG;        intUF_body_type;        inttype;        intsubtype;        do{            VISUALSAN_NUAA_202_RUN(                UF_OBJ_cycle_objs_in_part(body_tag,UF_solid_type,&object)                );            if(object!=NULL_TAG)            {                VISUALSAN_NUAA_202_RUN(                    UF_OBJ_ask_type_and_subtype(object,&type,&subtype)                    );                VISUALSAN_NUAA_202_RUN(                    UF_MODL_ask_body_type(object,&UF_body_type)                    );                if(subtype!=UF_solid_body_subtype)                    continue;                if(UF_body_type==UF_MODL_SOLID_BODY)                {                    VISUALSAN_NUAA_202_RUN(                        UF_MODL_put_list_item(body_list,object)                        );                    break;                }            }        }while(1);    }    //如果是装配体    else    {        tag_tobj=UF_ASSEM_ask_prototype_of_occ(root_part_occ);        tag_tobject=NULL_TAG;        intUF_body_type;        inttype;        intsubtype;        do        {            VISUALSAN_NUAA_202_RUN(                UF_OBJ_cycle_objs_in_part(body_tag,UF_solid_type,&object));            if(object!=NULL_TAG)            {                VISUALSAN_NUAA_202_RUN(                    UF_OBJ_ask_type_and_subtype(object,&type,&subtype));                //判断body是否是一个Solid或Sheet                VISUALSAN_NUAA_202_RUN(                    UF_MODL_ask_body_type(object,&UF_body_type));                if(subtype!=UF_solid_body_subtype)                    continue;                if(UF_body_type==UF_MODL_SOLID_BODY)                {                    //将对象加入到链表的尾部                    VISUALSAN_NUAA_202_RUN(                        UF_MODL_put_list_item(body_list,object));                }            }            else            {                break;            }        }while(1);    }    //如果文件存在,先删除    remove(ps.c_str());    //创建Parasolid文件    VISUALSAN_NUAA_202_RUN(        UF_PS_export_data(body_list,  (char*)ps.c_str()));    //删除链表    VISUALSAN_NUAA_202_RUN(        UF_MODL_delete_list(&body_list));    return0;}
  • UG判断当前窗口显示的模型是否是指定的PART模型

    发布者:nxopen 查看次数:508 评论条数:0 发布时间:2018-9-5
    UG判断当前模型是否是指定的模型,如果不是打开该模型,或者已经打开了该模型,切换到该模型的窗口比如:当前UG打开了C:\1.PRT文件,然后你需要判断当前是不是打开的C:\2.PRT这个文件,如果不是自己用UG打开C:\2.PRT,如果UG之前已经打开过了C:\2.PRT,那么将C:\2.PRT作为显示部件以下为逻辑实现代码:引用或者代码://要判断的模型文件,自行通过变量传递char*partNamePath="C:\\1.prt"; tag_tdisplayTag=UF_PART_ask_display_part(); //获得当前UG显示部件TAGcharpart_fspec[MAX_FSPEC_SIZE+1];UF_PART_ask_part_name(displayTag,part_fspec); //获得当前显示部件的名称 if(stricmp(partNamePath,part_fspec)!=0) //判断两个路径是否相等,不相等就不等于0{ //进一步判断内存是否已经存在指定的模型 intnum_parts=UF_PART_ask_num_parts(); //获得当前对话框加载的part数量 boolisBool=false; //先定义内存未加载 if(num_parts>1) { for(inti=0;i<num_parts;i++) { tag_ttempPart=UF_PART_ask_nth_part(i);//得到以加载的第i个part if(tempPart!=NULL_TAG) { chartemp_part_fspec[MAX_FSPEC_SIZE+1]; UF_PART_ask_part_name(tempPart,temp_part_fspec);//获得part名称 if(stricmp(partNamePath,temp_part_fspec)==0) //判断两个路径是否相等 { //如果相等表明内存已经加载,直接设为显示部件,然后结束循环 UF_PART_set_display_part(tempPart); } } } } if(!isBool) { //直接打开指定的模型文件,并设为显示部件 tag_tpart=NULL_TAG; UF_PART_load_status_terror_status; UF_PART_open(partNamePath,&part,&error_status); UF_PART_set_display_part(part); UF_PART_free_load_status(&error_status); }}
  • 点击查看SNAP技术资料
  • NXOpen选择对象selection控件代码设置过滤类型函数

    发布者:nxopen 查看次数:637 评论条数:2 发布时间:2018-9-5
    //selection控件设置过滤类型void  SetSelectionType(NXOpen::BlockStyler::SelectObject*selectionID){ //设置过滤 Selection::SelectionActionaction=Selection::SelectionActionClearAndEnableSpecific; std::vector<Selection::MaskTriple>maskArray; //maskArray.push_back(Selection::MaskTriple(UF_solid_type,UF_solid_body_subtype,UF_UI_SEL_FEATURE_SOLID_BODY));//实体 //maskArray.push_back(Selection::MaskTriple(UF_solid_type,UF_all_subtype,UF_UI_SEL_FEATURE_ANY_FACE));//面 maskArray.push_back(Selection::MaskTriple(UF_solid_type,UF_all_subtype,UF_UI_SEL_FEATURE_PLANAR_FACE));//平面 //maskArray.push_back(Selection::MaskTriple(UF_solid_type,UF_all_subtype,UF_UI_SEL_FEATURE_ANY_EDGE));//边 //maskArray.push_back(Selection::MaskTriple(UF_component_type,0,0));  //组件 //maskArray.push_back(Selection::MaskTriple(UF_point_type,0,0));   //maskArray.push_back(Selection::MaskTriple(UF_line_type,0,0));  //线 //maskArray.push_back(Selection::MaskTriple(UF_circle_type,0,0));  //圆弧 //maskArray.push_back(Selection::MaskTriple(UF_spline_type,0,0));   //maskArray.push_back(Selection::MaskTriple(UF_coordinate_system_type,0,0));   //maskArray.push_back(Selection::MaskTriple(UF_datum_axis_type,0,0));   //maskArray.push_back(Selection::MaskTriple(UF_datum_plane_type,0,0));   //maskArray.push_back(Selection::MaskTriple(UF_plane_type,0,0));   //maskArray.push_back(Selection::MaskTriple(UF_axis_type,0,0));   //maskArray.push_back(Selection::MaskTriple(UF_drafting_entity_type,0,0));  //制图对象 }
  • 设置背景色

    发布者:leader_dd 查看次数:813 评论条数:6 发布时间:2018-7-18
    想通过UF_DISP_set_color函数快速调整背景色。但设置完成后无效。不知道哪里出的问题。代码如下:doubleclr_values[3];clr_values[0]=255.0;clr_values[1]=255.0;clr_values[2]=255.0;UF_DISP_set_color(UF_DISP_BACKGROUND_COLOR,UF_DISP_rgb_model,NULL,clr_values);UF_DISP_load_color_table();请高手帮忙解答。
  • 获取对象指定名称属性功能函数代码

    发布者:nxopen 查看次数:730 评论条数:3 发布时间:2018-7-12
    //获取对象指定名称属性函数代码voidATTR_ask_obj_attrib(tag_tobj_tag,char*name,char*value,CString&valueCstring){ UF_ATTR_value_tdata; strcpy(value,""); if(obj_tag==NULL_TAG) return; UF_ATTR_read_value(obj_tag,name,UF_ATTR_any,&data); if(data.type==UF_ATTR_string) { } else { strcpy(value,""); } chartemp[1024]; sprintf(temp,"%s",value); CStringcsByChar(temp); valueCstring=csByChar; }
  • 实例化组件功能函数

    发布者:nxopen 查看次数:550 评论条数:3 发布时间:2018-7-12
    //实例化组件功能函数voidInstantiationPart(tag_tworkpart,char*partName,tag_t&oInsPartFrom){ if(workpart==NULL_TAG) { //("errimportpart!"); return; } charsRefsetsName[30+1]=""; charsInstanceName[30+1]=""; doubleadOrigin[3]={0,0,0}; doubleadCsysMatrix[6]={1,0,0,0,1,0}; intiLayerNum; UF_CALL(UF_LAYER_ask_work_layer(&iLayerNum)); UF_PART_load_status_tload_status; if(oInsPartFrom==NULL_TAG) { //("当前没有匹配模型"); return; } UF_free_string_array(load_status.n_parts,load_status.file_names);}
NX二次开发热门资料
点击查看VIP会员特权
技术帖子评论排行
最新评论技术帖子