Esempio n. 1
0
        public static DataTable BuscarAreaEmpleado(string textoBuscar)
        {
            DArea objArea = new DArea();

            objArea.TextoBuscar = textoBuscar;
            return(objArea.BuscarAreaEmpleado(objArea));
        }
Esempio n. 2
0
 /// <summary>
 /// 获取区域信息
 /// </summary>
 /// <param name="id">区域ID</param>
 /// <returns></returns>
 public Area GetArea(short id)
 {
     try
     {
         DArea da = new DArea();
         return(da.SELECT_BY_ID(id));
     }
     catch
     {
         return(null);
     }
 }
Esempio n. 3
0
 /// <summary>
 /// 获取区域列表
 /// </summary>
 /// <param name="type">true市/false区</param>
 /// <returns></returns>
 public IList <Area> GetAreaList(bool type)
 {
     try
     {
         DArea da = new DArea();
         return(da.SELECT_BY_TYPE(type, true));
     }
     catch
     {
         return(null);
     }
 }
Esempio n. 4
0
 /// <summary>
 /// 获取区域列表
 /// </summary>
 /// <param name="cid">城市编码</param>
 /// <returns></returns>
 public IList <Area> GetAreaList(short cid)
 {
     try
     {
         DArea da = new DArea();
         return(da.SELECT_BY_CID(cid, true));
     }
     catch
     {
         return(null);
     }
 }
Esempio n. 5
0
// ---------------------------区域控制函数---------------------------
        /// <summary>
        /// 获取全部区域列表
        /// </summary>
        /// <returns></returns>
        public IList <Area> GetAreaList()
        {
            try
            {
                DArea da = new DArea();
                return(da.SELECT_ISUSED(true));
            }
            catch
            {
                return(null);
            }
        }
Esempio n. 6
0
        static void areacmp()
        {
            int d1 = 20, d2 = 10;

            DArea dv;
            Area  Area = new Area();

            dv = new DArea(Area.TriA);

            Console.WriteLine("1.三角形.....");
            Area.GetArea(d1, d2, dv);

            Console.WriteLine("2.矩形");
            Area.GetArea(d1, d2, new DArea(Area.RecA));

            Console.Read();
        }
Esempio n. 7
0
        public static void GetArea(int x, int y, DArea tv)
        {
            double area = tv(x, y);

            Console.WriteLine($"高:{x},底:{y},面積:{area}");
        }
Esempio n. 8
0
        public static void GetArea(int x, int y, DArea tv)
        {
            double area = tv(x, y);

            Console.WriteLine("高:{0},底:{1},面積:{2}\n", x, y, area);
        }
Esempio n. 9
0
 void GetRecursive( ref List<DArea> connectGroup, DArea area )
 {
     if (connectGroup.Contains(area) == false) {
         connectGroup.Add( area );
         foreach (DArea a in area.connectedArea) {
             GetRecursive( ref connectGroup, a);
         }
     }
 }
Esempio n. 10
0
    /// <summary>
    /// 指定した方向に隣接する部屋のリストを取得する
    /// </summary>
    /// <returns>隣接する部屋リスト.</returns>
    /// <param name="areas">部屋のリスト.</param>
    /// <param name="area">元となる部屋.</param>
    /// <param name="direction">隣接方向</param>
    public static List<DArea> GetNextAreas(List<DArea> areas, DArea area, RDirection4 direction)
    {
        if (areas == null || area == null || areas.Count <= 1) {
            return new List<DArea>();
        }

        List<DArea> ret = new List<DArea>();

        for (int i=0; i<areas.Count; i++)
        {
            if (areas[i]==area) continue;// 元部屋は無視

            // 位置が同じ部屋を返す
            switch (direction)
            {
            case RDirection4.up:
                if (area.top == areas[i].bottom)
                    if (!(area.left > areas[i].right && area.right < areas[i].left))
                        ret.Add(areas[i]);
                break;
            case RDirection4.right:
                if (area.right == areas[i].left)
                    if (!(area.top > areas[i].bottom && area.bottom < areas[i].top))
                        ret.Add(areas[i]);
                break;
            case RDirection4.down:
                if (area.bottom == areas[i].top)
                    if (!(area.left > areas[i].right && area.right < areas[i].left))
                        ret.Add(areas[i]);
                break;
            case RDirection4.left:
                if (area.left == areas[i].right)
                    if (!(area.top > areas[i].bottom && area.bottom < areas[i].top))
                        ret.Add(areas[i]);
                break;
            case RDirection4.ALL:
                if ((area.top == areas[i].bottom) || (area.bottom == areas[i].top))
                {
                    if (area.right < areas[i].left || area.left > areas[i].right) {
                    }
                    else {
                        ret.Add(areas[i]);
                    }
                }

                if ((area.right == areas[i].left) || (area.left == areas[i].right))
                {
                    if (area.top > areas[i].bottom || area.bottom < areas[i].top) {
                    }
                    else {
                        ret.Add(areas[i]);
                    }
                }
                break;
            case RDirection4.None:
                return ret;
            }
        }

        return ret;
    }