最近要使用切削层参数,查找资料后发现都是零零碎碎的或者只有只言片语,故记录、总结、分享。
函数调用:先调用 UF_CUT_LEVELS_load,再调用UF_CUT_LEVELS_ask_level;
函数参数:UF_CUT_LEVELS_load,第一个参数operation_tag为输入, 传界面节点对应的tag
第二个参数为输出,输出类型为 UF_CUT_LEVELS_t;UF_CUT_LEVELS_ask_level将函数UF_CUT_LEVELS_load的输出作为第一个参数输入,第二个参数为结构体UF_CUT_LEVELS_t中的num_levels,想要第几层参数就传几,第三个参数为输出。
代码示例:
UF_CUT_LEVELS_t* cutLevel = new UF_CUT_LEVELS_t;
cutLevel->num_levels = 0;
cutLevel->cut_levels = nullptr;
cutLevel->num_top_off_levels = 0;
cutLevel->top_off_levels = nullptr;
int irc = UF_CUT_LEVELS_load(tag, &cutLevel);
UF_CUT_LEVEL_single_t* cls = new UF_CUT_LEVEL_single_t;
cls->entity_tag = NULL_TAG;
cls->local_cut_depth = 0.0;
cls->z_level = 0.0;
vLog.push_back(std::to_string((long double)cutLevel->num_levels) + " 切削层-范围定义-层数");
for (int i = 0;i < cutLevel->num_levels;i++)
{
char szParam[256] = "";
UF_CUT_LEVELS_ask_level(cutLevel, i, &cls);
sprintf_s(szParam, 256, "%d %f %f 切削层-范围定义-第%d层参数", cls->entity_tag, cls->z_level, cls->local_cut_depth, i);
vLog.push_back(szParam);
}
delete cutLevel;
关于参数具体意义可在头文件中自行查看。