NX二次开发 UFUN里的Tag和NXOpen里的对象互相转换
//tag转换成NXOpen::TaggedObject类型
tag_t object_tag = NULL_TAG;
NXOpen::TaggedObject *selectObject((NXOpen::TaggedObject*)NXObjectManager::Get(object_tag));
//tag转换成NXOpen::NXMatrix类型
tag_t mtx_tag = NULL_TAG;
double mtx_3d[9] = {1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0};
UF_CSYS_create_matrix(mtx_3d, &mtx_tag);
NXOpen::NXMatrix* nXMatrix1((NXOpen::NXMatrix*)NXObjectManager::Get(mtx_tag));
//tag转换成NXOpen::Body类型
tag_t object_tag = NULL_TAG;
NXOpen::Body *body((NXOpen::Body *)NXObjectManager::Get(object_tag));
//NXOpen 里的对象转换成 ufun 里的Tag | 只需要 ->Tag()
tag_t object_tag = NULL_TAG;
NXOpen::Features::Feature *Feature1;
Feature1 = blockFeatureBuilder1->CommitFeature();
UF_MODL_ask_feat_body(Feature1->Tag(), &object_tag);
UF_OBJ_set_color(object_tag, 186);
//NXOpen 对象转换
NXOpen::TaggedObject *selectObject;
NXOpen::Face *faceObject = (NXOpen::Face *)(selectObject);
其他同理