今天要讲的是我在开发中遇到的一个比较让我感觉很不可思议的事情,我在拥有很多已知三维点位的情况下在草图上打点。但是草图上创建的点位和我给的点位坐标不一致,我在调试的时候一直百思不得其解。
最后在大神的帮助下得到解决,下面给出这个问题的解决思路。
想要解决上面问题需要运用一个API帮助如下图所示:
相信大家看到这个API帮助,已经知道该怎么解决这种问题了。
没错,根据备注中的解释是:我们在创建点位的时候,因为网格和实体捕获的原因导致定位出现了偏移。为了避免出现上述问题,所以使用上述图中API将其放到solidworks的数据库中。
这个问题虽然已经解决,但是solidworks给我带来的震惊却久久不散。感觉到自己的兴趣越来越浓厚了,非常有意思。
这个solidworks数据库不止在建模中,装配中,草图中使用,在制图模块也是有应用的。
在制图模块进行写注释的时候,要先开启solidworks数据库,然后在书写完内容以后再关闭数据库。
举个例子:
swsketchmrg.addtodb=true;
createnote(swdrawing,swsketchmrg,"无属性",50/1000,50/1000);
swsketchmrg.addtodb=false;
而在这里需要注意当设置了swsketchmrg.addtodb=true;以后,solidworks运行模式将一直处于开启直接添加至数据库的模式,这会影响正常用户与solidworks软件的交互,所以在执行完相关自动化操作以后,要使用swsketchmrg.addtodb=false;关闭该模式,保证solidworks进入正常模式。
这个问题还是困扰了我好几天的时间。
最后希望上述经验能够帮助到还在困境中的你。