【UG\NX二次开发】两种注释的方式

//获取面的中心点
double uvs[4];
UF_MODL_ask_face_uv_minmax(faces[0]->GetTag(), uvs); //获得面u,v参数空间(u,v最小,最大值)
double param[2];       //输入U,V方向值
param[0] = uvs[0] + (uvs[1] - uvs[0]) * 0.5;
param[1] = uvs[2] + (uvs[3] - uvs[2]) * 0.5;
double midPoint[3];     //输出点坐标
double u1[3];        //输出 输出一阶导数在U位置
double v1[3];        //输出 输出一阶导数在V位置
double u2[3];        //输出 输出二阶导数在U位置
double v2[3];        //输出 输出二阶导数在V位置
double unit_norm[3]; //输出面上该点的矢量方向
double radii[2];     //输出,双半径,输出主曲率半径
UF_MODL_ask_face_props(faces[0]->GetTag(), param, midPoint, u1, v1, u2, v2, unit_norm, radii);

//注释方式1: 只能沿X-Y平面显示
int num_lines_text = 2;//注释行数
char* text_string[2] = { "X=15", "Y=24" };//注释文本内容数组
tag_t note_tag = NULL_TAG;
UF_DRF_create_note(num_lines_text, text_string, midPoint, 0, &note_tag);

//注释方式2: 可以跟随屏幕显示转动,是一个临时显示文本
UF_DISP_refresh();//显示刷新
UF_OBJ_disp_props_t disp;
disp.layer = 201;
disp.color = 186;
disp.blank_status = UF_OBJ_NOT_BLANKED;
disp.line_width = UF_OBJ_WIDTH_NORMAL;
disp.font = 0;
double char_size = 5.0;//字体尺寸
int hardware = 1;//1:软件字体  0:硬件字体
char msg[256];//注释内容
sprintf_s(msg, "X=%d\nY=%d", 10, 20);
UF_DISP_display_temporary_text(NULL_TAG, UF_DISP_USE_WORK_VIEW, msg, midPoint, UF_DISP_MIDDLELEFT, &disp, char_size, hardware);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值