做网站用不用thinkphp,建设部网站 测绘规章,做外贸在哪个平台比较好,网站优化公司价格如何计算一、概述 最近学习NX二次开发#xff0c;看到NX打开装配模型或者加载模型时会显示进度条的问题#xff0c;个人觉得很有意思#xff0c;然后参考阿飞2018中的文章进行学习。
二、代码解析 //User Defined Header File#include uf.h#include uf_ui.h#includ…一、概述 最近学习NX二次开发看到NX打开装配模型或者加载模型时会显示进度条的问题个人觉得很有意思然后参考阿飞2018中的文章进行学习。
二、代码解析 //User Defined Header File#include uf.h#include uf_ui.h#include uf_modl.h#include uf_view.h#include atlstr.h//User Defined codeUF_initialize();//加载char *library_name D:\\ug\\NXBIN\\libdisp.dll;//调内部函数 创建进度条typedef void(*create_progress_bar)(int v1, bool v2, long *v3);//定义传参create_progress_bar MT_create_progress_bar NULL;UF_load_library(library_name, ?MT_create_progress_barYA_NH_NPEAJZ, (UF_load_f_p_t *)MT_create_progress_bar);//调内部函数 设置进度条的当前位置typedef void(*set_progress_pos)(long *v1, int v2);//定义传参set_progress_pos MT_set_progress_pos NULL;UF_load_library(library_name, ?MT_set_progress_posYAXPEAJHZ, (UF_load_f_p_t *)MT_set_progress_pos);//调内部函数 显示进度条typedef void(*show_progress_bar)(long *v1);//定义传参show_progress_bar MT_show_progress_bar NULL;UF_load_library(library_name, ?MT_show_progress_barYAXPEAJZ, (UF_load_f_p_t *)MT_show_progress_bar);//调内部函数 设置进度条的起始值和终止值typedef void(*set_progress_range)(long *v1, int v2, int v3);//定义传参set_progress_range MT_set_progress_range NULL;UF_load_library(library_name, ?MT_set_progress_rangeYAXPEAJHHZ, (UF_load_f_p_t *)MT_set_progress_range);//调内部函数 获得提示环境句柄(输出long*指针)typedef __int64(*ask_progress_cue_context)(void);//定义传参ask_progress_cue_context MT_ask_progress_cue_context NULL;UF_load_library(library_name, ?MT_ask_progress_cue_contextYAHXZ, (UF_load_f_p_t *)MT_ask_progress_cue_context);//调内部函数 删除进度条typedef __int64(*delete_progress_bar)(long *v1);//定义传参delete_progress_bar MT_delete_progress_bar NULL;UF_load_library(library_name, ?MT_delete_progress_barYAXPEAJZ, (UF_load_f_p_t *)MT_delete_progress_bar);//调内部函数 进度条显示文本typedef __int64(*set_progress_text)(long *v1, char *v2, bool v3);//定义传参set_progress_text MT_set_progress_text NULL;UF_load_library(library_name, ?MT_set_progress_textYAXPEAJPEAD_NZ, (UF_load_f_p_t *)MT_set_progress_text);if (MT_ask_progress_cue_context NULL || MT_create_progress_bar NULL || MT_show_progress_bar NULL|| MT_set_progress_text NULL || MT_set_progress_range NULL || MT_set_progress_pos NULL|| MT_delete_progress_bar NULL){uc1601(温馨提示请仔细检查存在错误, 1);return;}//获得提示环境句柄(输出long*指针)__int64 cc MT_ask_progress_cue_context();//创建进度条long aa 0;MT_create_progress_bar(cc, true, aa);//true和false控制是否显示百分比数字//显示进度条MT_show_progress_bar(aa);//进度条显示文本MT_set_progress_text(aa, Loading progress prompt, true);//此处用中文不显示//设置进度条的起始值和终止值int num 100;MT_set_progress_range(aa, 0, num);for (int i 0; i num; i){//在NX状态区显示一行文本UF_UI_set_status(白雪公主的后妈);//创建块UF_FEATURE_SIGN Sign UF_NULLSIGN;//设置布尔double Corner_pt[3] { i * 150, 0.0, 0.0 };//设置原点char *Edge_Len[3] { 100, 100, 100 };//设置长宽高tag_t BlkTag NULL_TAG;UF_MODL_create_block1(Sign, Corner_pt, Edge_Len, BlkTag);//设置进度条的当前位置MT_set_progress_pos(aa, i);}//删除进度条MT_delete_progress_bar(aa);//获得工作视图的tagtag_t work_view NULL_TAG;UF_VIEW_ask_work_view(work_view);//适合窗口UF_VIEW_fit_view(work_view, 1.0);//在NX状态区显示一行文本UF_UI_set_status(白雪公主的后妈提示创建完成);//卸载UF_unload_library(library_name);UF_terminate();
三、效果展示