![]() |
метод getPixels возвращающий ByteArray
В АС 3 метод getPixels возвращает ByteArray. К тому же появились методы для работы с байтами.
Что мы можем изменить в полученном массиве? Как организован возвращаемый этой функцией массив? Методы getPixel и setPixel слишком медленные что бы обработать большое количество пикселов, Можно ли манипулировать пикслемами в массиве что возвращает функция getPixels ? Как я понимаю обработать массив байтов можно намного быстрее чем последовательно вызывать функции getPixel и setPixel. И ещё почему метод copyPixels в несколько раз быстрее чем вызов getPixels и setPixels у двух растровых объектов? |
А что тебя конкретно интересует? Ты можешь изменить любой байт, если нужно. Или нужно послать массив байтов на сервер?
Код:
import flash.utils.ByteArray; |
Цитата:
Хотелось бы заменить пикселы определённых цветов на пикселы других цветов. Только очень быстро |
Как я понимаю, вопрос был в каком формате хранятся пиксели в ByteArray.
Аналогично этому: Код:
var ar:Array = new Array();Код:
byteArray.position=0; |
Отлично :)
А как мне определить координаты пиксела? относительно прямоугольника из которого я взял эти пикселы. |
О! Появился. А я уж, по затянувшемуся молчанию решил, что тебя за сорванные сроки с картой заказчик порешил :)
Координаты просто, на каждую точку 4 байта, значит надо позиционироваться на 4*(y*ширина_прямоугольника + x) и читать значение. Код:
// заливаем все красным |
Цитата:
|
miramax, а откуда ж там эти данные возьмутся?
|
Цитата:
|
http://ink.envisionext.com/swf2png/
я тут запостил отчёт о сохранение картинки на сервер. т.е. BitmapData в byteArray (PNG картинка) и отправка готовой картинки для записи на сервер. |
| Часовой пояс GMT +4, время: 15:25. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.