点击查看详细介绍

NXOpen装配中获得每个Component相关对应的约束

nxopen 7年前 3075 7

购买与咨询 NX 二次开发视频教程,请联系微信号:13890821008  QQ号:85585969  


//获得每个Component相关对应的约束,获得数据保存到map中,tag_t为组件的TAG,vector为组件对应的约束TAG
void GetComCorresConstraints(map<tag_t, vector<tag_t>>& pComConstraints )
{
	vector<Positioning::DisplayedConstraint* > displayedallConstraints = GetDisplayedallConstraints(); //显示部件的显示约束
	for(int a=0; a<displayedallConstraints.size(); a++)
	{
		Positioning::Constraint* iConstraint = displayedallConstraints[a]->GetConstraint();
		vector < NXOpen::Positioning::ConstraintReference * > iConstraintReference = iConstraint->GetReferences();		//获得约束参考
		for(int b=0; b<iConstraintReference.size(); b++)
		{
 			NXOpen::NXObject * pMovableObject = NULL;
			pMovableObject =	iConstraintReference[b]->GetMovableObject();
			if(pMovableObject != NULL)
			{
				map<tag_t, vector<tag_t>>::iterator iter = pComConstraints.find(pMovableObject->Tag());
				if(iter == pComConstraints.end())
				{

●●●请先 登陆注册 后查看●●●

				}
				else
				{
					if (iter->second.end() == std::find(iter->second.begin(), iter->second.end(), iConstraint->Tag()))
					{
						iter->second.push_back(iConstraint->Tag());
					}
 				}
			}
 		}
	}
}


0

最新回复 (7)
  • yunxuange168 7年前
    1

    这段代码还真是好用啊

  • yun123 6年前
    2

    楼主是用哪个函数得到的部件的约束啊,能否告诉一下,谢谢。

  • jarek 6年前
    3

    这段代码还真是好用啊

  • yun123 6年前
    4

    回复3楼(jarek):GetDisplayedConstraints的头文件能告知一下吗

  • cheengbin 6年前
    5

    GetDisplayedConstraints的头文件能告知一下吗

  • enricyx VIP会员 6年前
    6

    这个厉害了。。。。。。。。。可惜不是vip。。。。。。。

  • forecast 6年前
    7

    GetDisplayedConstraints的头文件能告知一下吗

请登录后发表新帖