SYNCERのロゴ
アイキャッチ画像

IconSequence

IconSequenceは、ポリラインに乗せるアイコンを表すオブジェクトです。

プロパティ

プロパティ名説明
fixedRotation

boolean

trueの場合は、アイコンをポリラインの角度に応じて立たせる。falseの場合は立たせない。

icon

Symbol

SVGを表すSymbolオブジェクト。

offset

string

ポリラインの開始のパスからズラす距離。距離をpx、または%の単位を付けた文字列で指定する。パーセンテージは、パスの長さに対する割合となる。デフォルトは0。

repeat

string

繰り返し表示する場合の間隔の距離。繰り返し表示をしない場合は0を指定する。距離をpx、または%の単位を付けた文字列で指定する。パーセンテージは、パスの長さに対する割合となる。デフォルトは0。

デモ

ポリラインにアイコンを乗せました。値を調整して、どのように反映されるのか確認してみて下さい。

var iconSequence = {
	fixedRotation: false ,
	icon: {
		fillColor: "gold" ,
		fillOpacity: 1 ,
		path: "M0 8h22L4 22L11 0L18 22z" ,
		scale: 2 ,
		anchor: new google.maps.Point( 11, 22 ) ,
	} ,
	offset: "0" ,
	repeat: "10%" ,
} ;

var polyline = new google.maps.Polyline( {
	map: map ,
	path: [
		new google.maps.LatLng( 35.794507 , 139.790788 ) ,
		new google.maps.LatLng( 35.794007 , 139.791788 ) ,
	] ,
	icons: [ iconSequence, ] ,
} ) ;

サンプルコード

<!DOCTYPE html>
<html>
<head>
	<style>
#map-canvas {
	width: 600px ;
	height: 600px ;
}
	</style>
</head>
<body>
	<div id="map-canvas"></div>

	<script src="//maps.googleapis.com/maps/api/js?key={APIキー}"></script>
	<script>
var mapDiv = document.getElementById( "map-canvas" ) ;

// Map
var map = new google.maps.Map( mapDiv, {
	center: new google.maps.LatLng( 35, 139 ) ,
	zoom: 15 ,
} ) ;

// Polyline
var iconSequence = {
	fixedRotation: false ,
	icon: {
		fillColor: "gold" ,
		fillOpacity: 1 ,
		path: "M0 8h22L4 22L11 0L18 22z" ,
		scale: 2 ,
		anchor: new google.maps.Point( 11, 22 ) ,
	} ,
	offset: "0" ,
	repeat: "10%" ,
} ;

var polyline = new google.maps.Polyline( {
	map: map ,
	path: [
		new google.maps.LatLng( 35.794507 , 139.790788 ) ,
		new google.maps.LatLng( 35.794007 , 139.791788 ) ,
	] ,
	icons: [ iconSequence, ] ,
} ) ;

// fit bounds
var latLngBounds = new google.maps.LatLngBounds() ;

polyline.getPath().forEach( function ( LatLng ) {
	latLngBounds.extend( LatLng ) ;
} ) ;

map.fitBounds( latLngBounds ) ;
	</script>
</body>
</html>

デモページを開く

  • Twitterでシェア
  • Facebookでシェア
  • Google+でシェア
  • はてなブックマークでシェア
  • pocketに保存
  • LINEでシェア
更新履歴
2016年2月1日 (月)
コンテンツを公開しました。