1. 程式人生 > >在ios中使用手機定位獲得的經緯度座標 通過 arcgis的api 顯示在wgs84 座標系的地圖上。

在ios中使用手機定位獲得的經緯度座標 通過 arcgis的api 顯示在wgs84 座標系的地圖上。

1. 底圖做的 是 wgs84 座標系。

2. ios裝置通過gps定位獲得的座標是 經緯度。

3.把經緯度座標 轉換成 墨卡託座標。然後通過 

[self.mapViewcenterAtPoint:mappoint animated:YES]; 

來顯示點 

相關程式碼:

    CGPoint coord;
    coord.x=newLocation.coordinate.longitude;
    coord.y=newLocation.coordinate.latitude;
    NSLog(@"x=%f",coord.x);
    NSLog(@"y=%f",coord.y);
    CGPoint mecPoint=[self lonLat2Mercator:coord];
    AGSSpatialReference *wgs84SpatialReference =  [[AGSSpatialReference alloc] initWithWKID:4326];
    AGSPoint *mappoint =[[AGSPoint alloc] initWithX:mecPoint.x y:mecPoint.y spatialReference:wgs84SpatialReference];
    NSLog(@"輸出點的x座標=%f,y座標=%f",mappoint.x,mappoint.y);
    
    [self.graphicsLayer removeAllGraphics];
    AGSPictureMarkerSymbol *pt;
    pt = [AGSPictureMarkerSymbol pictureMarkerSymbolWithImageNamed:@"ArcGIS.bundle/LocationDisplay.png"];
    AGSGraphic *LocationDisplay = [[AGSGraphic alloc] initWithGeometry:mappoint symbol:pt attributes:nil infoTemplateDelegate:nil];
    
    [self.graphicsLayer addGraphic:LocationDisplay];


//經緯度轉墨卡託
-(CGPoint )lonLat2Mercator:(CGPoint ) lonLat
{
    CGPoint  mercator;
    double x = lonLat.x *20037508.34/180;
    double y = log(tan((90+lonLat.y)*M_PI/360))/(M_PI/180);
    y = y *20037508.34/180;
    mercator.x = x;
    mercator.y = y;
    return mercator ;
}


相關推薦

ios使用手機定位獲得經緯度座標 通過 arcgis的api 顯示wgs84 座標系地圖

