NX二次开发-UFUN圆弧矩阵标记、起始角和结束角(弧度测量)、圆弧中心坐标和圆弧半径UF_CURVE_ask_arc_data(边可以用)
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(边可以用)的更多相关文章
- NX二次开发-通过3x3矩阵获取XYZ轴矢量
函数:UF_CSYS_ask_wcs() 函数说明:通过3x3矩阵获取XYZ轴矢量 用法: 1 #include <uf.h> 2 #include <uf_mtx.h> 3 ...
- NX二次开发-Ufun API Example
UF公共类型 UF_begin_timer计时函数 https://www.cnblogs.com/nxopen2018/p/10957135.html UF_end_timer计时函数 https: ...
- NX二次开发-UFUN发射线函数UF_MODL_trace_a_ray的用法
今天是国庆节,放假休息懒得动,没有出去玩,在家研究一下发射线函数UF_MODL_trace_a_ray.小弟以前在软件公司混的时候,当时我做的那个项目就用到了UF_MODL_trace_a_ray,当 ...
- NX二次开发-UFUN将工程图转成CGM和PDF文件UF_CGM_export_cgm
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...
- NX二次开发-UFUN获取NX系统默认导出CGM的选项设置UF_CGM_ask_default_export_options
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...
- NX二次开发-UFUN获取当前导出CGM选项设置UF_CGM_ask_session_export_options
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...
- NX二次开发-UFUN修改当前导出CGM文件选项设置UF_CGM_set_session_export_options
文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了: ...
- NX二次开发-UFUN计算两点距离UF_VEC3_distance
NX11+VS2013 #include <uf.h> #include <uf_curve.h> #include <uf_vec.h> UF_initializ ...
- NX二次开发-UFUN拉伸函数UF_MODL_create_extruded
NX9+VS2012 //NX二次开发中常用拉伸函数为UF_MODL_create_extruded2,但是此函数不能拉伸片体, //想要拉伸片体用函数UF_MODL_create_extruded. ...
随机推荐
- php上传文件(简易版)
1.前台form表单处添加 enctype="multipart/form-data" 2. //上传文件保存到目录 header("content-type:text/ ...
- lua 线程
{ //https://blog.csdn.net/gulan0/article/details/50373276 }
- PXE预启动执行环境的搭建
搭建DHCP地址服务器 DHCP地址分配的四次会话:(广播形式)[先到先得] Discovery---->Offer---->Request---->Ack 一个局域网内不能同 ...
- spring boot基于DRUID数据源密码加密及数据源监控实现
前言 随着需求和技术的日益革新,spring boot框架是越来越流行,她也越来越多地出现在我们的项目中,当然最主要的原因还是因为spring boot构建项目实在是太爽了,构建方便,开发简单,而且效 ...
- [NOIP2016]天天爱跑步 题解(树上差分) (码长短跑的快)
Description 小c同学认为跑步非常有趣,于是决定制作一款叫做<天天爱跑步>的游戏.<天天爱跑步>是一个养成类游戏,需要 玩家每天按时上线,完成打卡任务.这个游戏的地图 ...
- vscode gp 安装第三方包
由于code.google.com被墙,导致一些托管在code.google.com上面的包go get不下来,此功能就是用于解决这个问题. http://www.golangtc.com/downl ...
- 使用VS2015制作安装包( 含相关的下载链接)
补充: 在看下面的教程过程中,如果在下面的步聚1中没有 " Visual Studio Installer", 则需要通过下面的链接进行安装 Visual Studio Insta ...
- 剑指offer第二版面试题9:用两个队列实现栈(JAVA版)
题目:用两个队列实现栈. 分析:通过一系列的栈的压入和弹出操作来分析用队列模拟一个栈的过程,如图所示,我们先往栈内压入一个元素a.由于两个队列现在都是空,我们可以选择把a插入两个队列中的任一个.我们不 ...
- pycharm中django同步数据库问题
一.Django数据同步过程中遇到的问题: 1.raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you hav ...
- Error: EBUSY: resource busy or locked, symlink "xxx" 的解决方法
上面是报错信息. 解决方法:当我们在npm i 安装依赖的时候,会遇到这个Error: EBUSY: resource busy or locked, symlink....的问题.解决的 办法就是关 ...