NX二次开发-UFUN链表UF_MODL_create_list等用法

NX9+VS2012

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


UF_initialize();

//创建直线1
UF_CURVE_line_t LineCoords1;
LineCoords1.start_point[0] = 0.0;
LineCoords1.start_point[1] = 0.0;
LineCoords1.start_point[2] = 0.0;
LineCoords1.end_point[0] = 100.0;
LineCoords1.end_point[1] = 0.0;
LineCoords1.end_point[2] = 0.0;
tag_t Line1Tag[4];
UF_CURVE_create_line(&LineCoords1, &Line1Tag[0]);

//创建直线2
UF_CURVE_line_t LineCoords2;
LineCoords2.start_point[0] = 100.0;
LineCoords2.start_point[1] = 0.0;
LineCoords2.start_point[2] = 0.0;
LineCoords2.end_point[0] = 100.0;
LineCoords2.end_point[1] = 100.0;
LineCoords2.end_point[2] = 0.0;
UF_CURVE_create_line(&LineCoords2, &Line1Tag[1]);

//创建直线3
UF_CURVE_line_t LineCoords3;
LineCoords3.start_point[0] = 100.0;
LineCoords3.start_point[1] = 100.0;
LineCoords3.start_point[2] = 0.0;
LineCoords3.end_point[0] = 0.0;
LineCoords3.end_point[1] = 100.0;
LineCoords3.end_point[2] = 0.0;
UF_CURVE_create_line(&LineCoords3, &Line1Tag[2]);

//创建直线4
UF_CURVE_line_t LineCoords4;
LineCoords4.start_point[0] = 0.0;
LineCoords4.start_point[1] = 100.0;
LineCoords4.start_point[2] = 0.0;
LineCoords4.end_point[0] = 0.0;
LineCoords4.end_point[1] = 0.0;
LineCoords4.end_point[2] = 0.0;
UF_CURVE_create_line(&LineCoords4, &Line1Tag[3]);

//创建链表
uf_list_p_t List;
UF_MODL_create_list(&List);

for (int i = 0; i < 4; i++)
{
	//将四条直线tag添加到链表
	UF_MODL_put_list_item(List, Line1Tag[i]);
}

//删除链表的对象
UF_MODL_delete_list_item(&List, Line1Tag[0]);//从链表里删除一条直线tag

//查询链表数量
int Count;
UF_MODL_ask_list_count(List, &Count);

//转换
char msg[256];
sprintf_s(msg, "链表数量为:%d", Count);
//打印
uc1601(msg, 1);

tag_t ObjectTag = NULL_TAG;
for (int i = 0; i < Count; i++)
{
	//获取链表里的所有直线tag
	UF_MODL_ask_list_item(List, i, &ObjectTag);

	//把链表里的所有直线设置红色
	UF_OBJ_set_color(ObjectTag, 186);
}

//删除链表,释放内存
UF_MODL_delete_list(&List);

UF_terminate();

Caesar卢尚宇  [email protected]

在这里插入图片描述

猜你喜欢

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