1. 底圖做的 是 wgs84 座標系。 2. ios裝置通過gps定位獲得的座標是 經緯度。 3.把經緯度座標 轉換成 墨卡託座標。然後通過  [self.mapViewcenterAtPoint:

IOS屬性的關鍵修飾詞:strong weak assign copy retain等

@property與@synthesize是成對出現的,可以自動生成某個類成員變數的存取方法。在Xcode4.5以及以後的版本,@synthesize可以省略。1.atomic與nonatomicatomic:預設是有該屬性的,這個屬性是為了保證程式在多執行緒情況,編譯器會自動生成一些互斥加鎖程式碼,避免該變

在Office應用開啟WPF窗體並且讓子窗體顯示在Office應用

在.NET主程式中,我們可以通過建立 ExcelApplication 物件來開啟一個Excel應用程式,如果我們想在Excle裡面再開啟WPF視窗,問題就不那麼簡單了。 我們可以簡單的例項化一個WPF窗體物件然後在Office應用程式的窗體上開啟這個新的WPF窗體,此時Office應用的窗體就是這個WPF

HTML5網頁定位,並將位置繪在百度地圖

執行效果: 實現程式碼: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>HTML5定位</tit

jquery,input獲得焦點時光標自動定位到文字後面

gpo ima jquery 自動 src bsp com 焦點 定位 效果: jquery中,input獲得焦點時光標自動定位到文字後面

(簡單詳細)React Native獲取手機當前經緯度,(通過高德地圖介面)獲取當前地理位置

要獲取手機的當前地理位置,首先要獲得經緯度,然後通過逆地理編碼獲得位置資訊 地理編碼/逆地理編碼 API 是通過 HTTP/HTTPS 協議訪問遠端服務的介面,提供結構化地址與經緯度之間的相互轉化的能力。 1.AndroidManifest.xml加入許可權 <uses-per

關於實現手機定位通過伺服器,再發送給查詢者,或指定人

目的: 這週六我要出去一趟,確保小夥伴的安全,但我想保證自己的安全,能讓別人時刻知道我的具體位置 方案一:通過ip定位 使用 : 1. python2.7 2. pip install geoip2 3. 再去http://dev.maxmind.com/geoip/geoi

通過經緯度座標計算兩點間的距離以及角度關係(C++)

測試了一共八組點,大概關係是這樣的 計算的是那八個點從正北方向按順時針轉過的角度的大小 #include "stdafx.h" #include <math.h> #include <iostream> #include <stdio.h> #

ios下iframefixed定位失效 完美替代方案 並可在iframe裡做拉載入這種操作

最近忙的 好久沒寫部落格了   正好昨天處理了一個問題  記錄下來 分享給大家   1 專案需求     要求 vue單頁專案引入外部網頁,頭部由自己寫,然後做互動 完成功能    翻譯一下就是:&nbs

第一行程式碼Android定位Demo顯示經緯度失敗原因

照抄第一行程式碼手機定位,在TextView上顯示不出來經緯度資訊,經查詢資料修改版本號為手機對應的版本號,我將 minSdkVersion改為 23,targetSdkVersion 改為 都改21

百度地圖api,定位,新增城市控制元件,單擊獲得經緯度並mark

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="initial-scale=1.0,

手機定位:獲取我的位置經緯度

最近做一個關於 手機定位的功能,自己記錄一下,一來加深記憶,二來希望能給大家一點思路,程式碼親測有效。 直接貼程式碼: 清單檔案要加的許可權,程式碼中還有動態許可權申請 <!--定位許可權--> <uses-permission android:name

判斷手機是否安裝高德/百度地圖-經緯度座標轉換

學習資料 http://blog.csdn.net/sinat_19917631/article/details/54343791 最近需要做一個關於導航的功能,得用手機存在的地圖來開啟,然後從網上找了一篇部落格裡面只寫了怎麼判斷手機是否安裝百度地圖的,從網

iOS三種定位方式

原理 每個手機基站都有一個識別符號,iPhone或3G iPad可以蒐集周圍所有收到訊號的基站和它們的識別符號,通過聯網傳送到蘋果雲端伺服器,再由伺服器根據這些基站的的位置資訊查詢並計算出當前位置,然後返回給手機。因為基站訊號輻射範圍大,所以誤差也大,在500米 ~ 幾公里. 特點 定位速度最

GPS資訊提取經緯度座標資訊

1 、NMEA0183通訊協議 NMEA0183是GPS資料的通訊協議,GPS的通訊協議有很多種,但目前絕大多數GPS模組生產廠商都採用NMEA0183協議作為其遵循的標準。 (1)NMEA0183

iOSTableview右邊有字母檢索 點選可以直接定位顯示的問題

在做專案的過程中,我遇到這樣一個問題,就是本身的tableview 呼叫 - (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tabl

百度地圖BMap JS根據兩點經緯度座標生成覆蓋物並調整方向

首先從資料庫中取得資料左邊,後臺程式碼就不放了,只放ajax $.ajax({  url: basePath+"XXXX", type: "post",  success: function(data) { try{ locs=eval(data); var len1=lo

ios通過除錯來使用私有api

       iOS不允許使用ios私有api,使用私有api可以獲得意想不到的效果 ,同時使用私有api是一個程式設計師的技術體現之一。至於怎麼通過apple的稽核,其實是有些辦法的,但是不屬於今天討論的範圍。私有api可以通過dump標頭檔案獲得,也可以去github

iOS之獲取經緯度通過反向地理編碼獲取詳細地址

參考原文連結:http://blog.csdn.net/xsh841272293/article/details/52808461 【 } //處理位置座標更新 - (void)didUpdateBMKUserLocation:(BMKUserLocation *)use

iOS如何通過點選UITableViewCell的Button來獲取當前Cell的indexPath

- (void) btnOnClickTouched:(UIButton *)aButton { myTableViewCell* myCell = (myTableViewCell *)[aButton superView]; //表示Button新增在了Cell中。 //如果將Button新增在myCe