asd

27

Ene

Dibujar polígono API Google Maps Actionscript 3 – Polygon

Publicado por: LeoBaraldi

Siguiendo con los ejemplos, en este caso continuamos el mismo código del ejemplo anterior pero le sumamos la posibilidad de dibujar una zona determinada del mapa con las opciones de Polygon.

Actionscript:
  1. import com.google.maps.Map;
  2. import com.google.maps.MapEvent;
  3. import com.google.maps.MapType;
  4. import com.google.maps.controls.*;
  5. import com.google.maps.LatLng;
  6. //IMPORTAMOS LA CLASE PARA TRABAJAR CON MARCADORES
  7. import com.google.maps.overlays.*;
  8. //importamos la clase para trabajar con opciones para los marcadores
  9. import com.google.maps.overlays.MarkerOptions;
  10. //clase para trabajar con eventos del mouse
  11. import com.google.maps.MapMouseEvent;
  12. //clase requerida para desplegar una ventana
  13. import com.google.maps.InfoWindowOptions;
  14. //clases para trabajar con rellenos y filetes
  15. import com.google.maps.styles.FillStyle;
  16. import com.google.maps.styles.StrokeStyle;
  17. //clases para dibujar un poligono
  18. import com.google.maps.overlays.Polygon;
  19. import com.google.maps.overlays.PolygonOptions;
  20.  
  21. var map:Map = new Map();
  22. //CREAMOS UNA VARIABLE CON EL TIPO MARKER
  23. var marker:Marker;
  24.  
  25. map.key="ABQIAAAAvvxprSVgDmort-nQvP9UOBRcIBM5SEgUYyuJIuqH4Qf0kgkYgBT_K4sLwopPkxZFAw-tlQLIRz3sTA";
  26. map.addEventListener(MapEvent.MAP_READY, onMapReady);
  27. map.setSize(new Point(stage.stageWidth, stage.stageHeight));
  28. this.addChild(map);
  29.  
  30. function onMapReady(event:Event):void {
  31.     //centramos el mapa a las coordenadas deseadas (-31...,-64...) e indicamos el zoom (12) y tipo de mapa por defecto (MapType.NORMAL_MAP_TYPE)
  32.     map.setCenter(new LatLng(-31.409619,-64.184532), 15, MapType.NORMAL_MAP_TYPE);
  33.     map.addControl(new ZoomControl());
  34.     map.addControl(new PositionControl());
  35.     map.addControl(new MapTypeControl());
  36.     //en la libreria cramos un Sprite con el nombre de clase Icono
  37.     //creamos una variable opciones y guardamos el icono
  38.     var opciones:MarkerOptions=new MarkerOptions({icon:new Icono()});
  39.     //CREAMOS UN NUEVO OBJETO CON LAS COORDENADAS DEL MARCADOR
  40.     //y agregamos como parametro las opciones antes modificadas
  41.     marker=new Marker(new LatLng(-31.40949996324042, -64.18445689814757),opciones);
  42.    
  43.     //agregamos un detector de evento para el clic sobre el marcador
  44.     marker.addEventListener(MapMouseEvent.CLICK, ClickMarket);
  45.     //por si quieren saber las coordenadas de un punto descomenten la linea 49
  46.     map.addEventListener(MapMouseEvent.CLICK,mapClic);
  47.     function mapClic(e:MapMouseEvent):void {
  48.         //trace(e.latLng);
  49.     }
  50.     //creamos un poligono dibujando lineas
  51.     var polygon:Polygon=new Polygon([
  52.     //desde
  53.     new LatLng(-31.40949996324042, -64.18445689814757),
  54.     //hasta
  55.     new LatLng(-31.409783819879326, -64.1834162010498),
  56.     //desde
  57.     new LatLng(-31.41198139060486, -64.18427450793456),
  58.     //hasta
  59.     new LatLng(-31.411688384148704, -64.1853259338684)],
  60.     //agregamos las opciones de relleno y filete
  61.     new PolygonOptions({strokeStyle:new StrokeStyle({color:0x000000,thickness:1,alpha:0.7}),fillStyle:new FillStyle({color:0xFF0000,alpha:0.8})}));
  62.     //agregamos el poligono a la visualizacion del mapa
  63.     map.addOverlay(polygon);
  64.     //agregamos el marcador a la visualizacion del mapa
  65.     map.addOverlay(marker);
  66. }
  67.  
  68. //el contenido del globo del marcador
  69. var Texto:String="<b>LeoBaraldi</b> <br/> Juan de los Palotes 225";
  70.  
  71. function ClickMarket(e:MapMouseEvent):void {
  72.     //mostramos el globo y su contenido
  73.     marker.openInfoWindow(new InfoWindowOptions({contentHTML:Texto,pointOffset: new Point(0, -35)}));
  74. }

