001 package com.google.gwt.maps.client.overlays; 002 003 import com.google.gwt.core.client.JavaScriptObject; 004 import com.google.gwt.maps.client.base.LatLng; 005 import com.google.gwt.maps.client.base.Point; 006 007 /** 008 * This object is made available to the OverlayView from within the draw method. It is not guaranteed to be initialized until draw is called. 009 * <br><br> 010 * See <a href="https://developers.google.com/maps/documentation/javascript/reference#MapCanvasProjection">MapCanvasProjection API Doc</a> 011 */ 012 public class MapCanvasProjection extends JavaScriptObject { 013 014 /** 015 * returns from another object only 016 */ 017 protected MapCanvasProjection() {} 018 019 /** 020 * returns from another object only 021 */ 022 public final static MapCanvasProjection newInstance() { 023 return JavaScriptObject.createObject().cast(); 024 } 025 026 /** 027 * Computes the geographical coordinates from pixel coordinates in the map's container. 028 * @param pixel 029 */ 030 public final native LatLng fromContainerPixelToLatLng(Point pixel) /*-{ 031 return this.fromContainerPixelToLatLng(pixel); 032 }-*/; 033 034 /** 035 * Computes the geographical coordinates from pixel coordinates in the div that holds the draggable map. 036 * @param pixel 037 */ 038 public final native LatLng fromDivPixelToLatLng(Point pixel) /*-{ 039 this.fromDivPixelToLatLng(pixel); 040 }-*/; 041 042 /** 043 * Computes the pixel coordinates of the given geographical location in the DOM element the map's outer container. 044 * @param latlng 045 */ 046 public final native Point fromLatLngToContainerPixel(LatLng latlng) /*-{ 047 this.fromLatLngToContainerPixel(latlng); 048 }-*/; 049 050 /** 051 * Computes the pixel coordinates of the given geographical location in the DOM element that holds the draggable map. 052 * @param latlng 053 */ 054 public final native void fromLatLngToDivPixel(LatLng latlng) /*-{ 055 this.fromLatLngToDivPixel(latlng); 056 }-*/; 057 058 /** 059 * The width of the world in pixels in the current zoom level. For projections with a heading angle of either 90 or 270 degress, this corresponds to the pixel span in the Y-axis. 060 */ 061 public final native int getWorldWidth() /*-{ 062 return this.getWorldWidth(); 063 }-*/; 064 065 }