最近在学习AGV的知识,中间也遇到了很多的问题,我就打算把这些遇到的问题以及解决办法记录下来,希望对你也有帮助。也欢迎你留言,如果这里没有你所遇到的问题。
问题1:如何实现AGV与控制点的连接
一般【实体与实体】或者【实体与任务执行器】的连接或者断开,我们用的函数都是contextdragconnection(fromobject,toobject,连接方式)。然而,再用这个方式去实现AGV与控制点的联系,发现失败了。通过论坛咨询美国的大佬,可以用这个函数实现:function_s(object,"addConnection",-1,object)- 第一个object:指控制点cp
- “addConnection”:我目前也没有找到这个属性存放在树节点的哪里
- -1:【-1】或者【0】都能实现AGV与控制点【Travel AGV】的连接;如果值变为【1】,连接类型就会变成【Location】
- 第二个obejct:指AGV
Object cp1 = Model.find("ControlPoint3");
Object cp2 = Model.find("ControlPoint4");
Object newCP = duniform( 0, 1 ) == 1 ? cp1 : cp2;
Object taskEx = Model.find("TaskExecuter1");
//AGV agv = AGV( taskEx );
function_s(newCP,"addConnection",-1,taskEx);
扩展使用
当然我们再使用function_s(object,“addConnection”,-1,object)函数时,不仅仅可以用在AGV与控制点的连接,还可以用于控制点与控制点的连接。比如我想把cp1和cp2连接起来,并且连接线的类型为"NextLookForWork",那么代码为:function_s(cp1,“addConnection”,6,cp2);
先到这,后续会持续增加关于AGV的相关知识点。