23

Ene

Personalizar icono marker y desplegar información del lugar con Api Google Maps – MarkerOptions Actionscript 3

Publicado por: LeoBaraldi

En el ejemplo anterior agregamos un marcador en una posición determinada pero usando el icono por defecto del api de Google Maps para Flash, en este nuevo ejemplo vamos a personalizar dicho marcador o marker y sumarle un evento clic para que despliegue un globo o ventana con información.

Actionscript:
  1. import com.google.maps.Map;
  2. import com.google.maps.MapEvent;
  3. import com.google.maps.MapType;
  4. import com.google.maps.controls.*;
  5. import com.google.maps.LatLng;
  6. //IMPORTAMOS LA CLASE PARA TRABAJAR CON MARCADORES
  7. import com.google.maps.overlays.*;
  8. //importamos la clase para trabajar con opciones para los marcadores
  9. import com.google.maps.overlays.MarkerOptions;
  10. //clase para trabajar con eventos del mouse
  11. import com.google.maps.MapMouseEvent;
  12. //clase requerida para desplegar una ventana
  13. import com.google.maps.InfoWindowOptions;
  14.  
  15. var map:Map = new Map();
  16. //CREAMOS UNA VARIABLE CON EL TIPO MARKER
  17. var marker:Marker;
  18.  
  19. map.key="ABQIAAAAvvxprSVgDmort-nQvP9UOBRcIBM5SEgUYyuJIuqH4Qf0kgkYgBT_K4sLwopPkxZFAw-tlQLIRz3sTA";
  20. map.addEventListener(MapEvent.MAP_READY, onMapReady);
  21. map.setSize(new Point(stage.stageWidth, stage.stageHeight));
  22. this.addChild(map);
  23.  
  24. function onMapReady(event:Event):void {
  25.     //centramos el mapa a las coordenadas deseadas (-31...,-64...) e indicamos el zoom (12) y tipo de mapa por defecto (MapType.NORMAL_MAP_TYPE)
  26.     map.setCenter(new LatLng(-31.409619,-64.184532), 12, MapType.NORMAL_MAP_TYPE);
  27.     map.addControl(new ZoomControl());
  28.     map.addControl(new PositionControl());
  29.     map.addControl(new MapTypeControl());
  30.     //en la libreria cramos un Sprite con el nombre de clase Icono
  31.     //creamos una variable opciones y guardamos el icono
  32.     var opciones:MarkerOptions=new MarkerOptions({icon:new Icono()});
  33.     //CREAMOS UN NUEVO OBJETO CON LAS COORDENADAS DEL MARCADOR
  34.     //y agregamos como parametro las opciones antes modificadas
  35.     marker=new Marker(new LatLng(-31.409619,-64.184532),opciones);
  36.     //Y LO AGREGAMOS A LA VISUALIZACION DEL MAPA
  37.    
  38.     //agregamos un detector de evento para el clic sobre el marcador
  39.     marker.addEventListener(MapMouseEvent.CLICK, ClickMarket);
  40.     map.addOverlay(marker);
  41. }
  42.  
  43. //el contenido del globo del marcador
  44. var Texto:String="<b>LeoBaraldi</b> <br/> Juan de los Palotes 225"
  45.  
  46. function ClickMarket(e:MapMouseEvent):void {
  47.     //mostramos el globo y su contenido
  48.     marker.openInfoWindow(new InfoWindowOptions({contentHTML:Texto}));
  49. }

