NX二次开发-UFUN获取圆柱的参数UF_MODL_ask_cylinder_parms

NX11+VS2013

#include <uf.h>
#include <uf_modl.h>
#include <uf_ui.h>


UF_initialize();

//创建圆柱
UF_FEATURE_SIGN Sign = UF_NULLSIGN;
double Origin[3] = { 0.0, 0.0, 0.0 };
char *Height1 = "100";
char *Diam1 = "50";
double Direction[3] = { 0.0, 0.0, 1.0 };
tag_t CylTag = NULL_TAG;
UF_MODL_create_cyl1(Sign, Origin, Height1, Diam1, Direction, &CylTag);


//获取球的参数
char *Diameter;//输出直径
char *Height;//输出高度
UF_MODL_ask_cylinder_parms(CylTag, 1, &Diameter, &Height);


//打印
//默认输出格式为表达式等号左右值
UF_UI_open_listing_window();
UF_UI_write_listing_window(Diameter);
UF_UI_write_listing_window("\n");
UF_UI_write_listing_window(Height);


//只输出表达式等号右值
//提取左右值
string D = Diameter;
string DStrleft = (D.substr(0, D.find("=")));//提取左值
string DStrright = (D.substr(D.find("=") + 1, D.find(" ")));//提取右值


string H = Height;
string HStrleft = (H.substr(0, H.find("=")));//提取左值
string HStrright = (H.substr(H.find("=") + 1, H.find(" ")));//提取右值

char DBufLeft[256], DBufRight[256];//左值,右值
char HBufLeft[256], HBufRight[256];//左值,右值
//将string类型转换为字符数组
strcpy(DBufLeft, DStrleft.c_str());
strcpy(DBufRight, DStrright.c_str());

strcpy(HBufLeft, HStrleft.c_str());
strcpy(HBufRight, HStrright.c_str());

//打印右值
UF_UI_write_listing_window("\n");
UF_UI_write_listing_window("\n");
UF_UI_write_listing_window(DBufRight);
UF_UI_write_listing_window("\n");
UF_UI_write_listing_window(HBufRight);


//释放内存
UF_free(Diameter);
UF_free(Height);

UF_terminate();

Caesar卢尚宇  [email protected]
2018年12月11日

在这里插入图片描述


NX二次开发技术专栏

NX二次开发技术专栏【持续更新】 点击进入专栏

更多NX二次开发内容

NX二次开发-数据类型结构及类型转换博客目录【持续更新】 点击进入目录
NX二次开发-UFUN API函数例子博客目录【持续更新】 点击进入目录
NX二次开发-Block UI控件的获取例子博客目录【持续更新】 点击进入目录
NX二次开发-算法应用博客目录【持续更新】 点击进入目录

猜你喜欢

转载自blog.csdn.net/lu1287580078/article/details/84961811