NX二次开发-算法篇-判断找到两个数组里不相同的对象
NX9+VS2012
#include <uf.h>
#include <uf_curve.h>
#include <uf_modl.h>
#include <vector>
#include <uf_disp.h>
UF_initialize();
//第一步,创建5条直线
UF_CURVE_line_t Coords1;
Coords1.start_point[] = 0.0;
Coords1.start_point[] = 0.0;
Coords1.start_point[] = 0.0;
Coords1.end_point[] = 20.0;
Coords1.end_point[] = 0.0;
Coords1.end_point[] = 0.0;
tag_t LineTag1 = NULL_TAG;
UF_CURVE_create_line(&Coords1, &LineTag1);
UF_CURVE_line_t Coords2;
Coords2.start_point[] = 0.0;
Coords2.start_point[] = 10.0;
Coords2.start_point[] = 0.0;
Coords2.end_point[] = 20.0;
Coords2.end_point[] = 10.0;
Coords2.end_point[] = 0.0;
tag_t LineTag2 = NULL_TAG;
UF_CURVE_create_line(&Coords2, &LineTag2);
UF_CURVE_line_t Coords3;
Coords3.start_point[] = 0.0;
Coords3.start_point[] = 20.0;
Coords3.start_point[] = 0.0;
Coords3.end_point[] = 20.0;
Coords3.end_point[] = 20.0;
Coords3.end_point[] = 0.0;
tag_t LineTag3 = NULL_TAG;
UF_CURVE_create_line(&Coords3, &LineTag3);
UF_CURVE_line_t Coords4;
Coords4.start_point[] = 0.0;
Coords4.start_point[] = 30.0;
Coords4.start_point[] = 0.0;
Coords4.end_point[] = 20.0;
Coords4.end_point[] = 30.0;
Coords4.end_point[] = 0.0;
tag_t LineTag4 = NULL_TAG;
UF_CURVE_create_line(&Coords4, &LineTag4);
UF_CURVE_line_t Coords5;
Coords5.start_point[] = 0.0;
Coords5.start_point[] = 40.0;
Coords5.start_point[] = 0.0;
Coords5.end_point[] = 20.0;
Coords5.end_point[] = 40.0;
Coords5.end_point[] = 0.0;
tag_t LineTag5 = NULL_TAG;
UF_CURVE_create_line(&Coords5, &LineTag5);
//第二步,将5条直线分别放到两个数组里
//创建vector数组
std::vector<tag_t> LineCurve1;
std::vector<tag_t> LineCurve2;
//将5条直线添加到数组1
LineCurve1.push_back(LineTag1);
LineCurve1.push_back(LineTag2);
LineCurve1.push_back(LineTag3);
LineCurve1.push_back(LineTag4);
LineCurve1.push_back(LineTag5);
//将3条直线添加到数组2
LineCurve2.push_back(LineTag2);
LineCurve2.push_back(LineTag4);
LineCurve2.push_back(LineTag5);
//算法,判断找到两个数组里不相同的对象
for (int i = ; i < LineCurve1.size(); i++)
{
bool FindSame = false;
for (int j = ; j < LineCurve2.size(); j++)
{
if (LineCurve1[i] == LineCurve2[j])
{
FindSame = true;
break;
}
}
if (FindSame == false)
{
//将两个数组里不相同的直线进行高亮
UF_DISP_set_highlight(LineCurve1[i], );
}
}
UF_terminate();

