PDA

Просмотр полной версии : Масштабирование и BitmapData


Bolshoy2010
20.04.2010, 16:14
Загружаю картинку из библиотеки, масштабирую загруженную картинку и с помощью метода draw() перевожу её в BitmapData. Но в итоге в map_bd она становится прежнего размера как до масштабирования. Подскажите пожалуйста почему так и как с этим бороться?

var tmp:MovieClip = this.createEmptyMovieClip("tmp", this.getNextHighestDepth());
tmp.attachMovie("grid", "grid", this.getNextHighestDepth());
tmp._width*=0.5;
tmp._height*=0.5;
map_bd = new BitmapData(w, h, true, 0xFF000000);
map_bd.draw(tmp);

iNils
20.04.2010, 16:20
Предлагаю читать хелп.
draw ()
Отображает исходный экранный объект source поверх растрового изображения с помощью векторного средства визуализации проигрывателя Flash Player. Можно задать параметры matrix, colorTransform, blendMode и clipRect назначения, чтобы управлять процессом визуализации. Также можно указать, должно ли смягчаться растровое изображение при масштабировании (это применимо только если источником является объект BitmapData).

Этот метод напрямую соответствует тому, как рисуются объекты с помощью стандартного векторного средства визуализации в интерфейсе инструмента разработки.

Исходный экранный объект не использует свои примененные преобразования для этого вызова. Он обрабатывается в том виде, в котором представлен в библиотеке или файле: без преобразования матрицы, цвета и без режима наложения. Чтобы нарисовать экранный объект (например, фрагмент ролика) с помощью его собственных свойств преобразования, можно скопировать его объект свойства transform в свойство transform объекта Bitmap, использующего объект BitmapData.

Bolshoy2010
20.04.2010, 16:25
то есть применительно к моему примеру это будет так? :

map_bd.transform=tmp.transform;

Я правильно понял?

Добавлено через 1 час 23 минуты
:confused:Что-то я не совсем понял как и что копировать.
объясните пожалуйста. очень хочется разобраться.

Psycho Tiger
23.04.2010, 00:51
map_bd.draw(tmp, MATRIX);

Bolshoy2010
26.04.2010, 12:09
Psycho Tiger, огромное спасибо за подсказку! Чуть-чуть почитал хелп по матрицам преобразования, разобрался, всё заработало!:yahoo: