精华内容
下载资源
问答
  • 2021-06-10 02:15:15
    地理编码(地址->经纬度)

    html,body,#container{

    height:100%;

    width:100%;

    }

    .btn{

    width:10rem;

    margin-left:6.8rem;

    }

    地理编码,根据地址获取经纬度坐标

    地址
    经纬度

    var map = new AMap.Map("container", {

    resizeEnable: true

    });

    var geocoder = new AMap.Geocoder({

    city: "010", //城市设为北京,默认:“全国”

    });

    var marker = new AMap.Marker();

    function geoCode() {

    var address = document.getElementById('address').value;

    geocoder.getLocation(address, function(status, result) {

    if (status === 'complete'&&result.geocodes.length) {

    var lnglat = result.geocodes[0].location

    document.getElementById('lnglat').value = lnglat;

    marker.setPosition(lnglat);

    map.add(marker);

    map.setFitView(marker);

    }else{

    log.error('根据地址查询位置失败');

    }

    });

    }

    document.getElementById("geo").onclick = geoCode;

    document.getElementById('address').onkeydown = function(e) {

    if (e.keyCode === 13) {

    geoCode();

    return false;

    }

    return true;

    };

    更多相关内容
  • 'w',encoding='utf-8',newline='') csv_writer = csv.writer(f) csv_writer.writerow(["city", "lng", "lat"]) for i in address: lng = getlnglat(i)['result']['location']['lng'] #采用构造的函数来获取经度 lat ...

    利用百度的开放平台进行操作

    百度地图开放平台 | 百度地图API SDK | 地图开发

    下拉至底部,点击Web服务API

     

     

     

     python 程序如下

    import json
    from urllib.request import urlopen, quote
    import requests,csv
    address=['南昌','九江','上饶','鹰潭','抚州','景德镇','吉安','萍乡','新余','宜春','赣州']
    def getlnglat(address):
        url = 'http://api.map.baidu.com/geocoding/v3/'
        output = 'json'
        ak = '在百度平台申请的工作台的AK码' 
        add = quote(address) #quote进行编码,防止乱码中文乱码
        uri = url + '?' + 'address=' + add + '&output=' + output + '&ak=' + ak
        req = urlopen(uri)
        res = req.read().decode() #将其他编码的字符串解码成unicode
        temp = json.loads(res) #对json数据进行解析
        return temp
    
    f = open('city.csv','w',encoding='utf-8',newline='')
    csv_writer = csv.writer(f)
    csv_writer.writerow(["city", "lng", "lat"])
    for i in address:
            lng = getlnglat(i)['result']['location']['lng'] #采用构造的函数来获取经度
            lat = getlnglat(i)['result']['location']['lat'] 
            str_temp = [i,lng,lat]
            csv_writer.writerow(str_temp) #写入文档
    f.close()

     运行结果如下

     

     具体参数修改见百度地图API中的服务文档(见图2)

     

    展开全文
  • 需要一个高德认证开发者账号不然请求次数会不够 由于边界获取的点位太多(还有可能从高德地图获取的边界有出入),需要放到百度地图当中手动加工下
  • SpringBoot整合高德地图 地理编码\逆地理编码 官方文档: https://lbs.amap.com/api/webservice/guide/api/georegeo 地理编码 根据名称解析出经纬度等信息 产品介绍 地理编码/逆地理编码 API 是通过 HTTP/HTTPS ...

    SpringBoot整合高德地图 地理编码\逆地理编码

    官方文档:
    https://lbs.amap.com/api/webservice/guide/api/georegeo

    地理编码

    根据名称解析出经纬度等信息

    产品介绍

    地理编码/逆地理编码 API 是通过 HTTP/HTTPS 协议访问远程服务的接口,提供结构化地址与经纬度之间的相互转化的能力。
    结构化地址的定义: 首先,地址肯定是一串字符,内含国家、省份、城市、区县、城镇、乡村、街道、门牌号码、屋邨、大厦等建筑物名称。按照由大区域名称到小区域名称组合在一起的字符。一个有效的地址应该是独一无二的。注意:针对大陆、港、澳地区的地理编码转换时可以将国家信息选择性的忽略,但省、市、城镇等级别的地址构成是不能忽略的。暂时不支持返回台湾省的详细地址信息。

    适用场景

    地理编码:将详细的结构化地址转换为高德经纬度坐标。且支持对地标性名胜景区、建筑物名称解析为高德经纬度坐标。
    结构化地址举例:北京市朝阳区阜通东大街6号转换后经纬度:116.480881,39.989410
    地标性建筑举例:天安门转换后经纬度:116.397499,39.908722
    逆地理编码:将经纬度转换为详细结构化的地址,且返回附近周边的POI、AOI信息。
    例如:116.480881,39.989410 转换地址描述后:北京市朝阳区阜通东大街6号

    使用说明

    • 第一步,申请Web服务API类型Key;
    • 第二步,参考接口参数文档发起HTTP/HTTPS请求,第一步申请的 Key
      需作为必填参数一同发送;
    • 第三步,接收请求返回的数据(JSON或XML格式),参考返回参数文档解析数据。
    • 如无特殊声明,接口的输入参数和输出数据编码全部统一为 UTF-8 编码方式。

    创建应用,申请key
    调用地理编码及逆地理编码,最主要的是把key搞到手。也不用依赖,直接使用httpClient远程调用即可
    在这里插入图片描述

    请求URL

    https://restapi.amap.com/v3/geocode/geo?parameters

    请求方式

    GET


    介绍到这里结束,开始粘代码

    pom.xml
    <!--httpclient-->
    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.4</version>
    </dependency>
    
    <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.78</version>
    </dependency>
    
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.4</version>
    </dependency>
    
    application.properties
    server.port=2080
    
    #The config for HttpClient
    http.maxTotal=300
    http.defaultMaxPerRoute=50
    http.connectTimeout=1000
    http.connectionRequestTimeout=500
    http.socketTimeout=5000
    http.staleConnectionCheckEnabled=true
    
    
    gaode.key = 获取的key
    
    LocationUtils
    package com.zjy.map.utils;
    
    import com.alibaba.fastjson.JSONArray;
    import com.alibaba.fastjson.JSONObject;
    import org.apache.http.client.methods.CloseableHttpResponse;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.client.utils.URIBuilder;
    import org.apache.http.impl.client.CloseableHttpClient;
    import org.apache.http.impl.client.HttpClients;
    import org.apache.http.util.EntityUtils;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.stereotype.Component;
    
    import java.net.URI;
    import java.util.Map;
    
    @Component
    public class LocationUtils {
    
        /**日志对象*/
        private static final Logger logger = LoggerFactory.getLogger(LocationUtils.class);
    
        @Value("${gaode.key}")
        private String KEY;
    
        /**
         * 地理编码的url
         */
        public final String LOCATION_URL = "https://restapi.amap.com/v3/geocode/geo?parameters";
    
        /**
         * 逆地理编码的url
         */
        public final String COUNTER_LOCATION_URL = "https://restapi.amap.com/v3/geocode/regeo?parameters";
    
        /**
         * 发送get请求
         * @return
         */
        public JSONObject getLocation(Map<String, String> params){
    
            JSONObject jsonObject = null;
            CloseableHttpClient httpclient = HttpClients.createDefault();
    
            // 创建URI对象,并且设置请求参数
            try {
                URI uri = getBuilderLocation(LOCATION_URL, params);
                // 创建http GET请求
                HttpGet httpGet = new HttpGet(uri);
                CloseableHttpResponse response = httpclient.execute(httpGet);
    
                // 判断返回状态是否为200
                jsonObject = getLocation(response);
                httpclient.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
    
            return jsonObject;
        }
    
        /**
         * 根据地址获取到经纬度
         * @param response
         * @return
         */
        private static JSONObject getLocation(CloseableHttpResponse response) throws Exception{
            JSONObject geocode = null;
            // 判断返回状态是否为200
            if (response.getStatusLine().getStatusCode() == 200) {
                String content = EntityUtils.toString(response.getEntity(), "UTF-8");
                logger.info("调用高德地图接口返回的结果为:{}",content);
                JSONObject jsonObject = (JSONObject) JSONObject.parse(content);
                JSONArray geocodes = (JSONArray) jsonObject.get("geocodes");
                geocode = (JSONObject) geocodes.get(0);
    
                logger.info("返回的结果为:{}",JSONObject.toJSONString(geocode));
            }
            return geocode;
        }
    
        /**
         * 地理编码封装URI
         * @param url
         * @param params
         * @return
         * @throws Exception
         */
        private URI getBuilderLocation(String url, Map<String, String> params) throws Exception{
            // 详细地址
            String address = params.get("address");
            String city = params.get("city");
    
            URIBuilder uriBuilder = new URIBuilder(url);
            // 公共参数
            uriBuilder.setParameter("key", KEY);
            uriBuilder.setParameter("address", address);
            uriBuilder.setParameter("city", city);
    
            logger.info("请求的参数为:{}", JSONObject.toJSONString(uriBuilder));
            URI uri = uriBuilder.build();
            return uri;
        }
    
        /**
         * 逆地理编码
         * @return
         */
        public JSONObject getCounterLocation(Map<String, String> params){
    
            JSONObject jsonObject = null;
            CloseableHttpClient httpclient = HttpClients.createDefault();
    
            // 创建URI对象,并且设置请求参数
            try {
                URI uri = getBuilderCounterLocation(COUNTER_LOCATION_URL, params);
                // 创建http GET请求
                HttpGet httpGet = new HttpGet(uri);
                CloseableHttpResponse response = httpclient.execute(httpGet);
    
                // 判断返回状态是否为200
                jsonObject = getCounterLocation(response);
                httpclient.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
    
            return jsonObject;
        }
    
        /**
         * 逆地理编码封装URI
         * @param url
         * @param params
         * @return
         * @throws Exception
         */
        private URI getBuilderCounterLocation(String url, Map<String, String> params) throws Exception{
            // 详细地址
            String location = params.get("location");
    
            URIBuilder uriBuilder = new URIBuilder(url);
            // 公共参数
            uriBuilder.setParameter("key", KEY);
            uriBuilder.setParameter("location", location);
    
            logger.info("请求的参数为:{}", JSONObject.toJSONString(uriBuilder));
            URI uri = uriBuilder.build();
            return uri;
        }
    
        /**
         * 根据地址获取到经纬度
         * @param response
         * @return
         */
        private static JSONObject getCounterLocation(CloseableHttpResponse response) throws Exception{
            JSONObject regeocode = null;
            // 判断返回状态是否为200
            if (response.getStatusLine().getStatusCode() == 200) {
                String content = EntityUtils.toString(response.getEntity(), "UTF-8");
                logger.info("调用高德地图接口返回的结果为:{}",content);
                JSONObject jsonObject = (JSONObject) JSONObject.parse(content);
                regeocode =  (JSONObject)jsonObject.get("regeocode");
    
                logger.info("返回的结果为:{}",JSONObject.toJSONString(regeocode));
            }
            return regeocode;
        }
    }
    
    
    LocationController
    package com.zjy.map.controller;
    
    import com.alibaba.fastjson.JSONObject;
    import com.zjy.map.utils.LocationUtils;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    
    import java.util.HashMap;
    import java.util.Map;
    
    /**
     * 高德经纬度
     */
    @RestController
    @RequestMapping("/location")
    public class LocationController {
    
        /**日志对象*/
        private static final Logger logger = LoggerFactory.getLogger(LocationController.class);
    
        @Autowired
        private LocationUtils locationUtils;
    
        /**
         * 地理编码
         * http://localhost:2080/location/get?address=大同市平城区南环路&city=大同
         * @param address
         * @param city
         * @return
         */
        @GetMapping("/get")
        public JSONObject getLocation(@RequestParam String address, @RequestParam String city){
    
            Map<String, String> params = new HashMap<>();
            params.put("address", address);
            params.put("city", city);
            logger.info("获取地理编码,请求的参数为:{}", params);
            JSONObject map = locationUtils.getLocation(params);
            logger.info("获取地理编码,返回的请求结果为:{}", map);
            return map;
        }
    
        /**
         * 逆地理编码
         * http://localhost:2080/location/getCounter?location=113.300038,40.063278
         * @param location
         * @return
         */
        @GetMapping("/getCounter")
        public JSONObject getCounterLocation(@RequestParam String location){
    
            Map<String, String> params = new HashMap<>();
            params.put("location", location);
            logger.info("获取逆地理编码,请求的参数为:{}", params);
            JSONObject map = locationUtils.getCounterLocation(params);
            logger.info("获取逆地理编码,返回的请求结果为:{}", map);
            return map;
        }
    }
    
    

    代码粘完了。开始测试

    测试

    官方接口文档,有详细入参,出参信息

    https://lbs.amap.com/api/webservice/guide/api/georegeo#regeo

    启动服务。访问2个接口

    • 地理编码接口
      在这里插入图片描述

    • 逆地理编码接口
      在这里插入图片描述

    可根据自己项目需求来摘取自己有用的数据!

    测试OK!
    欢迎大神指导,可以留言交流!

    ======================
    本人原创文章,转载注明出入!

    =================

    展开全文
  • 这将解释如何仅通过邮政编码/邮政编码和街道号对地址进行地理编码
  • 最新有需求要获取当前地址的坐标以及当前城市的地理编码。在网上找例子找了一堆都木有说明白该怎么搞!(WTF....)最后还是在高德地图官网设置里面搞清楚了,废话不多说,详见代码!(当然地图的第三方包自己去官网...

    最新有需求要获取当前地址的坐标以及当前城市的地理编码。在网上找例子找了一堆都木有说明白该怎么搞!(WTF....)最后还是在高德地图官网设置里面搞清楚了,废话不多说,详见代码!(当然地图的第三方包自己去官网下载哈~)

    获取坐标前提,你的去官网申请一个key,选择好需要用到的平台,当然 我这里是iOS ,具体就不细说了,有了key,可以进入下一步。

    第一步: 配置一个 h 类型的key文件(后面方便调用),key就是你在官网获取的key值:

    官网地址:http://lbs.amap.com/dev/key/app

    #ifndef OfficialDemoLoc_APIKey_h
    
    #define OfficialDemoLoc_APIKey_h
    
    
    
    /* 使用高德地图API,请注册Key,注册地址:http://lbs.amap.com/console/key */
    
    
    
    const static NSString *APIKey = @"你的key!";
    
    
    
    #endif

     

    然后,需要在你的AppDelegate里面先注册一下。
     

    - (void)configureAPIKey
    
    {
    
        if ([APIKey length] == 0)
    
        {
    
            NSString *reason = [NSString stringWithFormat:@"apiKey为空,请检查key是否正确设置。"];
    
            
    
            UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:reason delegate:nil cancelButtonTitle:@"OK"otherButtonTitles:nil, nil];
    
            
    
            [alert show];
    
        }
    
        
    
        [AMapServices sharedServices].apiKey = (NSString *)APIKey;
    
    }
    
    
    
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    
    {
    
        self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    
        
    
        [self configureAPIKey];//高德地图app注册
    
        LoginViewController *Login =  [[LoginViewController alloc] init];
    
        self.window.rootViewController = Login;
    
        
    
        [self.window makeKeyAndVisible];
    
        
    
        return YES;
    
    }
    

    再然后在你UIViewController.h文件中写好需要调用的类:

    #import <UIKit/UIKit.h>
    
    #import <MAMapKit/MAMapKit.h>
    
    #import <AMapLocationKit/AMapLocationKit.h>
    
    
    
    @interface LocationViewController : UIViewController
    
    
    
    @property (nonatomic, strong) MAMapView *mapView;
    
    
    
    @property (nonatomic, strong) AMapLocationManager *locationManager;
    
    
    
    @end
    

    and 我们就可以开始愉快的写方法了。

    获取当前坐标:

    @interface LocationViewController ()<MAMapViewDelegate, AMapLocationManagerDelegate>
    
    @property (nonatomic, strong) UISegmentedControl *showSegment;
    
    @property (nonatomic, strong) UISegmentedControl *backgroundSegment;
    
    @property (nonatomic, strong) MAPointAnnotation *pointAnnotaiton;
    
    @end
    
    
    
    @implementation LocationViewController 
    
    
    
    #pragma mark - Action Handle
    
    
    
    - (void)configLocationManager
    
    {
    
        self.locationManager = [[AMapLocationManager alloc] init];
    
        
    
        [self.locationManager setDelegate:self];
    
        
    
        //设置不允许系统暂停定位
    
        [self.locationManager setPausesLocationUpdatesAutomatically:NO];
    
        
    
        //设置允许在后台定位
    
        [self.locationManager setAllowsBackgroundLocationUpdates:YES];
    
        
    
        //设置允许连续定位逆地理 这些随便你想用就用 
    
        [self.locationManager setLocatingWithReGeocode:YES];
    
    }
    
    
    
    
    
    - (void)showsSegmentAction:(UISegmentedControl *)sender
    
    {
    
        if (sender.selectedSegmentIndex == 1)
    
        {
    
            //停止定位
    
            [self.locationManager stopUpdatingLocation];
    
            
    
            //移除地图上的annotation
    
            [self.mapView removeAnnotations:self.mapView.annotations];
    
            self.pointAnnotaiton = nil;
    
        }
    
        else
    
        {
    
            //开始进行连续定位
    
            [self.locationManager startUpdatingLocation];
    
        }
    
    }
    
    
    
    
    
    - (void)backgroundSegmentAction:(UISegmentedControl *)sender
    
    {
    
        [self.locationManager stopUpdatingLocation];
    
        [self.mapView removeAnnotations:self.mapView.annotations];
    
        self.pointAnnotaiton = nil;
    
        _showSegment.selectedSegmentIndex = 1;
    
        
    
        if (sender.selectedSegmentIndex == 1)
    
        {
    
            //设置允许系统暂停定位
    
            [self.locationManager setPausesLocationUpdatesAutomatically:YES];
    
            
    
            //设置禁止在后台定位
    
            [self.locationManager setAllowsBackgroundLocationUpdates:NO];
    
        }
    
        else
    
        {
    
            //为了方便演示后台定位功能,这里设置不允许系统暂停定位
    
            [self.locationManager setPausesLocationUpdatesAutomatically:NO];
    
            
    
            //设置允许在后台定位
    
            [self.locationManager setAllowsBackgroundLocationUpdates:YES];
    
        }
    
    }
    

    然后重点来了!!!!(敲黑板!!!)

     

    #pragma mark - AMapLocationManager Delegate
    
    - (void)amapLocationManager:(AMapLocationManager *)manager didFailWithError:(NSError *)error
    
    {
    
        NSLog(@"%s, amapLocationManager = %@, error = %@", __func__, [manager class], error);
    
    }
    

    下面方法输出的就是你的经纬度,和中文地址。

    - (void)amapLocationManager:(AMapLocationManager *)manager didUpdateLocation:(CLLocation *)location reGeocode:(AMapLocationReGeocode *)reGeocode
    
    {
    
        NSLog(@"location:{lat:%f; lon:%f; accuracy:%f; reGeocode:%@}", location.coordinate.latitude, location.coordinate.longitude, location.horizontalAccuracy, reGeocode.formattedAddress);
    
        //获取地理编码:
    
        [self getAddressToWatch:reGeocode];
    
        
    
        //获取到定位信息,更新annotation
    
        if (self.pointAnnotaiton == nil)
    
        {
    
            self.pointAnnotaiton = [[MAPointAnnotation alloc] init];
    
            [self.pointAnnotaiton setCoordinate:location.coordinate];
    
            
    
            [self.mapView addAnnotation:self.pointAnnotaiton];
    
        }
    
        
    
        [self.pointAnnotaiton setCoordinate:location.coordinate];
    
        
    
        [self.mapView setCenterCoordinate:location.coordinate];
    
        [self.mapView setZoomLevel:15.1 animated:NO];
    
    }

    我所需要的信息就在此处!!!

    [self getAddressToWatch:reGeocode];

    传的值就是中文的地理位置:如 深圳市宝安区 balalalal~

    接下来是方法:特别强调!这里的key又是另外申请的!

    由于在线查询地理编码需要后台访问web网页,而后获得返回值,so,就需要你再去申请一个key,地址与上文相同,绑定服务选web就ok。然后拿到key 就阔以。。。。
     

    - (void)getAddressToWatch:(AMapLocationReGeocode *)reGeocode
    
    {
    
        AMapLocationDistrictItem * item ;//= [AMapLocationDistrictItem alloc];
    
       
    
       //self.locationManager.code
    
        NSString *names = [NSString stringWithFormat:@"你的web key"];
    
        NSString * getlo = [NSString stringWithFormat:@"http://restapi.amap.com/v3/geocode/geo?key=%@&address=%@&city=citycode",names,reGeocode.formattedAddress];
    
        NSLog(@"hkahdjsh===%@",getlo);
    
    }
    

    网关地址取到,赶紧发送!

     

    path = [getlo stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    
        NSURL *url = [NSURL URLWithString:path];
    
        
    
        NSLog(@"发送数据加地址:%@",url);
    
        
    
        NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:(NSURLRequestUseProtocolCachePolicy) timeoutInterval:10];
    
        
    
        //[request setHTTPMethod:@"post"];
    
        
    
        NSData * recvdata = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
    
        
    
        if(recvdata != nil)
    
        {
    
            // NSLog(@"back_data=%@",recvdata);
    
        }else{
    
            NSLog(@"error!");
    
        }
    
        
    
        NSString *result = [[NSString alloc] initWithData:recvdata encoding:NSUTF8StringEncoding];
    
        NSLog(@"user login check result:%@",result);

     

    此处重点!!(敲黑板!!)

     

    发送机制不可以用post!!!不可以用post!!!不可以用post!!!

    屏蔽之后发送,哦了 ,发送成功。并解析数据值。

    返回值就是这样婶儿的:

    
    {"sta
    
    {"status":"1","info":"OK","infocode":"10000","count":"1","geocodes":[{"formatted_address":"广东省深圳市宝安区","province":"广东省","citycode":"0755","city":"深圳市","district":"宝安区","township":[],"neighborhood":{"name":[],"type":[]},"building":{"name":[],"type":[]},"adcode":"440306","street":[],"number":[],"location":"113.986793,22.688433","level":"兴趣点"}]}
    
    2018-03-22 19:15:53.827208+0800 officialDemoLoc[3900:4238207] 

    需要的数据就在这个citycode里面,自己解析取值哟。

    重点讲完,下面就是承接上文的继承方法与配置参数


     

    - (void)initMapView
    
    {
    
        if (self.mapView == nil)
    
        {
    
            self.mapView = [[MAMapView alloc] initWithFrame:self.view.bounds];
    
            [self.mapView setDelegate:self];
    
            
    
            [self.view addSubview:self.mapView];
    
            self.mapView.showsUserLocation = YES;
    
            self.mapView.userTrackingMode = MAUserTrackingModeFollow;
    
        }
    
    }
    
    
    
    - (void)initToolBar
    
    {
    
        UIBarButtonItem *flexble = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
    
                                                                                 target:nil
    
                                                                                 action:nil];
    
        
    
        self.showSegment = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"开始定位", @"停止定位", nil]];
    
        [self.showSegment addTarget:self action:@selector(showsSegmentAction:) forControlEvents:UIControlEventValueChanged];
    
        self.showSegment.selectedSegmentIndex = 0;
    
        UIBarButtonItem *showItem = [[UIBarButtonItem alloc] initWithCustomView:self.showSegment];
    
        
    
        self.backgroundSegment = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"开启后台", @"禁止后台", nil]];
    
        [self.backgroundSegment addTarget:self action:@selector(backgroundSegmentAction:) forControlEvents:UIControlEventValueChanged];
    
        self.backgroundSegment.selectedSegmentIndex = 0;
    
        UIBarButtonItem *bgItem = [[UIBarButtonItem alloc] initWithCustomView:self.backgroundSegment];
    
        
    
        self.toolbarItems = [NSArray arrayWithObjects:flexble, showItem, flexble, bgItem, flexble, nil];
    
        
    
        //NSLog(@"9999==%@%@%@%@%@",lexble, showItem, flexble, bgItem, flexble);
    
    }
    
    
    
    #pragma mark - Life Cycle
    
    
    
    - (void)viewDidLoad
    
    {
    
        [super viewDidLoad];
    
        
    
        [self.view setBackgroundColor:[UIColor whiteColor]];
    
        
    
        [self initToolBar];
    
        
    
        [self initMapView];
    
        
    
        [self configLocationManager];
    
    }
    
    
    
    - (void)viewWillAppear:(BOOL)animated
    
    {
    
        [super viewWillAppear:animated];
    
        
    
        self.navigationController.toolbar.translucent   = YES;
    
        self.navigationController.toolbarHidden         = NO;
    
    }
    
    
    
    - (void)viewDidAppear:(BOOL)animated
    
    {
    
        [super viewDidAppear:animated];
    
        
    
        [self.locationManager startUpdatingLocation];
    
    }
    
    
    
    #pragma mark - MAMapView Delegate
    
    
    
    - (MAAnnotationView *)mapView:(MAMapView *)mapView viewForAnnotation:(id<MAAnnotation>)annotation
    
    {
    
        if ([annotation isKindOfClass:[MAPointAnnotation class]])
    
        {
    
            static NSString *pointReuseIndetifier = @"pointReuseIndetifier";
    
            
    
            MAPinAnnotationView *annotationView = (MAPinAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:pointReuseIndetifier];
    
            if (annotationView == nil)
    
            {
    
                annotationView = [[MAPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:pointReuseIndetifier];
    
            }
    
            
    
           // mapView.showsUserLocation = YES;//这儿是你自己定位的坐标所显示的数据,比如地图中间那个蓝豆豆的出场方式啊。。。蓝豆豆显示的图片啊。。等等
    
            //mapView.userTrackingMode = MAUserTrackingModeFollow;
    
            annotationView.canShowCallout   = YES;//设置气泡可以弹出,默认为NO
    
            annotationView.animatesDrop     = NO;//设置标注动画显示,默认为NO
    
            annotationView.draggable        = NO;//设置标注可以拖动,默认为NO
    
            //annotationView.pinColor  = MAPinAnnotationColorPurple ;  //        = [UIImage imageNamed:@"icon_location.png"];
    
            annotationView.image = [UIImage imageNamed:@"icon_location.png"];
    
            return annotationView;
    
        }
    
        
    
        return nil;
    
    }
    
    
    
    @end
    

     

    好 打完收工。

     

     

     

     

     

    展开全文
  • 百度地图定位+反地理编码获取POIList
  • java调用百度定位api服务获取地理位置示例,大家参考使用吧
  • 主要介绍了java实现根据ip地址获取地理位置的代码分享,本文中使用的是QQ在线接口,也可以使用新浪、淘宝等提供的在线接口,需要的朋友可以参考下
  • 一个简单的 Go 地理编码库。 什么是地理编码地理编码是从其他地理数据(例如街道地址或邮政编码)中查找相关地理坐标(通常表示为纬度和经度)的过程。 安装 获取图书馆 go get github.com/matm/gogeo 尝试一下...
  • 下面小编就为大家带来一篇iOS 原生地图地理编码与反地理编码(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • EsriJava:Java地理编码

    2021-07-12 18:31:49
    EsriJava 是 ESRI Java ... 第二个版本将包括形状文件阅读器和可能的简单地理编码功能。 用作 Intellij Idea 14.0 的 IDE 地图由坦佩雷开放数据项目和 GeoCommons 提供。 发送任何问题或评论以在 remware.net 上运行
  • 获取并存储经过地理编码的位置数据。 “工作”将提供地理坐标数据,以补充夏威夷交通事故公开数据所提供的数据,从而增加绘制地图位置的功能。 数据将存储在单独的数据库中,供中端和前端开发人员使用。 发展: ...
  • 许多提供程序的包装器,用于获取地理编码和反向地理编码。 环境变量: 允许debug : DEBUG=runner,* 让调试器停止在TS文件中 将以下内容添加到tsconfig.json : //let debugger stop in TS files: "sourceMap": ...
  • 此函数查询 Yahoo 以对地址字符串进行地理编码。 地址可以是公司名称、城市、邮政编码或以逗号分隔的完整街道地址中的任何内容。 雅虎! 地图网络服务 - 地理编码 API ...
  • 库版本 package version vue 2.6.0 vant 2.12.6 @amap/amap-jsapi-loader ...H5中获得用户位置授权后获取终端经纬度和地点名称,PC/移动端适用。...AMap.Geocoder 地理编码与逆地理编码 AMap.Geolocat
  • 地理编码 (Geohash)

    2021-03-10 09:09:35
    能快速找到邻居的编码方式什么是地理编码地理编码是一种地址编码,它能够将二维的经纬度转换成一维的字符串。在具体讨论地理编码之前,我们先来看一下Geohash的算法地理编码的算法下面以(39.92324, 116.3906)为例...
  • 反向地理编码 反向地理编码以使用Google Location and Places Web API获取位置地址
  • 楼主实战,根据自身需求加在对应位置即可————————————————强调!强调!强调!,里面代码功能只包含...当点击获取坐标功能按钮,实时获取经纬度传输到文本框,然后通过Geocoder工具进行逆向地理编码
  • 楼主实战,根据自身需求加在对应位置即可——...不包含开发者Key,地图标点等其他高德地图API提供接口技术功能,只适用加进自身开发中项目,添加逆向地理编码功能。个别地方加了注释,不懂自行搜索或遇到问题联系楼主。
  • 地理编码

    千次阅读 2019-01-23 22:43:47
    2.地理编码与逆地理编码的比较。 3.地理编码的过程 ① 构建或获取参考数据 ② 确定地址定位器样式 ③ 构建地址定位器 ④ 定位地址 ⑤ 发布或维护地址定位器 二.使用arcgis实现地理编码 准备: 软件...
  • vue使用高德地图获取地理坐标信息
  • 1、location.html 在浏览器中打开页面,即可获取您当前的ip地址,和所在城市,以及城市地理位置编码。(以国家统计局为准) 2、Location.java 运行代码,即可 获取 location.html 中的信息。 放在web项目中,可...
  • 调用百度API实现正向和逆向的地理编码,文中主要是通过城市名获取经纬度(正向编码)和通过经纬度获取城市所属省份名
  • implements GeocodeSearch....通过地址获取经纬度//地理编码(地址转坐标)private void addressChangeLat(){String arrived = end_et.getText().toString();geocoderSearch = new GeocodeSearch(this);geocoderSe...
  • Demo说明: 根据输入的经伟度坐标,查询获取对应所在地址位置;可通过该功能,将结构化地址(省/市/区/街道/门牌号)解析为对应的位置坐标,逆地理编码服务...与地理编码和路由服务相结合,反向地理编码是基于移动.
  • 地理编码获取输入文本(例如地址或地点名称)并返回纬度/经度位置的过程。 简而言之,地理编码会将物理地址转换为纬度和经度。 There are many geocoding API options available in python. Some of the popular ...
  • 本章主要介绍如何将地址描述信息和地理坐标做相互转化,主要包括以内容:正向地理编码逆向地理编码地理编码服务地理编码包含正向地理编码和逆向地理编码两种:正向地理编码: 将地址描述信息转换成地理坐标(经纬度)...
  • 地理编码逆编码技术

    2020-06-16 15:07:59
    1 插件商店 插件商店为LSV(LocaSpaceViewer)的扩展应用中心。插件商店会定期更新各种实用小工具,方便广大朋友使用。插件功能可以独立获取授权,购买授权后,可以在LSV软件内直接使用。...由于地理编码与逆地理编码
  • 于是乎找到了高德的逆地理编码接口,看了看正好符合我的需求。然而使用起来并不顺利! 由于我使用的Retrofit,正常情况下都是直接将json自动解析成实体类,但是由于接口返回的数据格式不规范,导致我遇见的一些问题...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 27,241
精华内容 10,896
关键字:

如何获取地理编码