1 NX11+VS2013
2
3 #include <uf.h>
4 #include <uf_ui.h>
5 #include <uf_modl.h>
6 #include <uf_curve.h>
7
8
9 UF_initialize();
10
11 //创建圆柱
12 UF_FEATURE_SIGN Sign = UF_NULLSIGN;
13 double Origin[3] = { 0.0, 0.0, 0.0 };
14 char *Height = "100";
15 char *Diam = "50";
16 double Direction[3] = { 0.0, 0.0, 1.0 };
17 tag_t CylTag = NULL_TAG;
18 UF_MODL_create_cyl1(Sign, Origin, Height, Diam, Direction, &CylTag);
19
20 //特征找体
21 tag_t body_tag = NULL_TAG;
22 UF_MODL_ask_feat_body(CylTag, &body_tag);
23
24 //体找边
25 uf_list_p_t edge_list;
26 UF_MODL_ask_body_edges(body_tag, &edge_list);
27
28 //获得链表的数量
29 int count = 0;
30 UF_MODL_ask_list_count(edge_list, &count);
31
32 UF_UI_open_listing_window();
33 for (int i = 0; i < count; i++)
34 {
35 //获得链表里的每一个tag
36 tag_t edge_tag = NULL_TAG;
37 UF_MODL_ask_list_item(edge_list, i, &edge_tag);
38
39 //获得边的类型
40 int edge_type = 0;
41 UF_MODL_ask_edge_type(edge_tag, &edge_type);
42 //Edge type :
43 //UF_MODL_LINEAR_EDGE线性边
44 //UF_MODL_CIRCULAR_EDGE圆形边
45 //UF_MODL_ELLIPTICAL_EDGE椭圆边
46 //UF_MODL_INTERSECTION_EDGE相交边
47 //UF_MODL_SPLINE_EDGE样条边
48 //UF_MODL_SP_CURVE_EDGE曲线边
49 //UF_MODL_FOREIGN_EDGE外边缘
50 //UF_MODL_CONST_PARAMETER_EDGE参数边
51 //UF_MODL_TRIMMED_CURVE_EDGE裁剪曲线边
52 //UF_MODL_CONVERGENT_EDGE收敛边
53 //判断是否为圆边
54 if (edge_type == UF_MODL_CIRCULAR_EDGE)
55 {
56 //圆弧矩阵标记、起始角和结束角(弧度测量)、圆弧中心坐标和圆弧半径
57 UF_CURVE_arc_t arc_coords;
58 UF_CURVE_ask_arc_data(edge_tag, &arc_coords);
59 double radius = arc_coords.radius;//圆弧半径
60 tag_t matrix = arc_coords.matrix_tag;//圆弧矩阵
61 double start = arc_coords.start_angle;//圆弧起始角
62 double end = arc_coords.end_angle;//圆弧结束角
63 double p1[3];
64 p1[0] = arc_coords.arc_center[0];//圆弧中心坐标
65 p1[1] = arc_coords.arc_center[1];
66 p1[2] = arc_coords.arc_center[2];
67
68 char msg[256];
69 sprintf_s(msg, "圆边的半径为:%f", radius);
70 UF_UI_write_listing_window(msg);
71 }
72
73 }
74
75 UF_terminate();
76
77 Caesar卢尚宇
78 2019年11月13日

NX二次开发-UFUN圆弧矩阵标记、起始角和结束角(弧度测量)、圆弧中心坐标和圆弧半径UF_CURVE_ask_arc_data(边可以用)的更多相关文章

  1. NX二次开发-通过3x3矩阵获取XYZ轴矢量

    函数:UF_CSYS_ask_wcs() 函数说明:通过3x3矩阵获取XYZ轴矢量 用法: 1 #include <uf.h> 2 #include <uf_mtx.h> 3 ...

  2. NX二次开发-Ufun API Example

    UF公共类型 UF_begin_timer计时函数 https://www.cnblogs.com/nxopen2018/p/10957135.html UF_end_timer计时函数 https: ...

  3. NX二次开发-UFUN发射线函数UF_MODL_trace_a_ray的用法

    今天是国庆节,放假休息懒得动,没有出去玩,在家研究一下发射线函数UF_MODL_trace_a_ray.小弟以前在软件公司混的时候,当时我做的那个项目就用到了UF_MODL_trace_a_ray,当 ...

  4. NX二次开发-UFUN将工程图转成CGM和PDF文件UF_CGM_export_cgm

    文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...

  5. NX二次开发-UFUN获取NX系统默认导出CGM的选项设置UF_CGM_ask_default_export_options

    文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...

  6. NX二次开发-UFUN获取当前导出CGM选项设置UF_CGM_ask_session_export_options

    文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...

  7. NX二次开发-UFUN修改当前导出CGM文件选项设置UF_CGM_set_session_export_options

    文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...

  8. NX二次开发-UFUN计算两点距离UF_VEC3_distance

    NX11+VS2013 #include <uf.h> #include <uf_curve.h> #include <uf_vec.h> UF_initializ ...

  9. NX二次开发-UFUN拉伸函数UF_MODL_create_extruded

    NX9+VS2012 //NX二次开发中常用拉伸函数为UF_MODL_create_extruded2,但是此函数不能拉伸片体, //想要拉伸片体用函数UF_MODL_create_extruded. ...

随机推荐

  1. leetcood学习笔记-35-二分法

    题目: 第一次提交; class Solution: def searchInsert(self, nums: List[int], target: int) -> int: for i in ...

  2. jsp EL运算符

    算术运算符 算术运算符 说明 示例 结果 + 加 ${1 + 1} 2 - 减 ${1 - 1} 0 * 乘 ${1 * 2} 2 /或div 除 ${3 / 2} 1.5 %或mod 取余 ${3 ...

  3. 存储emoji表情,修改字符集为utf8mb4

    SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%'; SET ch ...

  4. go结构体上的函数

    go结构体上的函数 我们可以将一个方法和一个结构体关联: type Saiyan struct { Name string Power int } func (s *Saiyan) Super() { ...

  5. Sqli labs系列-less-4 这关好坑!!!

    这章,可能我总结开会比较长,图比较多,因为,我在做了一半,走进了一个死胡同,脑子,一下子没想开到底为啥.... 然后我自己想了好长时间也没想开,我也不想直接就去看源码,所以就先去百度了一下,结果一下子 ...

  6. 点击手机返回键弹出Dialog对话框功能

    在程序中,我们为了防止出现客户在使用程序填信息或者浏览页面时因误点返回键造成关闭界面的现象,需要添加弹出框功能,以确认客户是否要退出本界面,下面是功能实现的代码: 1.点击手机返回键的判断 publi ...

  7. bigdecimal解决小数间的加减乘除

    public class bigdecimal { public static BigDecimal div(double v1,double v2){ BigDecimal b1=new BigDe ...

  8. PHP面试 PHP基础知识 六(正则表达式)

    正则表达式 正则表达式的作用 分割.查找.匹配.替换字符串 分隔符:正斜线(/).hash符号(#).以及取反符号(~)   通用原子:\d(代表十进制的0-9).\D (取反除了0-9).\w(数字 ...

  9. Linux初始化的汇编代码

    1. 内核文件布局 首先看一下arch/x86/boot/Setup.ld文件,它定义了链接后的内核文件布局. 1: /* 2: * setup.ld 3: * 4: * Linker script ...

  10. Flink DataStream API

    Data Sources 源是程序读取输入数据的位置.可以使用 StreamExecutionEnvironment.addSource(sourceFunction) 将源添加到程序.Flink 有 ...