Use SolidWorks API to MovePart and Collision Detection 利用solidworks的API来移动控件物体以及进行碰撞检测
可以看到有两个控件
使用封装的函数void MovePart(string partName,double thetax,double thetay,double thetaz, double xDistance, double yDistance, double zDistance,double scale)改变部件 partname 是部件名称 比如 床
他的部件名应该为string partName = "bed2-1"; 您可以参考样例来学习更多的使用; thetax、thetay、thetaz分别是让物块按照不同的轴转动,您也可以三个都写进行复杂转动,该函数中已经将多角度转动融合了。注意,这里的转动是转动到指定位置,而不是转动多少度。比如你想要30°,60°,您应该直接写对应的角度,而不是运行两次30°。 xDistance、yDistance、zDistance分别是指定轴方向的平移,这个平移经不确定的测量,可能1代表1m的运动距离 这个就是实打实的运动1m,比如你要0,1,2,3m的位置距离,那就多次写入运行1 scale是放缩该部件,这里不做赘述。
打开solidworks后 连接solidworks 这里我写了一个简单的界面的连接按钮。
连接成功
即可对物块进行操作了,例如 旋转30°
bool CheckForInterference() 调用后如果当前所有界面中有碰撞 那么会返回true 否则返回false
组合运动上述两个功能,即可用solidworks模拟机械设备运动,并知晓当前位置是否会发生碰撞,最终知道在各个位置是否会出现碰撞冲突,存入数据库,以指导机械运动的安全联锁。