2012-02-22 5 views
0

Как найти положение пикселя в соответствии с его цветом в битовых файлах?Поиск положения пикселя (координаты x и y) в битмапдах

Скажите, у нас есть путь (мувиклип), мы делаем его bitmapdata.

Цвет пути красный.

Как я могу найти данный пиксель красного цвета внутри этого битового массива?

ответ

2

Предполагая, что пиксель, который вы ищете, представляет собой конкретный цвет, вы должны перебирать битмапДата и сравнивать пиксели, используя getPixel() или getPixel32(), чтобы протестировать каждый пиксель против вашего целевого цвета. Что-то вроде этого:

var data:BitmapData; //your bitmap data, however you get it 
var targetColor:uint = 0xFF6600; 

var coords:Point = null; 

for(var i:int = 0; i < data.width; i++) { 
    for(var j:int = 0; j < data.height; j++) { 
     var testPixel:uint = data.getPixel(i,j); 
     if(testPixel == targetColor) { 
      coords = new Point(i, j); 
      break; 
     } 
    } 
} 

Надеюсь, это поможет!

+0

«координаты» будут глобальными координатами? Или он будет локальным, связанным с bitmapdata? –

+0

Локальный, связанный с bitmapdata. – Ian

Смежные вопросы