Exemple #1
0
        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);
            }
        }
Exemple #2
0
        public static void RemoveAgvModule(string name)
        {
            AgvModule agv = _agvModules.Find(c => { return(c._name.Equals(name)); });

            if (agv != null)
            {
                _agvModules.Remove(agv);
            }
        }
Exemple #3
0
        /// <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));
                }
            }
        }
Exemple #4
0
        /// <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));
                }
            }
        }
Exemple #5
0
        /// <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);
            }
        }