public static void AddAgvToMapNew(bool isalive, string name, int site = 33, int dessite = 0, float rate = 0) { AgvModule agv = _agvModules.Find(c => { return(c._name.Equals(name)); }); if (agv == null) { AddAgvToModuleNew(isalive, name, site, dessite, rate); } }
public static void RemoveAgvModule(string name) { AgvModule agv = _agvModules.Find(c => { return(c._name.Equals(name)); }); if (agv != null) { _agvModules.Remove(agv); } }
/// <summary> /// 更新AGV当前所在位置 /// </summary> /// <param name="name"></param> /// <param name="siteid"></param> /// <param name="rate"></param> public static void UpdateAgvSite(string name, int siteid, float rate) { AgvModule agv = _agvModules.Find(c => { return(c._name.Equals(name)); }); if (agv != null) { point = LineDateCenter.GetMPointOnLine(siteid, rate); if (point != null) { agv.Update(new Point(point.X, point.Y)); } } }
/// <summary> /// 新更新AGV坐标方法方法 /// </summary> /// <param name="name"></param> /// <param name="siteid"></param> /// <param name="rate"></param> /// <param name="dessite"></param> public static void UpdateAgvSiteNew(string name, int siteid, int dessite = 0, float rate = -1) { AgvModule agv = _agvModules.Find(c => { return(c._name.Equals(name)); }); if (agv != null) { agvPoint = AgvLineMaster.GetMPointOnLine(name, siteid, dessite, rate); if (agvPoint != null) { agv.Update(new Point(agvPoint.X, agvPoint.Y)); } } }
/// <summary> /// AGV添加到地图的新方法 /// </summary> /// <param name="agvname"></param> /// <param name="site"></param> /// <param name="rate"></param> public static void AddAgvToModuleNew(bool isalive, string agvname, int site = 33, int dessite = 0, float rate = 0) { AgvPoint p = AgvLineMaster.GetMPointOnLine(agvname, site, dessite, rate); if (p != null) { AgvModule agvm = new AgvModule(agvname, new Point(p.X, p.Y), site); agvm.UpdateAgvStatus(isalive); agvm.PointSite = dessite; _agvModules.Add(agvm); FLog.Log("添加" + agvname + ",地标:" + site + ",地标:" + p.X + "," + p.Y); } else { FLog.Log("找不到地标对应地图位置:" + agvname + ",地标:" + site); } }