2010-12-11 11 views
0

DrupalサイトでGMaps、Location、User locationsモジュールを使用しています。私は、ユーザーの「カバレッジ」を表示できるマップを用意したいと考えています。カバレッジ半径は、ユーザを参照してカスタムコンテンツタイプに格納されます。Drupal、GMap、LocationのCoverageマップ

カバレッジサークルのみを地図上に表示するにはどうすればよいですか?私はGMapマクロを使って遊んでいるときにこのようなディスプレイのタイプを見ました。だから、そういう形でGMapsを使うことは可能だろうと思います。

おそらく、これはGMapモジュールですぐにサポートされていると思います。とにかく、誰かが私を正しい方向に向けることができれば、本当にうれしいでしょう...

答えて

0

私はハンガリーのコミュニティの助けを借りてこのことをやってきました。 (私は元のスレッドをリンクさせていただきますが、それは削除されたようだ)

基本的には「トリック」はフックで少しカスタムモジュールを作ることだった。

function MODULENAME_preprocess_gmap_view_gmap(&$vars) { 
    if ($vars['view']->name == "my_gmap_view") { 
    $map_object = $vars['map_object']; 
    $map_object['id'] = 'my_view_id'; 
    foreach ($vars['view']->result as $key => $row) { 
     $shapes[$key]['type'] = 'circle'; 

     // we have a profile field for the radius, but it could be anything... 
     $shapes[$key]['radius'] = $row->profile_values_profile_radius_value; 

     // center the circles on the coord 
     $shapes[$key]['center'][0] = $row->location_latitude; 
     $shapes[$key]['center'][1]= $row->location_longitude; 
    } 

    // we don't need any markers, just the circles 
    $map_object['markers'] = NULL; 
    $map_object['shapes'] = $shapes; 
    $vars['map'] = theme('gmap', array('#settings' => $map_object)); 
    } 
} 
関連する問題