1. NX9+VS2012
  2.  
  3. #include <uf.h>
  4. #include <uf_curve.h>
  5. #include <uf_modl.h>
  6. #include <vector>
  7. #include <uf_disp.h>
  8.  
  9. UF_initialize();
  10.  
  11. //第一步,创建5条直线
  12. UF_CURVE_line_t Coords1;
  13. Coords1.start_point[] = 0.0;
  14. Coords1.start_point[] = 0.0;
  15. Coords1.start_point[] = 0.0;
  16. Coords1.end_point[] = 20.0;
  17. Coords1.end_point[] = 0.0;
  18. Coords1.end_point[] = 0.0;
  19. tag_t LineTag1 = NULL_TAG;
  20. UF_CURVE_create_line(&Coords1, &LineTag1);
  21.  
  22. UF_CURVE_line_t Coords2;
  23. Coords2.start_point[] = 0.0;
  24. Coords2.start_point[] = 10.0;
  25. Coords2.start_point[] = 0.0;
  26. Coords2.end_point[] = 20.0;
  27. Coords2.end_point[] = 10.0;
  28. Coords2.end_point[] = 0.0;
  29. tag_t LineTag2 = NULL_TAG;
  30. UF_CURVE_create_line(&Coords2, &LineTag2);
  31.  
  32. UF_CURVE_line_t Coords3;
  33. Coords3.start_point[] = 0.0;
  34. Coords3.start_point[] = 20.0;
  35. Coords3.start_point[] = 0.0;
  36. Coords3.end_point[] = 20.0;
  37. Coords3.end_point[] = 20.0;
  38. Coords3.end_point[] = 0.0;
  39. tag_t LineTag3 = NULL_TAG;
  40. UF_CURVE_create_line(&Coords3, &LineTag3);
  41.  
  42. UF_CURVE_line_t Coords4;
  43. Coords4.start_point[] = 0.0;
  44. Coords4.start_point[] = 30.0;
  45. Coords4.start_point[] = 0.0;
  46. Coords4.end_point[] = 20.0;
  47. Coords4.end_point[] = 30.0;
  48. Coords4.end_point[] = 0.0;
  49. tag_t LineTag4 = NULL_TAG;
  50. UF_CURVE_create_line(&Coords4, &LineTag4);
  51.  
  52. UF_CURVE_line_t Coords5;
  53. Coords5.start_point[] = 0.0;
  54. Coords5.start_point[] = 40.0;
  55. Coords5.start_point[] = 0.0;
  56. Coords5.end_point[] = 20.0;
  57. Coords5.end_point[] = 40.0;
  58. Coords5.end_point[] = 0.0;
  59. tag_t LineTag5 = NULL_TAG;
  60. UF_CURVE_create_line(&Coords5, &LineTag5);
  61.  
  62. //第二步,将5条直线分别放到两个数组里
  63.  
  64. //创建vector数组
  65. std::vector<tag_t> LineCurve1;
  66. std::vector<tag_t> LineCurve2;
  67.  
  68. //将5条直线添加到数组1
  69. LineCurve1.push_back(LineTag1);
  70. LineCurve1.push_back(LineTag2);
  71. LineCurve1.push_back(LineTag3);
  72. LineCurve1.push_back(LineTag4);
  73. LineCurve1.push_back(LineTag5);
  74.  
  75. //将3条直线添加到数组2
  76. LineCurve2.push_back(LineTag2);
  77. LineCurve2.push_back(LineTag4);
  78. LineCurve2.push_back(LineTag5);
  79.  
  80. //算法,判断找到两个数组里不相同的对象
  81. for (int i = ; i < LineCurve1.size(); i++)
  82. {
  83. bool FindSame = false;
  84. for (int j = ; j < LineCurve2.size(); j++)
  85. {
  86. if (LineCurve1[i] == LineCurve2[j])
  87. {
  88. FindSame = true;
  89. break;
  90. }
  91. }
  92. if (FindSame == false)
  93. {
  94. //将两个数组里不相同的直线进行高亮
  95. UF_DISP_set_highlight(LineCurve1[i], );
  96. }
  97. }
  98.  
  99. UF_terminate();

