• 百度地图坐标系和火星坐标系之间的互相转换


    // 百度转火星

    -(CLLocationCoordinate2D)hhTrans_GCGPS:(CLLocationCoordinate2D)baiduGps

    {

        

        CLLocationCoordinate2D googleGps;

        

        double bd_x=baiduGps.longitude - 0.0065;

        

        double bd_y=baiduGps.latitude - 0.006;

        

        double z = sqrt(bd_x * bd_x + bd_y * bd_y) - 0.00002 * sin(bd_y * M_PI);

        

        double theta = atan2(bd_y, bd_x) - 0.000003 * cos(bd_x * M_PI);

        

        googleGps.longitude = z * cos(theta);

        

        googleGps.latitude = z * sin(theta);

        

        return googleGps;

        

    }

    其他坐标转百度坐标系

     CLLocationCoordinate2D test = CLLocationCoordinate2DMake(location.coordinate.latitude, location.coordinate.longitude);

            //转换 google地图、soso地图、aliyun地图、mapabc地图和amap地图所用坐标至百度坐标

            NSDictionary* testdic = BMKConvertBaiduCoorFrom(test,BMK_COORDTYPE_COMMON);

            //转换GPS坐标至百度坐标

            testdic = BMKConvertBaiduCoorFrom(test,BMK_COORDTYPE_GPS);

            NSLog(@"x=%f,y=%f",location.coordinate.latitude,location.coordinate.longitude);

            NSLog(@"x=%@,y=%@",[testdic objectForKey:@"x"],[testdic objectForKey:@"y"]);

            NSString *lat = [MCEncryption base64FromBase64String:[testdic objectForKey:@"x"]] ;

            NSString *lon = [MCEncryption base64FromBase64String:[testdic objectForKey:@"y"]] ;

  • 相关阅读:
    PHP unset销毁变量并释放内存
    编码问题
    编程中关于对时区的理解(语言PHP)
    简单树结构的实现
    设计模式
    Selenium WebDriver +Python讲解
    PS入门基础-魔幻调色
    .NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework 有什么不同?
    电商设计
    NPOI相关学习文档
  • 原文地址:https://www.cnblogs.com/mglttkx/p/5522856.html
Copyright © 2020-2023  润新知