Ok. I did not have time to really do anything useful for this example,  
but here is the URL.

http://s3.amazonaws.com/biodiversityatlas.com/mouseovertile/MouseOverTileExample.html

Javier.

On May 6, 2009, at 12:26 PM, pamela fox wrote:

>
> That's a cool idea! If you can wrap that into a small demo, we can put
> it in the demo gallery.
>
> Thanks for sharing.
>
> On Wed, May 6, 2009 at 7:20 PM, Javier de la Torre  
> <[email protected]> wrote:
>> Hi all,
>> I have been working recently with TileLayerOverlays. The idea is to
>> represent thematic mapping with different colors on countries. I  
>> needed it
>> to be fast so I am using TileLayers. But I wanted to change the  
>> mouse cursor
>> when hovering over the countries.
>> I thought it could be interesting to share how I did it. Baiscally  
>> I have a
>> TileLayer (that extends from TileLayerBase) that add custom Tiles  
>> (Sprites),
>> like some examples on the demo. the custom tile then adds an event  
>> listener
>> to mouse movement. In every movement I check the color of the pixel  
>> behind
>> the mouse and if it is distintct to white then it means I should  
>> activate
>> the mouse cursor. The mouse cursor is set by setting the tile  
>> buttonMode
>> property to true.
>> Here is the class in case someone needs it.
>>
>>
>> ----------------
>> package com.vizzuality.map.overlays
>> {
>>
>> import flash.display.Bitmap;
>> import flash.display.BitmapData;
>> import flash.display.Loader;
>> import flash.display.Sprite;
>> import flash.events.Event;
>> import flash.events.IOErrorEvent;
>> import flash.events.MouseEvent;
>> public class CustomTile extends Sprite
>> {
>> public var loader:Loader;
>>         private var bm:Bitmap;
>>         private var bmd:BitmapData;
>> public function CustomTile()
>> {
>> loader = new Loader();
>> loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,
>> ioErrorHandler,false,0,true);
>> loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
>> loaded,false,0,true);
>> this.addEventListener(MouseEvent.MOUSE_MOVE,onMouseOver);
>> }
>> private function ioErrorHandler(event:IOErrorEvent):void {
>> event.currentTarget.removeEventListener(IOErrorEvent.IO_ERROR,
>> ioErrorHandler);
>> }
>>
>> private function onMouseOver(evt:MouseEvent):void {
>> bm = this.loader.content as Bitmap;
>> bmd = new BitmapData(256, 256);
>> bmd.draw(bm.bitmapData);
>> var color:int = bmd.getPixel(evt.localX, evt.localY);
>> if (color != 0xFFFFFF) {
>> this.buttonMode=true;
>> } else {
>> this.buttonMode=false;
>> }
>> }
>> private function loaded(event:Event):void {
>> event.currentTarget.removeEventListener(Event.COMPLETE, loaded)
>> addChild(loader);
>> }
>>
>> }
>> }
>> -----------------
>>>
>>
>
> >


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Maps API For Flash" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-maps-api-for-flash?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to