データを取得できませんでした…。
' ;
}
else
{
// 配列
$points = array() ;
// 地図キャンパス
$html .= '行動地図
' ;
$html .= '' ;
$html .= '
' ;
$html .= '
' ;
// 全てのトラックポイントを取得していく
foreach( $obj[0]->segments as $segments )
{
if( isset( $segments->activities ) )
{
foreach( $segments->activities as $activities )
{
if( isset( $activities->trackPoints ) )
{
foreach( $activities->trackPoints as $trackpoints )
{
$points[] = array( 'lat' => $trackpoints->lat , 'lng' => $trackpoints->lon ) ;
}
}
}
}
}
// 位置座標の整理
$script .= 'var latlngs = ' . json_encode( $points ) . ' ;' ;
$script .= 'var coords = [] ;' ;
$script .= 'for( var i=0 , l=latlngs.length ; l > i ; coords.push( new google.maps.LatLng( latlngs[i].lat, latlngs[i].lng ) ) , i++ ){}' ;
// 地図の出力
$script .= 'var map = new google.maps.Map( document.getElementById("map") , { zoom: 10 , mapTypeId: google.maps.MapTypeId.ROADMAP , center: new google.maps.LatLng( ' . $trackpoints->lat . ' , ' . $trackpoints->lon . ' ) } ) ;' ;
// ポリラインの出力
$script .= 'new google.maps.Polyline( { map: map , path: coords , strokeWeight: 5 , strokeColor: "#f00" , strokeOpacity: 0.75 , } ) ;' ;
}
?>
Moves APIで行動記録をGoogle Mapsに書き出すサンプルデモ
配布元: Syncer