点击查看详细介绍

UF_DRF_create_linear_cline() 函数的参数解释说明、函数详细用法,以及实例代码演示

misnn 7年前 692 0

购买与咨询 NX 二次开发视频教程,请联系微信号:13890821008  QQ号:85585969  


函数结构:
UF_DRF_create_linear_cline
(
const int num_cline_objs,
UF_DRF_object_t* cline_obj_list,
tag_t* centerline_tag
)

函数说明:
创建并显示一个线性中心线(中心线型UF_DRF_linear_cline)。

函数参数:
第1个参数为输入:
输入const int 整数型的参数,参数的变量格式为num_cline_objs,在cline_obj_list最大中心线对象的数量是MAX_CENTERLINE_OBJECTS,目前100

第2个参数为输入:
cline_obj_list代表参数变量,UF_DRF_object_t* 为输入参数类型,要被关联到中心线的对象阵列(见uf_drf_types.h)有效对象类型:点,弧,实线曲线

第3个参数为输出:
centerline_tag代表参数变量,tag_t* 为输出参数类型,创建中心线的对象标记

UF_DRF_create_linear_cline函数实例代码演示:
这个例子创建了一个线性的中心线。
[quote]
#include <stdio.h>
#include <uf.h>
#include <uf_defs.h>
#include <uf_drf.h>
#include <uf_curve.h>
#include <uf_csys.h>
void ufusr(char *param, int *retcod, int param_len)
{
int status = 0;
char stat_msg[133];
tag_t wcs, arc1_tag, arc2_tag, arc3_tag, cl_tag;
UF_CURVE_arc_t arc_coords;
UF_DRF_object_t objects[3];
status = UF_initialize();
if (!status)
{
/* initialize the object structures */
UF_DRF_init_object_structure(&objects[0]);
UF_DRF_init_object_structure(&objects[1]);
UF_DRF_init_object_structure(&objects[2]);
/* create three arcs */
UF_CSYS_ask_wcs(&wcs);
UF_CSYS_ask_matrix_of_object(wcs, &arc_coords.matrix_tag);
arc_coords.start_angle = 0.0;
arc_coords.end_angle = TWOPI;
arc_coords.arc_center[0] = 10.0;
arc_coords.arc_center[1] = 10.0;
arc_coords.arc_center[2] = 0.0;
arc_coords.radius = 1.0;
status = UF_CURVE_create_arc(&arc_coords, &arc1_tag);
}
if (!status)
{
arc_coords.arc_center[0] = 15.0;
arc_coords.arc_center[1] = 15.0;
status = UF_CURVE_create_arc(&arc_coords, &arc2_tag);
}
if (!status)
{
arc_coords.arc_center[0] = 20.0;
arc_coords.arc_center[1] = 20.0;
status = UF_CURVE_create_arc(&arc_coords, &arc3_tag);
}
if (!status)
{
objects[0].object_tag = arc1_tag;
objects[0].object_view_tag = NULL_TAG;
objects[0].object_assoc_type = UF_DRF_end_point;
objects[0].object_assoc_modifier = UF_DRF_first_end_point;
objects[1].object_tag = arc2_tag;
objects[1].object_view_tag = NULL_TAG;
objects[1].object_assoc_type = UF_DRF_end_point;
objects[1].object_assoc_modifier = UF_DRF_first_end_point;
objects[2].object_tag = arc3_tag;
objects[2].object_view_tag = NULL_TAG;
objects[2].object_assoc_type = UF_DRF_end_point;
objects[2].object_assoc_modifier = UF_DRF_first_end_point;
/* create a linear centerline */
status = UF_DRF_create_linear_cline(3, objects, &cl_tag);
}
printf("UF_DRF_create_linear_cline ");
if (status)
{
UF_get_fail_message(status, stat_msg);
printf("has ERROR %d: %s.\n", status, stat_msg);
}
else
printf("is successful.\n");
UF_terminate();
}



[/quote]

0

最新回复 (0)
请登录后发表新帖