Exemple #1
0
 public static List <SharpPSResponseDTO> CirclePlaceSearch(PlaceSearchRequestDTO placeSearchRequestDTO)
 {
     if (placeSearchRequestDTO.Location == null)
     {
         throw new System.Exception("Location必须不能为空值!");
     }
     return(BaseProxy.DoGetWithAutoDeserilize <PlaceSearchRequestDTO, List <SharpPSResponseDTO> >(Resources.BaiduMapPlaceSearch, placeSearchRequestDTO));
 }
Exemple #2
0
 public static List <PlaceSearchResponseDTO> PlaceSearch(PlaceSearchRequestDTO placeSearchRequestDTO)
 {
     if (placeSearchRequestDTO.Query == null || placeSearchRequestDTO.Query.Trim() == "")
     {
         throw new System.Exception("Query必须不能为空值!");
     }
     return(BaseProxy.DoGetWithAutoDeserilize <PlaceSearchRequestDTO, List <PlaceSearchResponseDTO> >(Resources.BaiduMapPlaceSearch, placeSearchRequestDTO));
 }
Exemple #3
0
        public void RectanglePS()
        {
            PlaceSearchRequestDTO placeSearchRequestDTO = new PlaceSearchRequestDTO();

            placeSearchRequestDTO.Query  = "atm机";
            placeSearchRequestDTO.Bounds = "39.915,116.404,39.975,116.414";
            placeSearchRequestDTO.Output = "json";
            var result = BaiduProxy.RectanglePlaceSearch(placeSearchRequestDTO);
        }
Exemple #4
0
        public void PlaceSearchTest()
        {
            PlaceSearchRequestDTO placeSearchRequestDTO = new PlaceSearchRequestDTO();

            placeSearchRequestDTO.Query  = "atm机";
            placeSearchRequestDTO.Region = "哈尔滨理工大学";
            placeSearchRequestDTO.Output = "json";
            var result = BaiduProxy.PlaceSearch(placeSearchRequestDTO);
        }
        public void DoGetTest3()
        {
            PlaceSearchRequestDTO place = new PlaceSearchRequestDTO();

            place.Query  = "ATM机";
            place.Bounds = "39.915,116.404,39.975,116.414";
            place.Output = "json";
            var response = BaseProxy.DoGet <PlaceSearchRequestDTO>(Resources.BaiduMapPlaceSearch, place);
        }
        public void DoGetTest()
        {
            PlaceSearchRequestDTO place = new PlaceSearchRequestDTO();

            place.Query  = "ATM机";
            place.Region = "北京";
            place.Output = "json";
            var response = BaseProxy.DoGet <PlaceSearchRequestDTO>(Resources.BaiduMapPlaceSearch, place);
        }
Exemple #7
0
        public void CirclePS()
        {
            PlaceSearchRequestDTO placeSearchRequestDTO = new PlaceSearchRequestDTO();

            placeSearchRequestDTO.Query    = "atm机";
            placeSearchRequestDTO.Location = "39.915,116.404";
            placeSearchRequestDTO.Radius   = "2000";
            placeSearchRequestDTO.Output   = "json";
            var result = BaiduProxy.CirclePlaceSearch(placeSearchRequestDTO);
        }
        public void CaculateAKSNTest()
        {
            Dictionary <String, String> param = new Dictionary <string, string>();

            param.Add("query", "ATM机");
            param.Add("region", "北京");
            param.Add("output", "json");
            param.Add("coord_type", "1");
            param.Add("city_limit", "False");
            String sn = AKSNCaculater.CaculateAKSN(Resources.MyAk, Resources.MySk, Resources.BaiduMapPlaceSearch, (IDictionary <string, string>)param);

            PlaceSearchRequestDTO dTO = new PlaceSearchRequestDTO();

            dTO.Query  = "ATM机";
            dTO.Region = "北京";
            dTO.Output = "json";
            var sn1 = AKSNCaculater.CaculateAKSN <PlaceSearchRequestDTO>(Resources.MyAk, Resources.MySk, Resources.BaiduMapPlaceSearch, dTO);
        }
