分享

CATIA里居然能画可以转的魔方?

 rainman8deysmd 2020-05-22

在CATIA软件中,画个矩形草图,拉伸个凸台,得到一个立方体,即使对于新手都是再熟悉不过的操作了。

所以,下面的魔方模型,相信绝大多数小伙伴都能画出来——无非就是做27个立方体,倒个角,再给各个面设置对应的颜色

但如何实现下面的旋转效果,恐怕会一下子难倒一大片英雄好汉。

可能有点小伙伴会想到用DMU的KIN运动机构仿真去做,但不论是运动副的选择,还是指定层的9个块一起转,都不是看起来那么容易的事情(事实上小编现在也没有太好的思路用DMU实现)。

不过,既然萌生了这个想法,如果不把它做出来,它就会一直是小编的一个心病。

回想一下:小学时,老师告诉你3-5无法计算,但后来你知道了负数;初中时,老师告诉你负数不能开平方,但后来你知道了虚数……

所以,有些事情之所以你认为不可能,是因为你的认知、你的知识面还没有广到覆盖那个领域

之前,小编觉得有些运动模拟DMU无法实现。但当小编掌握了Automation二次开发后,对于运动的实现,DMU中有没有某种运动副就不那么重要了。因为我们可以通过VBA代码控制哪些Product,按怎样的规则,随意运动。

在正式开始讲解之前,我们先通过一个视频看看最终的效果。

接下来,小编来简述一下原理:

1.由于各个小方块的位置不固定,可旋转至各个位置。因此我们不能做“Part1是面向我们的面左上角那块”这种绝对的指定。对应的解决对策是:我们每次执行动作之前,都获取一下各个方块Part的装配坐标,并通过坐标值判断其属于哪一层,进而确定需要旋转的目标Part

2.确定了目标值之后,我们就可以利用Product下的相关属性方法,实现其绕指定轴系的旋转。

没错,以上就是完整的思路。到这里,悟性比较高且熟悉VBA的同学,应该已经可以查帮助写出代码实现上面视频中的功能了。

但如果你想看到完整的含注释的源代码讲解,或者需要进行相关答疑的服务,可以阅读下面的付费内容(含代码讲解及答疑群号)。

友情提示:没有VBA基础的同学请谨慎付费,可以先到ke.qq.combilibili.com搜索CATIA小狼,上面有小编录的免费的VBA入门视频教程。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约