NX二次开发UF_MODL_create_trimmed_sheet 函数介绍

164 阅读3分钟

UF_MODL_create_trimmed_sheet

Defined in: uf_modl_freeform.h 
int UF_MODL_create_trimmed_sheet(tag_t sheet_body_tag, int bounding_object_count, tag_t * bounding_objects, UF_MODL_vector_p_t projection_method, int key_pt, int point_count, double point_coords [ ] , double tolerance, int * gap_point_count, double * * gap_points, tag_t * feature_obj_eid )

overview 概述

Modifies the input sheet body to the specified boundary and regional conditions. The boundary conditions (faces, planes, edges, and curves) are used to divide the input sheet body into regions by imprinting new edges on the input sheet body. The regional conditions are employed to classify the discarded and retained regions of the input sheet body. The output sheet body is the retained region(s) of the input sheet body.


将输入工作表正文修改为指定的边界和区域条件。利用边界条件(面、平面、边和曲线) ,通过在输入板体上印刷新的边,将输入板体划分为不同的区域。利用区域条件对输入表体的丢弃区域和保留区域进行分类。输出工作表主体是输入工作表主体的保留区域。

UFUN例子

获取源码例子请搜索 里海NX二次开发3000例专栏

parameters 参数

tag_tsheet_body_tagInputTag of sheet body to be trimmed
需要修剪的板材主体标签
intbounding_object_countInputNumber of trimming boundary objects
修剪边界对象的数目
tag_t *bounding_objectsInputArray of NX eids of trimming objects
修剪对象的 NX 字节数组
UF_MODL_vector_p_tprojection_methodInputA variant record of the following int reverse_vector, UF_MODL_vector_type_t vector_type, where vector_type = UF_MODL_VECTOR_DIRECTION: project along a fixed vector, a vector, double[3], is required. UF_MODL_VECTOR_DIRECTION_EXACT_GEOMETRY: project along a fixed vector, a vector, double[3], is required, NX will produce exact geometry. UF_MODL_VECTOR_AXIS: project along a datum axis, an NX eid of the datum axis is required. UF_MODL_VECTOR_AXIS_EXACT_GEOMETRY: project along a datum axis, an NX eid of the datum axis is required, NX will produce exact geometry. UF_MODL_VECTOR_FACE_NORMALS project along face normals, no other input is needed. UF_MODL_VECTOR_FACE_NORMALS_EXACT_GEOMETRY project along face normals, no other input is needed, NX will produce exact geometry when ever possible.
需要对下面的整型反向向量 UF _ MODL _ Vector _ type _ t Vector _ type 进行变量记录,其中 Vector _ type = UF _ MODL _ VECTOR _ DIRECTION: 沿着一个固定的向量(一个向量,双[3])进行投影。UF _ MODL _ VECTOR _ DIRECTION _ EXACT _ GEOMETRY: 沿着一个固定的向量投影,需要一个向量 double [3] ,NX 将产生精确的几何图形。UF _ MODL _ VECTOR _ AXIS: 沿着基准轴投影,需要基准轴的 NX 标记。UF _ MODL _ VECTOR _ AXIS _ EXACT _ GEOMETRY: 沿着基准轴投影,需要一个基准轴的 NX 标志,NX 将产生精确的几何图形。UF _ MODL _ VECTOR _ FACE _ NORMALS 沿面法线投影,不需要其他输入。UF _ MODL _ VECTOR _ FACE _ NORMALS _ EXACT _ GEOMETRY 项目沿面法线,不需要其他输入,NX 将尽可能产生精确的几何图形。
intkey_ptInputPoints defining regions to: 1 = discard; 0 = keep
定义区域的点: 1 = 丢弃; 0 = 保留
intpoint_countInputNumber of region points
区域点数
doublepoint_coords [ ]InputArray of region points on the sheet to be trimmed. This array contains 3point_count entries.
工作表上要裁剪的区域点的数组。该数组包含3point _ count 条目。
doubletoleranceInputDistance tolerance for approximations.
近似距离公差。
int *gap_point_countOutputThe number of gap points returned when there are gaps between the edges produced by the bounding objects. These points show where the gaps are.
当边界对象生成的边之间存在间隙时返回的间隙点数。这些点显示了缺口的位置。
double * *gap_pointsOutput to UF_freeArray of points showing location of the gaps. This array has 3n_gap_points entries. This array must be freed by calling UF_free.
显示间隙位置的点数组。这个数组有3n _ gap _ points 条目。必须通过调用 UF _ free 来释放此数组。
tag_t *feature_obj_eidOutputFeature object id of trimmed sheet.
修剪后的工作表的特征对象 ID。