Exemple #9
0
        private void button1_Click_1(object sender, EventArgs e)
        {
            listBox1.Items.Clear();

            Variables.GetPoints(map);
            var radio = Utils.GetFormRadio(groupBox1);

            RGeocoderRequestDTO rGeocoder = new RGeocoderRequestDTO();

            rGeocoder.Location      = Variables.CenterY + "," + Variables.CenterX;
            rGeocoder.Ret_coordtype = "gcj02ll";
            rGeocoder.Output        = "json";
            var rGeocoderResponseDTO = BaiduProxy.RGeocoder(rGeocoder);


            var searchStr = this.textBox1.Text;
            PlaceSearchRequestDTO place = new PlaceSearchRequestDTO();

            place.Coord_Type    = 3;
            place.Ret_Coordtype = "gcj02ll";
            place.Output        = "json";

            place.Query = searchStr;

            switch (radio)
            {
            case entity.OptionEnum.auto:
                if (searchStr == null || searchStr.Trim() == "")
                {
                    MessageBox.Show("请输入检索词");
                    return;
                }
                place.Region = rGeocoderResponseDTO.Formatted_address;
                var placeSearchResponseDTOs = BaiduProxy.PlaceSearch(place);
                placeSearchResponseDTOs.ForEach(x => { listBox1.Items.Add(x.ToString()); });
                break;

            case entity.OptionEnum.rectangle:
                if (searchStr == null || searchStr.Trim() == "")
                {
                    MessageBox.Show("请输入检索词");
                    return;
                }
                place.Bounds = Variables.LastRectPointY1 + "," + Variables.LastRectPointX1 + "," + Variables.LastRectPointY2 + "," + Variables.LastRectPointX2;
                var list = BaiduProxy.RectanglePlaceSearch(place);
                list.ForEach(x => { listBox1.Items.Add(x.ToString()); });
                break;

            case entity.OptionEnum.circle:
                if (searchStr == null || searchStr.Trim() == "")
                {
                    MessageBox.Show("请输入检索词");
                    return;
                }
                place.Location = Variables.LastPointY + "," + Variables.LastPointX;
                place.Radius   = Variables.Radius.ToString();
                var list1 = BaiduProxy.CirclePlaceSearch(place);
                list1.ForEach(x => { listBox1.Items.Add(x.ToString()); });
                break;

            case entity.OptionEnum.direction:
                if (!searchStr.Contains(",") && !searchStr.Contains(','))
                {
                    MessageBox.Show("输入格式错误.");
                    return;
                }

                var splits = searchStr.Split(new char[] { ',', ',' }, StringSplitOptions.RemoveEmptyEntries);
                if (splits.Length != 2)
                {
                    MessageBox.Show("输入格式错误.");
                    return;
                }
                var dir = splits[0];
                place.Query         = splits[1];
                place.Location      = Variables.LastPointY + "," + Variables.LastPointX;
                place.Ret_Coordtype = "bd09ll";
                var list2 = BaiduProxy.CirclePlaceSearch(place);
                if (dir.Contains("北"))
                {
                    list2.Where(x => x.Location.Lat > Variables.LastPointY).ToList().ForEach(x => { listBox1.Items.Add(x); });
                }
                if (dir.Contains("南"))
                {
                    list2.Where(x => x.Location.Lat < Variables.LastPointY).ToList().ForEach(x => { listBox1.Items.Add(x); });
                }
                if (dir.Contains("西"))
                {
                    list2.Where(x => x.Location.Lng > Variables.LastPointX).ToList().ForEach(x => { listBox1.Items.Add(x); });
                }
                if (dir.Contains("东"))
                {
                    list2.Where(x => x.Location.Lng < Variables.LastPointX).ToList().ForEach(x => { listBox1.Items.Add(x); });
                }

                break;

            case entity.OptionEnum.position:
                if (searchStr == null || searchStr.Trim() == "")
                {
                    MessageBox.Show("请输入检索词");
                    return;
                }
                LGeocoderRequestDTO lGeocoder = new LGeocoderRequestDTO();
                lGeocoder.Address       = searchStr;
                lGeocoder.City          = rGeocoderResponseDTO.AddressComponent.City;
                lGeocoder.Ret_coordtype = "gsj02ll";
                lGeocoder.Output        = "json";
                var lGeocoderResponseDTO = BaiduProxy.LGeocoder(lGeocoder);
                if (lGeocoderResponseDTO == null)
                {
                    MessageBox.Show("请检查输入的检索词是否为地理位置");
                    return;
                }
                listBox1.Items.Add(lGeocoderResponseDTO);
                break;

            case entity.OptionEnum.convert:
                if (searchStr == null || searchStr.Trim() == "")
                {
                    rGeocoder.Location = Variables.LastPointY + "," + Variables.LastPointX;
                }
                else
                {
                    if (!searchStr.Contains(",") && !searchStr.Contains(","))
                    {
                        MessageBox.Show("请确认检索为坐标信息!");
                        return;
                    }
                    rGeocoder.Location = searchStr;
                }

                rGeocoder.Pois       = 1;
                rGeocoderResponseDTO = BaiduProxy.RGeocoder(rGeocoder);

                listBox1.Items.Add(rGeocoderResponseDTO.AddressComponent);
                listBox1.Items.Add(rGeocoderResponseDTO.Business);
                listBox1.Items.Add("城市代码:" + rGeocoderResponseDTO.CityCode);
                listBox1.Items.Add(rGeocoderResponseDTO.Formatted_address);
                listBox1.Items.Add(rGeocoderResponseDTO.Location);
                listBox1.Items.Add(rGeocoderResponseDTO.Sematic_description);
                rGeocoderResponseDTO.Pois.ForEach(x =>
                {
                    listBox1.Items.Add(x.ToString());
                });

                break;

            case entity.OptionEnum.none:
                break;
            }
        }