Mapview geopoint está sosteniendo la pantalla

Estoy teniendo problemas en una tarea simple.

Estoy tratando de dibujar un cuadrado en la parte superior izquierda del mapa que se muestra a continuación. (arriba a la izquierda de la proyección del mapa)

enter image description here

Pero cuando convierto el píxel 0,0 a latitud y longitud con TileSystem (TileSystem.PixelXYToLatLong) parece que el punto está dibujado en la pantalla y no en el mapa... ¿Por qué?

El código:

@Override
public void draw(Canvas canvas, MapView mapView, boolean shadow) {
    // Translate point to x y coordinates on the screen

    Paint paint = new Paint();
    paint.setStyle(Paint.Style.FILL);

    Point point1_draw = new Point();
    Point point2_draw = new Point();
    Point point3_draw = new Point();
    Point point4_draw = new Point();

    mapView.getProjection().toPixels(geoPointFromScreenCoords(0,0,mapView),
            point1_draw);
    mapView.getProjection().toPixels(geoPointFromScreenCoords(0,100,mapView),
            point2_draw);
    mapView.getProjection().toPixels(geoPointFromScreenCoords(100,0,mapView),
            point3_draw);
    mapView.getProjection().toPixels(geoPointFromScreenCoords(100,100,mapView),
            point4_draw);

    Path path = new Path();
    path.setFillType(Path.FillType.EVEN_ODD);
    path.moveTo(point1_draw.x, point1_draw.y);
    path.lineTo(point2_draw.x, point2_draw.y);
    path.lineTo(point3_draw.x, point3_draw.y);
    path.lineTo(point4_draw.x, point4_draw.y);
    path.lineTo(point1_draw.x, point1_draw.y);
    path.close();

     //canvas.drawCircle(120, 20, 15, paint);
    canvas.drawPath(path, paint);

    super.draw(canvas, mapView, false);


}`

Estoy extendiendo ItemizedOverlay. Y este camino se dibuja en la pantalla y no en el mapa. Entonces, cuando me desplazo, este camino se mueve con el mapa... Y no quiero eso.

preguntado el 03 de mayo de 12 a las 15:05

¿Qué quieres decir con "en la pantalla y no en el mapa"? -

Me gustaría dibujar un polígono que dejaría en blanco un mosaico de una vista de mapa. Lo que estoy tratando de decir es que la ubicación de GeoPoints no está en la vista del mapa sino en la pantalla. ¿Fue útil? -

1 Respuestas

¿Por qué estás anulando draw en lugar de addItem?

Aquí hay una Video sobre cómo dibujar en un mapa

contestado el 03 de mayo de 12 a las 18:05

Hola, tnx por la respuesta. Pero creo que esto no es lo que estoy buscando. Una vista de mapa de Google está hecha de mosaicos. El número de mosaicos varía según el valor del zoom. Estoy tratando de pintar un mosaico específico en negro, por lo que cuando el usuario ingresa un mosaico específico, borro el mosaico negro. No encontré ninguna información útil. en la web cómo hacer esto. Pensé que podría hacer esto con un polígono que está limitado por geopuntos que son los bordes de un mosaico. Pero no sé cómo pintar un mosaico en la posición [0,0]... - Cacamas

Aquí hay una gran imagen: i.msdn.microsoft.com/dynimg/IC5902.jpg ¿Cómo puedo pintar mosaico (0,0) a negro? - Cacamas

Es posible que desee crear un TableLayout lograr esto. - aturdido

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.