GetPixel for a bitmap under another?
Any help on this would be much appreciated.
I am creating an interactive map in flash / actionscript 3.0 and would like to allow a user to click on a location in the map in order to find the elevation at that point.开发者_JAVA技巧 In the stage, I have a base map of the area sitting on top of a black and white image where the value of each pixel represents height in feet.
So far, using getPixel to retrieve the elevation works great, but when the base map is sitting on top of the black and white elevation surface, getPixel retrieves values for the base map, not the underlying image. Is there a way to display the base map to the user while still using getPixel to retrieve values from the underlying image?
Many thanks,
Matt
Simply use getPixel()
on the black / white image, not the container.
I assume you have a container Sprite and 2 children, the black / white image and on top the base map. Attach the click listener to the container Sprite and retrieve the first child with getChildAt(0)
. Get the BitmapData
of that child and call getPixel(x, y)
on it.
If the underlying image is not being shown to the user, it need not even be in the display list; it can exist in memory only as a BitmapData.
Add your MouseEvent.CLICK listener function to the base map users can click on, and in that function use the event x and y to do a BitmapData.getPixel(x,y) on your elevation map (greyscale image) BitmapData object.
精彩评论