尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

NX/UG二次开发:NX的方式获取一组vector中最大体积的实体

发布时间:2026/9/11 16:32:44

资讯中心
01
ARTICLE

NX/UG二次开发:NX的方式获取一组vector中最大体积的实体

NX/UG二次开发:NX的方式获取一组vector中最大体积的实体
//测量实体体积boolMeasureBody(tag_t body,doublebodyVolume){UF_UNDO_mark_id_t mark_id;try{UF_UNDO_set_mark(UF_UNDO_visible,NULL,mark_id);Session*theSessionSession::GetSession();Part*workPart(theSession-Parts()-Work());NXObject*nullNXObject(NULL);MeasureBodyBuilder*measureBodyBuilder1;measureBodyBuilder1workPart-MeasureManager()-CreateMeasureBodyBuilder(nullNXObject);std::vectorIBody*bodies1;Body*body1(dynamic_castBody*(NXObjectManager::Get(body)));bodies1.emplace_back(body1);std::vectorUnit*unit_vec;Unit*unit1(dynamic_castUnit*(workPart-UnitCollection()-FindObject(UF_UNIT_VOLUME_mm3)));unit_vec.emplace_back(unit1);MeasureBodies*measurebodys1workPart-MeasureManager()-NewMassProperties(unit_vec,0.5,bodies1);bodyVolumemeasurebodys1-Volume();returntrue;}catch(conststd::exception){UF_UNDO_undo_to_mark(mark_id,NULL);returnfalse;}}//测量一组体找出最大体积的体tag_tMeasureBodysGetMax(vectortag_tvBodys){doubleMaxVolumNULL;//最大体积tag_t MaxVloumTagNULL_TAG;//最大体积的Tagfor(size_t i0;ivBodys.size();i){//当前对象体积doubleBodyVolumNULL;MeasureBody(vBodys[i],BodyVolum);if(BodyVolumMaxVolum){MaxVolumBodyVolum;MaxVloumTagvBodys[i];}}returnMaxVloumTag;}
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。