NX二次开发-算法篇-判断找到两个数组里不相同的对象的更多相关文章
- NX二次开发-算法篇-随便找个不规则的体,找出面的中心点的Z坐标最高和最低的面,高亮显示
NX9+VS2012 #include <uf.h> #include <uf_evalsf.h> #include <NXOpen/Body.hxx> #incl ...
- NX二次开发-算法篇-找相切面
方法1:通过判断相邻面公共边的光顺性来找相切面 1 #include <uf.h> 2 #include <uf_modl.h> 3 #include <uf_obj.h ...
- NX二次开发-算法篇-vector函数排序(例子:遍历所有点并排序)
NX9+VS2012 #include <uf.h> #include <uf_ui.h> #include <uf_curve.h> #include <u ...
- NX二次开发-算法篇-冒泡排序(例子:遍历所有点并排序)
NX9+VS2012 #include <uf.h> #include <uf_ui.h> #include <uf_curve.h> #include <u ...
- NX二次开发-算法篇-创建最大边界包容盒
NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_modl.h> #include <u ...
- NX二次开发-UFUN获取直线的两个端点UF_CURVE_ask_line_data
NX9+VS2012 #include <uf.h> #include <uf_obj.h> #include <uf_ui.h> UF_initialize(); ...
- 【NX二次开发】uf5945获得旋转矩阵、uf5947根据变换矩阵移动或复制对象
返回一个矩阵,可以绕任意轴旋转. 与uf5947结合可以将对象沿着任意轴进行旋转.不是所有对象都能用uf5947变换,带参的实体.部件都不可以用此函数变换.下面是旋转WCS的例子. extern Dl ...
- 【NX二次开发】多种变换
变换的种类: uf5942 矩阵乘积变换 uf5943 平移变换 uf5944 缩放变换 uf5945 旋转变换 uf5946 镜像变换 最后使用 uf5947 实现uf5942-uf5946的变换. ...
- NX二次开发-基于MFC界面的NX对Excel读写操作(OLE方式(COM组件))
NX二次开发API里没有对EXCAL读写操作的相关函数,市面上有很多种方法去实现,比如UFUN调KF,ODBC,OLE(COM组件)等等.这里我是用的OLE(COM组件)方式去做的,这种在VC上创建的 ...
随机推荐
- 特种设备TSG 认证流程
特种设备许可,也叫安全注册(原为AZ安全注册认可),现为TS.国家为了防止和减少事故,保障人民群众生命和财产安全,促进经济发展而强制实施的安全监察.它的作用相当于欧盟的“CE”认证,但比“CE”认证更 ...
- bootstrap 好看的上传组件
<!DOCTYPE html> <html> <head> <title></title> <link rel="style ...
- vue基础五
条件渲染 1.v-if 1.1<template>中v-if条件组 因为 v-if 是一个指令,需要将它添加到一个元素上.但是如果我们想切换多个元素呢?此时我们可以把一个<templ ...
- Delphi 文件操作(路径、目录)
Delphi利用系统环境变量获取常用系统目录 //譬如 %WINDIR% 是表示系统目录的系统变量, 可以这样获取: var s: string; begin s := GetEnvironmentV ...
- Spring源码剖析3:Spring IOC容器的加载过程
本文转自五月的仓颉 https://www.cnblogs.com/xrq730 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https ...
- netif_rx解析
netif_rx函数是在网上收到数据包后,通过中断机制通知CPU而间接调用的中断处理例程. 首先,会将Packet传给netpoll框架,该框架用于在网络协议栈不可用的情况下,也能够提供给内核一个收发 ...
- BigDecimal.divide方法
java.math.BigDecimal.divide(BigDecimal divisor, int roundingMode) 返回一个BigDecimal,其值为(this/除数),其标度是th ...
- python的三种特性
1.封装 什么时候用函数? 各个函数之间是独立的且无共用的数据. 什么时候用类? 函数之间是相关的,且有共用的数据,则可以使用类来封装. 所谓的封装: (1)使用构造方法将内容封装到 对象 中. (2 ...
- 使用Postman模拟HTTP请求
使用Postman模拟HTTP请求 Postman是一款强大的前端调试工具,不管是开发人员还是测试人员都会需要调试接口程序,如RestAPI,此时可以通过向服务器发送不同的HTTP请求来判断接口返回结 ...
- LVS DR模拟实验
准备多台服务器,现以三台服务器为例第一台做调度器 192.168.200.111[root@localhost ~]# iptables -F[root@localhost ~]# setenforc ...