适用版本:NX 6.0以上

一、概述

在NX二次开发中,根据射线查找对象是非常常见的一种操作。射线并非是需要创建的对象,只是用于描述该功能的一种说法,本文主要介绍如何使用射线函数获得对象,并说明使用过程中容易出错的问题点。

二、射线函数介绍

1、函数名称


(资料图)

2、函数参数介绍:

int num_bodies

射线目标体的数量

tag_t * bodies

描述目标体的数组指针

double origin [ 3 ]

射线的原点

double direction [ 3 ]

射线的法向

double transform [ 16 ]

描述射线信息的所在坐标系信息

int num_desired

期望射中的数量,0表示返回所有结果

int * num_results

实际返回的结果数量

UF_MODL_ray_hit_point_info_p_t * hit_list

射线返回结果的结构体集合指针

3、结构体介绍:

UF_MODL_ray_hit_point_info_s

double hit_point [3]

描述射中的点坐标

double hit_normal [3]

描述射中位置所在面的法向

tag_t hit_face

描述射中的面标识,注意:该参数总是原型标识

tag_t hit_body

描述射中的体标识

4、用法案例

5、易错点

由于射线结果返回的面是原型面的标识,如果本身模型是装配环境,可能需要我们提供原型找到该面的实例标识,代码如下:

三、总结

射线函数可以在许多算法中用到,特别需要注意的是返回结果中的面是原型面,后续使用按需进行转换即可。

能科科技介绍

能科科技股份有限公司,成立于2006年12月,2016年10月在上交所上市(股票代码:603859.SH)致力成为制造业企业的数字化转型合作伙伴,围绕工业互联网经营生态,围绕全流程数字孪生组织能力,以生产力中台为基础,建设新时代企业应用服务基础设施,赋能客户实现智能制造转型与数字化运作。

能科科技上海联宏事业部,专注为汽车、轨道交通、通用机械、消费电子等领域内的广大用户提供面向工业4.0的全产品生命周期的数字化产品工程解决方案及全方位资深咨询服务。

推荐内容