STARScontroller

概要

STARScontroller が各Web アプリケーションを同期する為には、STARScontroller側から各 Web アプリケーション側の予め決められたグローバルなメソッドをコールする事で同期処理を実現します。

時間(日時)の同期

日時情報を持つWebアプリケーションの場合、グローバルなメソッドとして下記に示すSTARScontroller_getDate関数とSTARScontroller_setDate関数を実装して下さい。Webアプリケーションが日時情報を持たない場合は実装不要です。

STARScontroller_getDate関数

STARScontrollerがWebアプリケーションの現在日時情報を取得するため定期的にコールします。戻り値としてWebアプリケーションの現在日時情報を返して下さい。

構文 STARScontroller_getDate()
引数 無し
戻り値 Webアプリケーションの現在日時情報を保持するJSONオブジェクト
名前 備考
currentDate Date 現在日時
startDate Date 開始日時。例えば画面上に横方向の時間軸バー等を持つWebアプリケーションなら左端の日時。
endDate Date 終了日時。例えば画面上に横方向の時間軸バー等を持つWebアプリケーションなら右端の日時。
      {
        currentDate : xxxxx,
        startDate : xxxxx,
        endDate : xxxxx
      }
実装例
      function STARScontroller_getDate()
      {
        var date={};
        date.currentDate=現在日時;
        date.startDate=時間軸バー左端日時;
        date.endDate=時間軸バー右端日時;
        return date;
      }

STARScontroller_setDate関数

STARScontrollerがWebアプリケーションの現在日時を同期させる際にコールします。当該メソッドがコールされたらWebアプリケーション側で日時変更に伴う必要な処理を行って下さい。

構文 STARScontroller_setDate(pDate)
引数 Webアプリケーションの現在日時情報を変更する為のJSONオブジェクト
名前 備考
currentDate Date 現在日時
startDate Date 開始日時。例えば画面上に横方向の時間軸バー等を持つWebアプリケーションなら左端の日時。
endDate Date 終了日時。例えば画面上に横方向の時間軸バー等を持つWebアプリケーションなら右端の日時。
      {
        currentDate : xxxxx,
        startDate : xxxxx,
        endDate : xxxxx
      }
戻り値 無し
実装例
    function STARScontroller_setDate(pDate)
    {
      // pDateよりアプリの日時情報を変更する処理を実装して下さい。
    }

GIS(位置情報)の同期

位置情報を持つWebアプリケーションの場合、グローバルなメソッドとして下記に示すSTARScontroller_getPosition関数とSTARScontroller_setPosition関数を実装して下さい。Webアプリケーションが位置情報を持たない場合は実装不要です。

STARScontroller_getPosition関数

STARScontrollerがWebアプリケーションの現在位置情報を取得するため定期的にコールします。戻り値としてWebアプリケーションの現在位置情報を返して下さい。

構文 STARScontroller_getPosition()
引数 無し
戻り値 Webアプリケーションの現在位置情報を保持するJSONオブジェクト
名前 備考
center lat 数値 画面中央の緯度
lng 数値 画面中央の緯度
north 数値 画面上端の緯度
east 数値 画面右端の経度
south 数値 画面下端の緯度
west 数値 画面左端の経度
zoom 数値 地図の縮尺。Google Map APIのズームレベル(1~21)に換算した値。
direction 数値 地図の向き。北(上)を0度とする0~359の値。
地図を回転する事が出来ないGISツールを使用している場合は0を返して下さい。
    {
      center : { lat : 999.999999, lng : 999.999999 },
      north : 999.999999,
      east : 999.999999,
      south : 999.999999,
      west : 999.999999,
      zoom : 99,
      direction : 99
    }
実装例
      function STARScontroller_getPosition()
      {
        var position={};
        position.center={};
        position.center.lat=画面中央緯度;
        position.center.lng=画面中央経度;
        position.north=画面上端緯度;
        position.east=画面右端経度;
        position.south=画面下端緯度;
        position.west=画面左端経度;
        position.zoom=ズームレベル;
        position.direction=地図の向き;
        return position;
      }

STARScontroller_setPosition関数

STARScontrollerがWebアプリケーションの現在位置を同期させる際にコールします。当該メソッドがコールされたらWebアプリケーション側で位置変更に伴う必要な処理を行って下さい。

構文 STARScontroller_setPosition(pPosition)
引数 Webアプリケーションの現在位置情報を保持するJSONオブジェクト
名前 備考
center lat 数値 画面中央の緯度
lng 数値 画面中央の緯度
north 数値 画面上端の緯度
east 数値 画面右端の経度
south 数値 画面下端の緯度
west 数値 画面左端の経度
zoom 数値 地図の縮尺。Google Map APIのズームレベル(1~21)に換算した値。
direction 数値 地図の向き。北(上)を0度とする0~359の値。
地図を回転する事が出来ないGISツールを使用している場合は無視して下さい。
    {
      center : { lat : 999.999999, lng : 999.999999 },
      north : 999.999999,
      east : 999.999999,
      south : 999.999999,
      west : 999.999999,
      zoom : 99,
      direction : 99
    }
戻り値 無し
実装例
      function STARScontroller_setPosition(pPosition)
      {
        // pPositionよりアプリの位置情報を変更する処理を実装して下さい。
      }

状態の取得

Webアプリケーションの状態を取得する為、グローバルなメソッドとして下記に示すSTARScontroller_isReady関数を実装して下さい。

STARScontroller_isReady関数

Webアプリケーションが日時情報や位置情報の取得・設定が可能な状態かを判別する為、STARScontrollerが定期的にコールします。戻り値としてWebアプリケーションの現在の状態を返して下さい

構文 STARScontroller_isReady()
引数 無し
戻り値 Webアプリケーションの現在の状態を表す論理値(true/false)。
例えば、日時情報や位置情報の変更処理中であったり、
各種データをサーバからダウンロード中で日時情報や位置情報の変更が今は出来ない状態の場合にはfalseを返して下さい。
日時情報や位置情報の変更が可能な状態であればtrueを返して下さい。
実装例
      function STARScontroller_isReady()
      {
        return 論理値;
      }

Webパーツ「Timeline」のご紹介

Webページに時間軸バーを簡単に組み込む事が出来るjqueryプラグイン「Timeline」を使用するとSTARScontrollerの日時を同期するための実装(STARScontroller_getDate関数およびSTARScontroller_setDate関数)が比較的簡単に行えます

jqueryプラグイン「Timeline」の詳しい情報は下記サイトをご確認下さい。 http://k2go.jp/public/Timeline/

STARScontroller_getDate関数の実装例
      function STARScontroller_getDate()
      {
        var options=$(セレクタ).k2goTimeline("getOptions");
        var date={};
        date.currentDate=options.currentTime;
        date.startDate=options.startTime;
        date.endDate=options.endTime;
        return date;
      }
STARScontroller_setDate関数の実装例
      function STARScontroller_setDate(pDate)
      {
        $(セレクタ).k2goTimeline("create",
        {
          minTime : 最小日時,
          maxTime : 最大日時,
          startTime : pDate.startDate,
          endTime : pDate.endDate,
          currentTime : pDate.currentDate
        });
      }