예제 #1
0
        /// <summary>
        /// 添加AGV到地图上
        /// </summary>
        /// <param name="agvname"></param>
        /// <param name="site"></param>
        /// <param name="rate"></param>
        public static void AddAgvToModule(string agvname, int site = 23, float rate = 0)
        {
            MPoint p = LineDateCenter.GetMPointOnLine(site, rate);

            if (p != null)
            {
                _agvModules.Add(new AgvModule(agvname, new Point(p.X, p.Y), site));
                AgvSiteMaster.AddAgvSiteRate(agvname, site, rate);
            }
        }
예제 #2
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));
                }
            }
        }