Package globus.glmap
Class GLMapDrawable
java.lang.Object
globus.glmap.GLNativeObject
globus.glmap.GLMapDrawObject
globus.glmap.GLMapDrawable
@ParametersAreNonnullByDefault public class GLMapDrawable extends GLMapDrawObject
GLMapDrawable is a bridge class that displays single object on map. This can be image,
text or vector object.-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceGLMapDrawable.TransformMode -
Constructor Summary
Constructors Constructor Description GLMapDrawable()Creates new empty image that will be injected to mapGLMapDrawable(int drawOrder)Creates new empty image with given draw orderGLMapDrawable(android.graphics.Bitmap bitmap, int drawOrder)Creates image with given draw order and sets bitmap to it -
Method Summary
Modifier and Type Method Description floatgetAngle()Angle of imageintgetHeight()Loaded image height.MapPointgetOffset()Offset of imageMapPointgetPosition()Position of imagedoublegetScale()Scale of vector objectintgetWidth()Loaded image width.booleanhitTest(GLMapView mapView, float screenX, float screenY, int paddingLeft, int paddingRight, int paddingTop, int paddingBottom)Tests if point is inside of imagebooleanisRotatesWithMap()Whether image rotates with the mapvoidsetAngle(float angle)Sets angle of image.voidsetBitmap(android.graphics.Bitmap bitmap)Sets new image to drawvoidsetBitmap(android.graphics.Bitmap bitmap, java.lang.Runnable onReadyToDraw)Sets new image to drawvoidsetOffset(int offsetX, int offsetY)Image offset from position.voidsetPosition(MapPoint position)Sets position of image on map.voidsetRotatesWithMap(boolean rotate)Sets whether image rotates with the map.voidsetScale(double scale)Scale of vector objectvoidsetText(java.lang.String text, GLMapVectorStyle style)Sets new text to drawvoidsetText(java.lang.String text, GLMapVectorStyle style, java.lang.Runnable onReadyToDraw)Sets new text to drawvoidsetTransformMode(int transformMode)If drawable contains vector object and you will use position and scale to transform vector object, then set this to TransformMode.Custom.voidsetVectorObject(GLMapVectorObject object, GLMapVectorCascadeStyle style, java.lang.Runnable onReadyToDraw)Sets vector object to drawvoidsetVectorObjects(GLMapVectorObjectList objects, GLMapVectorCascadeStyle style, java.lang.Runnable onReadyToDraw)Sets vector objects to draw
-
Constructor Details
-
GLMapDrawable
public GLMapDrawable(int drawOrder)Creates new empty image with given draw order- Parameters:
drawOrder- Draw order used to sort objects on map
-
GLMapDrawable
public GLMapDrawable(android.graphics.Bitmap bitmap, int drawOrder)Creates image with given draw order and sets bitmap to it- Parameters:
bitmap- bitmap to setdrawOrder- Draw order used to sort objects on map
-
GLMapDrawable
public GLMapDrawable()Creates new empty image that will be injected to map
-
-
Method Details
-
setBitmap
public void setBitmap(android.graphics.Bitmap bitmap, @Nullable java.lang.Runnable onReadyToDraw)Sets new image to draw- Parameters:
bitmap- new image to drawonReadyToDraw- optional runnable that called when image ready to draw
-
setBitmap
public void setBitmap(android.graphics.Bitmap bitmap)Sets new image to draw- Parameters:
bitmap- new image to draw
-
setText
public void setText(java.lang.String text, GLMapVectorStyle style, @Nullable java.lang.Runnable onReadyToDraw)Sets new text to draw- Parameters:
text- new text to drawstyle- style of the textonReadyToDraw- optional runnable that called when text ready to draw
-
setText
Sets new text to draw- Parameters:
text- new text to drawstyle- style of the text
-
setVectorObject
public void setVectorObject(GLMapVectorObject object, GLMapVectorCascadeStyle style, @Nullable java.lang.Runnable onReadyToDraw)Sets vector object to draw- Parameters:
object- object to drawstyle- style of objectonReadyToDraw- optional runnable that called when object is ready to draw
-
setVectorObjects
public void setVectorObjects(GLMapVectorObjectList objects, GLMapVectorCascadeStyle style, @Nullable java.lang.Runnable onReadyToDraw)Sets vector objects to draw- Parameters:
objects- objects to drawstyle- style of objectonReadyToDraw- optional runnable that called when object is ready to draw
-
hitTest
public boolean hitTest(GLMapView mapView, float screenX, float screenY, int paddingLeft, int paddingRight, int paddingTop, int paddingBottom)Tests if point is inside of image- Parameters:
mapView- mapView where image is displayedscreenX- x coordinate of point to checkscreenY- y coordinate of point to checkpaddingLeft- left paddingpaddingRight- right paddingpaddingTop- top paddingpaddingBottom- bottom padding- Returns:
- `true` if point is inside image
-
setPosition
Sets position of image on map.image.setPosition(GLMapView.convertGeoToInternal(new MapPoint(-74.0, 40.7))); //New York- Parameters:
position- position coordinates in internal format of GLMapView- See Also:
MapPoint
-
getPosition
Position of image- Returns:
- position of image in internal coordinates of GLMapView
-
setScale
public void setScale(double scale)Scale of vector object- Parameters:
scale- new scale for vector object
-
getScale
public double getScale()Scale of vector object- Returns:
- scale of vector object
-
setAngle
public void setAngle(float angle)Sets angle of image.image.setAngle(45);- Parameters:
angle- angle to set
-
getAngle
public float getAngle()Angle of image- Returns:
- angle of image in degrees.
-
getWidth
public int getWidth()Loaded image width.- Returns:
- width of image in pixels.
-
getHeight
public int getHeight()Loaded image height.- Returns:
- height of image in pixels.
-
setRotatesWithMap
public void setRotatesWithMap(boolean rotate)Sets whether image rotates with the map.- Parameters:
rotate-trueto rotate with map
-
isRotatesWithMap
public boolean isRotatesWithMap()Whether image rotates with the map- Returns:
- true if image rotates with the map
-
setOffset
public void setOffset(int offsetX, int offsetY)Image offset from position. When offset is (0,0), bottom left corner of image is displayed atpositionimage.setOffset(bmp.getWidth()/2, bmp.getHeight()/2); // image center displayed at position- Parameters:
offsetX- x offset of imageoffsetY- y offset of image- See Also:
setPosition(MapPoint)
-
setTransformMode
public void setTransformMode(int transformMode)If drawable contains vector object and you will use position and scale to transform vector object, then set this to TransformMode.Custom.- Parameters:
transformMode- mode of transforming position and scale
-
getOffset
Offset of image- Returns:
- offset of image in pixels
-