21

Ene

Agregar Marker o pointer en componente de google maps actionscript 3

Publicado por: LeoBaraldi

Cuando vimos tutorial de como utilizar la api de Google maps en adobe flash, surgieron posteriormente muchas dudas por partes de usuarios a la hora de personalizarlo como por ejemplo cargar pointers, marker o puntos de referencias en el mapa. Dado eso voy a ir colocando ejemplos variados de personalización para que quede mas claro la utilización de la misma. El ejemplo siguiente simplemente agrega un marker en el mapa.

Actionscript:
  1. import com.google.maps.Map;
  2. import com.google.maps.MapEvent;
  3. import com.google.maps.MapType;
  4. import com.google.maps.controls.*;
  5. import com.google.maps.LatLng;
  6. //IMPORTAMOS LA CLASE PARA TRABAJAR CON MARCADORES
  7. import com.google.maps.overlays.*;
  8.  
  9. var map:Map = new Map();
  10. //CREAMOS UNA VARIABLE CON EL TIPO MARKER
  11. var marker:Marker;
  12.  
  13. map.key="ABQIAAAAvvxprSVgDmort-nQvP9UOBRcIBM5SEgUYyuJIuqH4Qf0kgkYgBT_K4sLwopPkxZFAw-tlQLIRz3sTA";
  14. map.addEventListener(MapEvent.MAP_READY, onMapReady);
  15. map.setSize(new Point(stage.stageWidth, stage.stageHeight));
  16. this.addChild(map);
  17.  
  18. function onMapReady(event:Event):void {
  19.     //centramos el mapa a las coordenadas deseadas (-31...,-64...) e indicamos el zoom (12) y tipo de mapa por defecto (MapType.NORMAL_MAP_TYPE)
  20.     map.setCenter(new LatLng(-31.409619,-64.184532), 12, MapType.NORMAL_MAP_TYPE);
  21.     map.addControl(new ZoomControl());
  22.     map.addControl(new PositionControl());
  23.     map.addControl(new MapTypeControl());
  24.     //CREAMOS UN NUEVO OBJETO CON LAS COORDENADAS DEL MARCADOR
  25.     marker=new Marker(new LatLng(-31.409619,-64.184532));
  26.     //Y LO AGREGAMOS A LA VISUALIZACION DEL MAPA
  27.     map.addOverlay(marker);
  28. }

11

Ene

Detectar inactividad o ausencia de un usuario (USER_IDLE) AIR

Publicado por: LeoBaraldi

Hay aplicaciones que son sensibles a tareas como pueden ser controles de producción por tiempo, en esos casos es adecuado que nuestra aplicación pueda detectar que nos ausentamos o hay inactividad por cierto periodo de tiempo, para ello vamos a utilizar el evento userIdle de la clase NativeApplication para saber cuando el usuario se ausento y cuando volvió.

Actionscript:
  1. //creamos una variable con NativeApplication
  2. var natApp:NativeApplication = NativeApplication.nativeApplication
  3. //establecemos el tiempo de limite en segundos
  4. natApp.idleThreshold = 60
  5. //evento para cuando se detecto la inactividad
  6. natApp.addEventListener(Event.USER_IDLE,userOff)
  7. //evento para cuando se detecto actividad nuevamente
  8. natApp.addEventListener(Event.USER_PRESENT,userOn)
  9. ///
  10. function userOff (e:Event):void {
  11.     trace("No estoy usando la pc")
  12. }
  13. function userOn (e:Event):void {
  14.     trace("Ya regrese!!!")
  15. }

11

Ene

Alerta al cerrar una aplicación en AIR (CLOSING)

Publicado por: LeoBaraldi

