Crear formas y objetos personalizados

La creación de formas y objetos personalizados en la parte superior de los mapas es crucial a la hora de desarrollar aplicaciones de BlackBerry integradas. Por ejemplo, podría crear una aplicación que se integre con BlackBerry Messenger y que muestre la imagen de perfil del usuario de un dispositivo BlackBerry en un mapa cuando el usuario se encuentre cerca. También podría crear una aplicación y mostrar un polígono que marque un perímetro para un área limitada geográficamente que supervise su aplicación. Como cualquier otro objeto asignable, puede personalizar la apariencia de sus formas y objetos personalizados con estilos.

El paquete net.rim.device.api.lbs.maps.model contiene las siguientes clases que corresponden a las formas y los objetos básicos que puede utilizar como elementos básicos para crear sus propios objetos.

Clase

Descripción

MapPoint

Esta clase representa las coordenadas de una ubicación en un mapa. Los conjuntos de objetos MapPoint son necesarios para crear líneas, polilíneas y polígonos.

MapMarker

Esta clase representa un punto marcador en el mapa, semejante a un objeto MapPoint. Puede utilizar una imagen como objeto MapMarker.

PeerPoint

Esta clase representa una ubicación estática en un mapa con precisión. Por ejemplo, puede utilizar un objeto PeerPoint para marcar la última ubicación del usuario de un dispositivo BlackBerry con precisión en metros.

MapLine

Esta clase representa un segmento de línea en el mapa. Para crear un objeto MapLine, debe especificar los objetos MapPoint para el principio y el final de la línea.

MapPolyLine

Esta clase representa una línea continua compuesta de varios segmentos de línea entre un conjunto ordenado de objetos MapPoint.

MapSimplePolygon

Esta clase representa un polígono sencillo definido por un conjunto ordenado de objetos MapPoint. El último objeto MapPoint de la matriz se une al primer objeto para cerrar el polígono. Los polígonos sencillos se representan más rápido que los polígonos complejos.

MapComplexPolygon

Esta clase representa un polígono compuesto de un límite exterior (definido como una serie ordenada de MapPoints) y un límite interior (cero o más MapSimplePolygons).

MapImage

Esta clase representa una imagen para una ubicación de un mapa. Puede especificar una imagen, miniatura o URI para la ubicación. Cuando especifica una miniatura, ésta se muestra directamente en el mapa. Cuando el usuario hace clic en la miniatura y solicita más detalles, se muestra la imagen más grande.

Para algunas de las clases mencionadas en la tabla anterior, hay un conjunto de formas correspondientes disponible en el paquete net.rim.device.api.lbs.maps.model.geospatial. La diferencia entre las formas del paquete net.rim.device.api.lbs.maps.model.geospatial (llamado con Gs<shape>) y las formas básicas (llamadas Map<shape>) es que las formas geoespaciales se pueden organizar en una estructura de árbol mediante las clases GsFolder y GsRoot. A los objetos geoespaciales también se les pueden asignar nombres y descripciones.

Crear un objeto MapSimplePolygon

MapPoint[] points = new MapPoint[6];
points[0] = new MapPoint(45.05, -75.0);
points[1] = new MapPoint(45.0, -74.95);
points[2] = new MapPoint(44.95, -74.975);
points[3] = new MapPoint(44.95, -75.025);
points[4] = new MapPoint(45.0, -75.05);
points[5] = new MapPoint(45.05, -75.0);
MapSimplePolygon poly = new MapSimplePolygon(points);

Crear un objeto GsImage

GsImage gsImg = new GsImage();
img.setIconUri("http://www.rim.com/products/appworld_3col.jpg");
img.setLat(44.5);
img.setLon(-75.0);
img.setName("App World!");
img.setDescription("BlackBerry App World icon");

¿Le ha resultado útil esta información? Envíenos sus comentarios.