NX二次开发-获取CAE当前模态
适用版本:NX6及以上
在进行NX二次开发时,某些业务场景需要获取在仿真模块中模态信息,进行一些操作,比如导出名称。本篇技巧主要介绍通过NXOpen的方式来获取仿真模块当前模态的方法。
通过NXOpen的方式获取仿真模块当前选中的模态,可以获取到模态的信息,并用于其它操作。
手动实现
双击模态对象,根据PostView窗口,查看显示的信息,如图1所示。
代码实现
根据获取到的PostView的ID,获取到ResultType和Result。
1. int[] postviewIdArr = Session.GetSession().Post.GetPostviewIds();
2. string modalName = null;
3. if (postviewIdArr.Length != 0)
4. {
5. Result res; ResultParameters rp;
6.Session.GetSession().Post.GetResultForPostview(postviewIdArr, out res, out rp);
7. ResultType resultType = rp.GetGenericResultType() as ResultType;
8. var modal = AutoCAEReportForm.GetSelectedModal(res, resultType);//选中模态的名称
9. if (modal == null) return;
10. modalName = modal.Name;
11.}
通过遍历找到选中模态的BaseIteration,然后获取到相应的模态对象,如下代码所示。
1. public static BaseIteration GetSelectedModal(Result res, ResultType rt)
2. {
3. BaseLoadcase[] allLoadcases = res.GetLoadcases();
4. foreach (var oneLoadcase in allLoadcases)
5. {
6. foreach (BaseIteration iteration in oneLoadcase.GetIterations())
7. {
8. foreach (BaseResultType resultTypes in iteration.GetResultTypes())
9. {
10. if (resultTypes.Tag == rt.Tag)
11. {
12. return iteration;
13. }
14. }
15. }
16. }
17. return null;
18. }
综上所述,我们通过PostView的ID,获取到相应的模态对象。根据获取到的模态对象,可以获取相应的信息,用于其他的操作。
免责声明:
1、本站所有资源文章出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。
2、本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户擦亮眼睛自行鉴别,做一个有主见和判断力的用户。
3、本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。
4、侵权违法和不良信息举报 举报邮箱:cnddit@qq.com
还没有评论,来说两句吧...