Las aplicaciones en AIR cuando uno llama al método close() de la clase NativeWindow inmediatamente dicha ventana se cierra y es lo esperado en primer momento, pero puede que muchas veces el usuario lo haga por error. Para evitarlo simplemente podemos hacer uso del evento CLOSING para notificar al usuario que la aplicación se esta por cerrar y validar dicha acción, también es útil para aquellas aplicaciones que sean sensibles a tareas que se deban efectuar antes de ser cerradas definitivamente.

Para este ejemplo utilizaremos una clase personalizada para crear una ventana de alerta donde se le notifica al usuario de la acción y se le pide que confirme. Aprovecho para dejarle la referencia de esta clase Alert que es muy buena y útil para muchos casos, ya sea para proyectos en AS3, Flex o AIR.

Actionscript:
  1. //importa la clase personalizada
  2. import Alert;
  3. //creo el objeto alert
  4. Alert.init(stage);
  5. //agregamos el escuchador al stage para detectar si se
  6. //llamo a cerrar la aplicación, el evento encargado del mismo es Event.CLOSING
  7. stage.nativeWindow.addEventListener(Event.CLOSING,cerrarAplicacion);
  8. //
  9. function cerrarAplicacion(e:Event):void {
  10.     //aquí detenemos el evento por defecto de cerrar
  11.     e.preventDefault();
  12.     //ejecuto el alert, para ver mejor como funciona la
  13.     //clase alert recomiendo que vean el site y su referencias
  14.     Alert.show("¿Realmente decea salir?",{background:"blur",colour:0xFFFFFF,buttons:["Si", "Cancelar"], callback:handleResponse});
  15.     function handleResponse(response:String):void {
  16.         if (response=="Si") {
  17.             //si es correcto cierra
  18.             stage.nativeWindow.close();
  19.         } else {
  20.             //sino hacemos otra cosa si queremos!
  21.         }
  22.     }
  23. }

11

Ene

Notificar al usuario de un evento o alerta (notifyUser – activate) en AIR

Publicado por: LeoBaraldi

En el ejemplo anterior vimos como detectar el estado de la ventana para notificar o preparar nuestros eventos según sea el caso. Ahora lo que haremos será de alguna manera llamar la atención del usuario de manera visual para que atienda dicho evento. Vamos hacer de dos manera diferentes muy efectivas, la primera será activando la ventana, lo cual si la misma esta minimizada pasara al primer plano y se restaurara a su tamaño anterior, y la segunda alternativa en caso de que la ventano no este minimizada pero inactiva el foco, será por medio de una llamada visual, haciendo que la aplicación parpadee.

Actionscript:
  1. //para este ejemplo agrego un timer para ver el efecto
  2. //minimicen la aplicación o póngala en segundo plano, pasado
  3. //los 10 seg verán el efecto
  4. var time:Timer=new Timer(1000,10);
  5. time.start();
  6. time.addEventListener(TimerEvent.TIMER_COMPLETE,completeTimer);
  7. //
  8. function completeTimer(e:TimerEvent):void {
  9.     //aquí activa la ventana y la coloca en primer plano si es que esta minimizada
  10.     stage.nativeWindow.activate();
  11.     //aquí hace que parpadee nuestra aplicación en la barra de Windows
  12.     stage.nativeWindow.notifyUser(NotificationType.CRITICAL);
  13.     //CRITICAL / INFORMATIONAL
  14.     //si usan CRITICAL, parpadea muchas veces en cambio con INFORMATIONAL solo 1 vez
  15. }

Leonardo David Baraldi

Leonardo Baraldi

Nací en Villa Carlos Paz, tengo 33 años y me dedico a desarrollos para la web desde el año 99, preferentemente en las aéreas de ActionScript y CSS. Trabajo para la firma Manifesto Solutions como jefe de producción.

ultimos post

Usa Firefox es mejor che!!!
Copyright © 2008 LeoBaraldi. Todos los derechos reservados.
Designed by LeoBaraldi and powered by Wordpress | RSS Feed
Love WordPress
Manifesto
Manifesto solutions
Sponsort Oficial de LeoBaraldi