NX二次开发 UFUN获得工程图所有视图tag UF_DRAW_ask_views
//NX8.0+VS2010
#include <uf_assem.h>
#include <uf_part.h>
#include <uf_obj.h>
#include <uf_modl.h>
#include <uf_view.h>
#include <uf_draw.h>
extern DllExport void ufsta(char* param, int* returnCode, int rlen)
{
if (UF_initialize())
return;
//获得当前图纸页的tag
tag_t drawing_tag = NULL_TAG;
UF_DRAW_ask_current_drawing(&drawing_tag);
//找名字获取视图tag
tag_t tViewTag = NULL_TAG;
UF_OBJ_cycle_by_name("123", &ViewTag);
//移动视图
const double drawing_reference_point[2] = { 150.0, 150.0 };
UF_DRAW_move_view(tViewTag, drawing_reference_point);
//更改视图比例大小
UF_DRAW_set_view_scale(tViewTag, 1);
//隐藏视图边界线
UF_DRAW_set_border_display(false);
//获取所有视图tag
int num_tags = 0;
tag_t* tags= NULL_TAG;
UF_DRAW_ask_views(drawing_tag, &num_tags, &tags);
for (int i = 0; i < num_tags; i++)
{
if (tags[i] != ViewTag)
{
//删除其他视图
UF_OBJ_delete_object(tags[i]);
}
}
UF_terminate();
}