|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
BitmapData::draw(clip) - отрисовать "минусовую" часть clip
Здравствуйте, мучает вопрос. Есть некий спрайт. В нем нарисован прямоугольник (-100, -100, 200, 200). Хочу этот квадрат отрисовать в битмап (200х200). Но дело в том что отрисовывается лишь четвертая часть - та котороя находится в "плюсовой" части спрайта, а все что находится в минусе - не попадает в битмап. Ну - это оно логично. Но как все-таки отрисовать весь квадрат? Параметр clipRect метода draw не подходит - проверял. Если clipRect задать (-100, -100, 200, 200) - все равно отрисовывается лишь четвертая часть . Подскажите, пожалуйста, как можно решить эту задачу.
Добавлено через 2 минуты PS: Я делаю это таким способом: помещаю спрайт квадрата в другой спрайт (на положительную область), и отрисовываю его. Но кажеться мне - это немного извращенно. Нет ли более изящных способов?
__________________
Я мало чего умею, но зато хорошо умею учиться... |
|
|||||
var sprite:Sprite = new Sprite(); sprite.graphics.beginFill(0x808080); sprite.graphics.drawRect( -100, -100, 200, 200); var bounds:Rectangle = sprite.getBounds(sprite); var mtrx:Matrix = new Matrix(); mtrx.translate(bounds.left, bounds.top); var bmd:BitmapData = new BitmapData(bounds.width, bounds.height); bmd.draw(sprite, mtrx); addChild(new Bitmap(bmd)); |
|
|||||
Спасибо товарищи, за советы. silin, так оно не малюет ничего. Я изменил:
на
, тогда намалевало
__________________
Я мало чего умею, но зато хорошо умею учиться... |
|
|||||
Ну, раз уж опытные сказали - значит так и сделаю. Только вопрос: чем лучше? Быстрее что ли?
__________________
Я мало чего умею, но зато хорошо умею учиться... |
Часовой пояс GMT +4, время: 14:07. |
|
« Предыдущая тема | Следующая тема » |
Теги |
BitmapData.draw |
|
|