NX二次开发-算法篇-判断找到两个数组里不相同的对象的更多相关文章

  1. NX二次开发-算法篇-随便找个不规则的体,找出面的中心点的Z坐标最高和最低的面,高亮显示

    NX9+VS2012 #include <uf.h> #include <uf_evalsf.h> #include <NXOpen/Body.hxx> #incl ...

  2. NX二次开发-算法篇-找相切面

    方法1:通过判断相邻面公共边的光顺性来找相切面 1 #include <uf.h> 2 #include <uf_modl.h> 3 #include <uf_obj.h ...

  3. NX二次开发-算法篇-vector函数排序(例子:遍历所有点并排序)

    NX9+VS2012 #include <uf.h> #include <uf_ui.h> #include <uf_curve.h> #include <u ...

  4. NX二次开发-算法篇-冒泡排序(例子:遍历所有点并排序)

    NX9+VS2012 #include <uf.h> #include <uf_ui.h> #include <uf_curve.h> #include <u ...

  5. NX二次开发-算法篇-创建最大边界包容盒

    NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_modl.h> #include <u ...

  6. NX二次开发-UFUN获取直线的两个端点UF_CURVE_ask_line_data

    NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_ui.h> UF_initialize(); ...

  7. 【NX二次开发】uf5945获得旋转矩阵、uf5947根据变换矩阵移动或复制对象

    返回一个矩阵,可以绕任意轴旋转. 与uf5947结合可以将对象沿着任意轴进行旋转.不是所有对象都能用uf5947变换,带参的实体.部件都不可以用此函数变换.下面是旋转WCS的例子. extern Dl ...

  8. 【NX二次开发】多种变换

    变换的种类: uf5942 矩阵乘积变换 uf5943 平移变换 uf5944 缩放变换 uf5945 旋转变换 uf5946 镜像变换 最后使用 uf5947 实现uf5942-uf5946的变换. ...

  9. NX二次开发-基于MFC界面的NX对Excel读写操作(OLE方式(COM组件))

    NX二次开发API里没有对EXCAL读写操作的相关函数,市面上有很多种方法去实现,比如UFUN调KF,ODBC,OLE(COM组件)等等.这里我是用的OLE(COM组件)方式去做的,这种在VC上创建的 ...

随机推荐

  1. 电子商务B2B的发展趋势

    B2B的发展趋势 尽管B2B市场发展势头良好,但B2B市场还是存在发育不成熟的一面.这种不成熟表现在B2B交易的许多先天性交易优势,比如在线价格协商和在线协作等还没有充分发挥出来. 报告指出,到200 ...

  2. 练习 |跟着Python达人

    [学习Python都是用来干嘛的?] 朱卫军 数据分析师 NEV行业 python那些事儿众号主 网址 https://www.zhihu.com/question/34098079/answer/8 ...

  3. 【JVM】符号引用和直接引用

    在JVM中类加载过程中,在解析阶段,Java虚拟机会把类的二级制数据中的符号引用替换为直接引用. 1.符号引用(Symbolic References): 符号引用以一组符号来描述所引用的目标,符号可 ...

  4. posix_rpi_common.cmake学习

    # This file is shared between posix_rpi_native.cmake 这个文件在posix_rpi_native.cmake和posix_rpi_cross.cma ...

  5. Shiro学习(19)动态URL权限限制

    用过spring Security的朋友应该比较熟悉对URL进行全局的权限控制,即访问URL时进行权限匹配:如果没有权限直接跳到相应的错误页面.Shiro也支持类似的机制,不过需要稍微改造下来满足实际 ...

  6. 树的性质——cf1244D

    特别简单,只有链的形式才符合要求,那么枚举前两个点的颜色搞一下就可以 #include <bits/stdc++.h> using namespace std; ][],pos[],ok= ...

  7. 数学思维——cf1244C

    可惜cf不能用int128,不然这个题就是个exgcd的板子题 这是exgcd的解法,但是只用ll的话会溢出 #include<bits/stdc++.h> using namespace ...

  8. 思维构造+匹配——cf1199E

    直接枚举每条边,如果边加到图中后还是个匹配图,就直接加,反之就不加 这样加完所有边后,剩下的点必定可以组成一个独立集:因为如果剩下的点中还有互相匹配的,那么这对点应该在加边时就被算到匹配图中 所以要么 ...

  9. Android Dialog对话框的七种形式的使用

    参考资料:http://www.oschina.net/question/54100_32486 注:代码进行了整理 在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询 ...

  10. Machine Learning 之二,什么监督性学习,非监督性学习。

    1.什么是监督性学习?Supervised  Machine Learning. 在监督性学习,我们给定一个数据集以及我们已经知道正确输出的结果,然后找到一个输入和输出的关系. In Supervis ...