ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

链式(路径)选取方式

2021-08-14 14:35:07  阅读:187  来源: 互联网

标签:lineNum 0.0 路径 dynamic line1 选取 cast 链式 fcList


void ZiDongWanTou::cycleLine()
{
Session *theSession = Session::GetSession();
Part *displayPart(theSession->Parts()->Display());
Part *workPart(theSession->Parts()->Work());
/////链先取方式
std::vector<TaggedObject*>objects1 = this->edge_select01->GetProperties()->GetTaggedObjectVector("SelectedObjects");
line1 = dynamic_cast<Line*>(objects1[0]);
lineNum.push_back(line1->Tag());


/*Point3d p11(0.0, 0.0, 0.0);*/
Point3d p12(0.0, 0.0, 0.0);
Point3d p21(0.0, 0.0, 0.0);
//Point3d p22(0.0, 0.0, 0.0);
for(int i=0;i<objects1.size()-1;i++)
{
for(int j=1;i<objects1.size()-1;j++)
{
line2 = dynamic_cast<Line*>(objects1[j]);

p12=line1->EndPoint();
p21=line2->StartPoint(); ////p12=p21

if((p12.X==p21.X)&&(p12.Y==p21.Y)&&(p12.Z==p21.Z))
{

lineNum.push_back(line2->Tag());
line1 = line2;

break;

}
}

}

/////链先取方式 /////链先取方式

////以下为全部遍历方式
//Features::Feature *fcList;
//std::vector<NXObject *> entitiesArray; //std::vector是一种数组定义方式
//Features::FeatureCollection *fc=workPart->Features();//迭代
//Features::FeatureCollection::iterator itr=fc->begin();//获得第一个特征


//for (;itr!=fc->end();++itr) //循环获得所有特征
//{
// fcList=(*itr); //获得特征赋值给fcList
// NXString featType = NULL;
// featType = fcList->FeatureType();

// /*theSession->ListingWindow()->WriteLine(fcList->FeatureType());*/
// if(!strcmp(featType.GetLocaleText(),"LINE"))
// {
// //lineNum.push_back(fcList->Tag());

// entitiesArray = fcList->GetEntities(); //GetEntities方法,实体下0对象,Lineg下1对对象,基准下7对象,点集下对象最多
// lineNum.push_back(entitiesArray[0]->Tag());

// }

//}
//以下为全部遍历方式

//line1 =dynamic_cast<Line *>(entitiesArray[0]);

/*for(int i=0;i<lineNum.size();i++)
//{
// //NXObjectManager::Get(lineNum[i]);//通过tag得到 TaggedObject 对象指针.
////line1 =dynamic_cast<Line *>( NXObjectManager::Get(lineNum[i])); //dynamic_cast 将 TaggedObject对象指针转换为实际的 NX 对象指针
}*/

/*line1 = dynamic_cast<Line*>(entitiesArray[0]);
line2 = dynamic_cast<Line*>(entitiesArray[0]); */
//line1 =dynamic_cast<Line *>( NXObjectManager::Get(lineNum[0])); //dynamic_cast 将 TaggedObject对象指针转换为实际的 NX 对象指针
//line2 =dynamic_cast<Line *>( NXObjectManager::Get(lineNum[1])); //dynamic_cast 将 TaggedObject对象指针转换为实际的 NX 对象指针
//以下为全部遍历方式 //以下为全部遍历方式 // //以下为全部遍历方式
}

标签:lineNum,0.0,路径,dynamic,line1,选取,cast,链式,fcList
来源: https://www.cnblogs.com/glz7519/p/15140764.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有