Я пытаюсь получить значение цвета, когда я нажимаю изображение на сцене. Я планирую использовать это, чтобы создать карту высот для игры, над которой я работаю, заставляя персонажа двигаться медленнее по пересеченной местности (части карты высоты с определенным значением цвета), но я продолжаю получать следующую ошибку:AS3: Получение значения цвета из растрового изображения
TypeError: Error #1034: Type Coercion failed: cannot convert flash.display::[email protected] to flash.display.Bitmap.
at testGetColor2_fla::MainTimeline/frame1()
Вот мой код до сих пор:
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.events.MouseEvent;
import flash.display.Sprite;
var container:Sprite = new Sprite();
var myHeightMap:Bitmap = Bitmap(heightMap);
this.addChild(container);
container.addChild(myHeightMap);
container.addEventListener(MouseEvent.CLICK, onClick);
function onClick(e:MouseEvent):void
{
var obj:Sprite = e.currentTarget as Sprite;
var myHeightMap:Bitmap = Bitmap(obj.getChildAt(0));
var pixelValue:uint = myHeightMap.bitmapData.getPixel(mouseX,mouseY);
trace(pixelValue.toString(16));
}
Что я делаю неправильно?
Вы, сэр, ROCK !!!! Работает!!! Огромное спасибо :) Жаль, что я мог бы поддержать, но у меня недостаточно репутации. – vagabond80
Рад помочь! Если ваша проблема решена, тогда вы должны отметить, какой ответ был наиболее полезен, как «принят». :) – CheeseWarlock
ah gotcha. Спасибо за это :) – vagabond80