2017-10-15 51 views
0

我正在使用Carto-Mobile,並試圖使用CLLocation來旋轉de位置標記,但我無法使其工作,我設置了一個位圖圖像到位置標記這是一個NTPoint對象,但NTPoint沒有任何方法根據角度旋轉,而不是NTMarker,我嘗試使用NTMarker作爲位置標記,但在低縮放級別(縮放6)從不顯示真實位置如此NTPoint是一個更好的選擇。如何使用carto-mobile(CARTO-SDK)在ios中旋轉位置標記

所以我希望有人能告訴我如何旋轉使用使用CARTO-SDK

問候

+0

通常是的,點不能旋轉,所以你應該使用標記。請爲標記樣式(MarkerStyleBuilder)添加您的代碼示例,以便我們看到您必須獲取哪些參數值才能獲得真實的標記位置。特別是setAnchorPoint,它應該是0,0值。 – JaakL

回答

0

下面的代碼CLLocation真正hedding應該工作,並保持圖像的精確位置去的位置標記:

NTMarkerStyleBuilder *builder = [[NTMarkerStyleBuilder alloc]init]; 

    // anchor 0,0 means that image is rotated from the center 
    // you may have different anchor point depending on graphics 
    [builder setAnchorPointX:0 anchorPointY:0]; 

    self.positionMarker = [[NTMarker alloc] initWithPos:position style:[builder buildStyle]]; 

    ... 
    // rotate marker, depending on marker graphics 
    // "180-course" is ok if it is "arrow down" 
    // additional adjustment is for mapView rotation, image keeps 
    // here correct course even if map is rotated 

    double course = location.course; 
    [self.positionMarker setRotation: 180 - course - self.contentView.mapView.getRotation]; 
+0

謝謝@JaakL,就像總是你的答案被斷言,但爲什麼我需要將anchorPoint設置爲0,這是默認值。 –

+0

默認值爲0,-1表示中心/底部。 0,0是中心/中心,適用於需要從中心旋轉圖像的情況。 – JaakL