2010-12-11 2 views
0

Drupal 사이트에서 GMaps, 위치 및 사용자 위치 모듈을 사용하고 있습니다. 내 사용자의 "적용 범위"를 표시 할 수있는지도를 갖고 싶습니다. 커버리지 반지름은 사용자를 참조하여 사용자 정의 컨텐츠 유형에 저장됩니다.Drupal, GMap 및 위치가 포함 된 적용 범위 맵

지도상의 사용자 영역 만 표시 할 수있는 방법은 무엇입니까? 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)); 
    } 
}