VSO
VSO

Reputation: 12666

Get Google Map Marker Position on Screen

Is there a way to get the bounding rectangle (screen position) of Google Map API markers? I am using an Angular 2 wrapper, so I don't construct the markers like you would normally with the API (mostly irrelevant here though).

Or are they on an internal canvas with no way to pull position like you would with an html element?

I have tried something like this, but getBoundingRectangle() comes back with zero values:

      var googleMapContent = document.getElementsByClassName("sebm-google-map-content")[0];

      var markerList = googleMapContent.getElementsByTagName("sebm-google-map-marker");

      if( markerList.length > 0 ) {
          for (var i = 0; i < markerList.length; i++ ){
             var marker = markerList[i];
             var markerLabel = marker.getAttribute("ng-reflect-label");
             var boundingRectangle = marker.getBoundingClientRect();
          }
      }

P.S. I have access to map center lat/lng + zoom and marker lat/lng, so I can "math" this, but that's pretty dirty.

Upvotes: 0

Views: 1699

Answers (1)

duncan
duncan

Reputation: 31930

The Marker class hasn't got either a getBoundingRectangle or getBoundingClientRect method.

It has got getPosition() and getShape() though, which in combination might give you the information you need.

Upvotes: 1

Related Questions