#include <uf_csys.h>
UF_CSYS_ask_csys_info 获得坐标 相关的矩阵和原点
UF_CSYS_ask_matrix_of_object 获得对象 相关的矩阵(比如:视图、坐标)
UF_CSYS_ask_matrix_values 获得 3x3矩阵数据
UF_CSYS_ask_wcs 获得当前工作坐标
UF_CSYS_create_csys 创建一个坐标系
UF_CSYS_create_matrix 创建3×3矩阵
UF_CSYS_create_temp_csys 创建一个临时的坐标系统
UF_CSYS_edit_matrix_of_object 修改更新一个坐标的矩阵
UF_CSYS_map_point 坐标转换,点数据从一个坐标转换到另一个坐标
UF_CSYS_set_origin 设置一个坐标的原点
UF_CSYS_set_wcs 设置工作坐标
UF_CSYS_set_wcs_display 设置是否显示工作坐标
//获得坐标 相关的矩阵和原点
tag_t csys_id=NULL_TAG; //输入 坐标标识
tag_t matrix_id=NULL_TAG; //输出 矩阵标识
double csys_origin[ 3 ]; //输出 坐标原点
UF_CSYS_ask_csys_info (csys_id, &matrix_id, csys_origin);
//获得对象 相关的矩阵(比如:视图、坐标)
tag_t object_id=NULL_TAG; //输入 对象标识(比如:视图、坐标)
tag_t matrix_id=NULL_TAG; //输出 矩阵标识(如果没有返回 NULL_TAG)
UF_CSYS_ask_matrix_of_object (object_id, &matrix_id );
//获得 3x3矩阵数据
tag_t matrix_id=NULL_TAG; //输入矩阵标识
double matrix_values[ 9 ]; //输出 3x3矩阵 数据
UF_CSYS_ask_matrix_values ( matrix_id, matrix_values );
//获得 当前工作坐标
tag_t wcs_id=NULL_TAG;
UF_CSYS_ask_wcs (&wcs_id );
//创建一个坐标系
double csys_origin[ 3 ]={0,0,0}; //输入原点
tag_t matrix_id; //输入3x3矩阵 标识
tag_t csys_id; //输出坐标
UF_CSYS_create_csys (csys_origin, matrix_id, &csys_id );
//创建3×3矩阵
double matrix_values[ 9 ]={1,0,0,0,1,0,0,0,1}; //输入
tag_t matrix_id=NULL_TAG; //输出
UF_CSYS_create_matrix(matrix_values, &matrix_id);
//创建一个临时的坐标系统
double csys_origin[3]={0,0,0,}; //输入原点
tag_t matrix_id=NULL_TAG; //输入矩阵标识
tag_t csys_id=NULL_TAG; //输出坐标系 标识
UF_CSYS_create_temp_csys (csys_origin, matrix_id, &csys_id );
//修改更新一个坐标的矩阵
tag_t object_id=NULL_TAG; //输入坐标标识
tag_t matrix_id=NULL_TAG; //输入矩阵标识
UF_CSYS_edit_matrix_of_object (object_id, matrix_id );
UF_CSYS_map_point //坐标转换,点数据从一个坐标转换到另一个坐标
//设置一个坐标的原点
UF_CSYS_set_origin (tag_t csys_tag, double origin[ 3 ] );
//设置工作坐标
UF_CSYS_set_wcs (tag_t csys_id );
//设置是否显示工作坐标
UF_CSYS_set_wcs_display
//单位化向量
UF_VEC3_cross //所谓单位化就是保持其方向不变,将其长度化为1
//向量平行
UF_VEC3_is_parallel //输入2个向量和一个公差,判断这两个向量是不是平行
//装配坐标获取
UF_ASSEM_ask_transform_of_occ()和UF_ASSEM_ask_component_data()用于获取指定组件的装配空间。
注释:
1、如果输入的参数是部件的事例标识,装配是组件所从属的部件文件(没有必要一定为显示部件),在这种情况下,装配空间可以解释为拥有装配的绝对坐标系。
2、如果函数UF_ASSEM_ask_component_data()的输入参数是实例标识,装配空间则是组件的直接父装配的绝对坐标系