本文へスキップ

class_LightshipMapView


title: class LightshipMapView toc_max_heading_level: 4


class LightshipMapView

(Niantic.Lightship.Maps.LightshipMapView)

概要

このクラスは、ゲームとLightship Maps SDKがインタラクトするためのプライマリAPIであり、マップの表示可能な単一の領域を表します。 ほとんどのシーンには、単一の LightshipMapView インスタンスがありますが、 Maps SDKでは、一度に任意のシーンでアクティブなマップビューの数をサポートしています。

class LightshipMapView:
MonoBehaviour,
Niantic.Lightship.Maps.ILightshipMapView,
IBuilderJobMonitorManager {
public:
// フィールド

static const int DefaultExecutionOrder = -10;
LatLng MapOrigin => _unitConverter.MapOrigin;
double MapScale => _unitConverter.MapScale;
IReadOnlyDictionary<ulong, IMapTile> ActiveMapTiles => _activeMapTiles;
bool IsMapCenteredAtOrigin => _centerMapAtOrigin;

// プロパティ

LatLng MapCenter;
double MapRadius;

// イベント

event MapTileAdded();
event MapTileRemoved();
event MapRadiusChanged();
event MapCenterChanged();
event MapOriginChanged();

// メソッド

void OffsetMapCenter(Vector3 offset);
void SetMapCenter(in LatLng latLng);
void SetMapCenter(Vector3 center);
void SetMapRadius(double mapRadius);
void SetViewableArea(in LatLng latLng, double mapRadius);
void SetViewableArea(Vector3 center, double mapRadius);
LatLng SceneToLatLng(Vector3 scenePosition);
Vector3 LatLngToScene(in LatLng location);
Vector3 WebMercator12ToScene(in WebMercator12 webMercator12);
double MetersToScene(double meters, double latitude);
double SceneToMeters(double sceneUnits, double latitude);
void SetMapTheme(MapTheme theme);
void RefreshMap();
};

継承メンバー

public:
// プロパティ

LatLng MapOrigin;
LatLng MapCenter;
double MapRadius;
double MapScale;
IReadOnlyDictionary<ulong, IMapTile> ActiveMapTiles;
bool IsMapCenteredAtOrigin;

// イベント

event MapTileAdded();
event MapTileRemoved();
event MapRadiusChanged();
event MapCenterChanged();
event MapOriginChanged();

// メソッド

void OffsetMapCenter(Vector3 offset);
void SetMapCenter(in LatLng latLng);
void SetMapCenter(Vector3 center);
void SetMapRadius(double mapRadius);
void SetViewableArea(in LatLng latLng, double mapRadius);
void SetViewableArea(Vector3 center, double mapRadius);
LatLng SceneToLatLng(Vector3 scenePosition);
Vector3 LatLngToScene(in LatLng location);
Vector3 WebMercator12ToScene(in WebMercator12 location);
double MetersToScene(double meters, double latitude);
double SceneToMeters(double sceneUnits, double latitude);
void SetMapTheme(MapTheme theme);
void RefreshMap();

詳細なドキュメント

このクラスは、ゲームとLightship Maps SDKがインタラクトするためのプライマリAPIであり、マップの表示可能な単一の領域を表します。 ほとんどのシーンには、単一の LightshipMapView インスタンスがありますが、 Maps SDKでは、一度に任意のシーンでアクティブなマップビューの数をサポートしています。

メソッド

OffsetMapCenter

void OffsetMapCenter(Vector3 offset)

このメソッドは、マップビューの位置を補正する場合に呼び出されます。

SetMapCenter

void SetMapCenter(in LatLng latLng)

このメソッドは、マップビューの位置を更新する場合に呼び出されます(デバイスのGPSが変化した場合など)。

SetMapCenter

void SetMapCenter(Vector3 center)

このメソッドは、マップビューの位置を更新する場合に呼び出されます(デバイスのGPSが変化した場合など)。

SetMapRadius

void SetMapRadius(double mapRadius)

このメソッドは、マップの表示可能な半径を更新する場合に呼び出されます(マップがズームインまたはズームアウトされた場合など)。

SetViewableArea

void SetViewableArea(in LatLng latLng, double mapRadius)

このメソッドは、マップビューの位置と、表示可能な半径を更新する場合に呼び出されます(デバイスのGPSが変化した場合や、マップがズームインまたはズームアウトされた場合など)。

SetViewableArea

void SetViewableArea(Vector3 center, double mapRadius)

このメソッドは、マップビューの位置と、表示可能な半径を更新する場合に呼び出されます(デバイスのGPSが変化した場合や、マップがズームインまたはズームアウトされた場合など)。

SceneToLatLng

LatLng SceneToLatLng(Vector3 scenePosition)

Unityのワールド空間の位置をLatLng座標の位置に変換します。

LatLngToScene

Vector3 LatLngToScene(in LatLng location)

LatLng座標の位置をUnityのワールド空間の位置に変換します。

WebMercator12ToScene

Vector3 WebMercator12ToScene(in WebMercator12 webMercator12)

WebMercator12座標の位置をUnityのワールド空間の位置に変換します。

MetersToScene

double MetersToScene(double meters, double latitude)

現実世界のメートル単位の距離をUnityのシーン単位に変換します。 なお、このマップでWebメルカトル投影法が使用されているため、ここでは緯度が必要です。そのため、両極に近づくほど伸びることになります。

SceneToMeters

double SceneToMeters(double sceneUnits, double latitude)

Unityのシーン単位での距離を現実世界のメートルに変換します。 なお、このマップでWebメルカトル投影法が使用されているため、ここでは緯度が必要です。そのため、両極に近づくほど伸びることになります。

SetMapTheme

void SetMapTheme(MapTheme theme)

現在のマップテーマを設定する

RefreshMap

void RefreshMap()

現在地のマップをリフレッシュします。