Подскажите пожалуйста возможно ли увеличить часть(окружность, квадрат) картинки напр импортированной из библиотеки, если возможно то как именно???
Molecula
17.12.2007, 17:58
Чуть дополню, ответ выше:
new BitmapData
draw
marix
а поподробней не могли бы объяснить, а то я начинающий и пока с BitmapData не сталкивался(или ссылочки на мануальчик по этой теме), заранее спасибо
Fernando Costa
17.12.2007, 18:44
http://help.inils.ru/flash8/
http://help.inils.ru/flash8/
маловато будет как для начинающего... мне б еще чего нибудь...
Откройте встроенный хелп флеша.
Дружище, возможно тебе подойдет более простой способ, который можно найти по ключивым словам "эффект линзы". Когда при помощи маски (хоть круглой, хоть квадратной), показывается увеличенный фрагмент нижележащего слоя. По крайней мере из твоего вопроса мне подумалось об этом способе....
Molecula
18.12.2007, 16:49
Вот, пример набросал.
Желтое, это часть красного:
import flash.display.BitmapData;
import flash.geom.Matrix;
import flash.filters.ColorMatrixFilter;
import mx.transitions.easing.*;
import mx.transitions.Tween;
var matrix:Array = new Array();
matrix = matrix.concat([1, 0, 0, 0, 0]); // red
matrix = matrix.concat([1, 1, 0, 0, 0]); // green
matrix = matrix.concat([0, 0, 1, 0, 0]); // blue
matrix = matrix.concat([0, 0, 0, 1, 0]); // alpha
var filter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
this.createEmptyMovieClip("square_mc", this.getNextHighestDepth());
square_mc.beginFill(0xFF0000);
square_mc.moveTo(0, 0);
square_mc.lineTo(100, 0);
square_mc.lineTo(100, 100);
square_mc.lineTo(0, 100);
square_mc.lineTo(0, 0);
square_mc.endFill();
var myMatrix:Matrix = new Matrix();
myMatrix.scale(1,1);
var myBitmapData:BitmapData = new BitmapData(square_mc._width/2, square_mc._height/2, true, 0xFF);
myBitmapData.draw(square_mc, myMatrix, null, 'normal', null, true);
var _con:MovieClip = this.createEmptyMovieClip("_con", this.getNextHighestDepth());
var mc_1:MovieClip = _con.createEmptyMovieClip("mc_1", this.getNextHighestDepth());
mc_1.attachBitmap(myBitmapData, this.getNextHighestDepth());
mc_1._x-=mc_1._parent._width/2;
mc_1._y-=mc_1._parent._height/2;
_con._x+=square_mc._width/4
_con._y+=square_mc._height/4
mc_1.filters = new Array(filter);
_con.onPress=function()
{
var _xs:Tween = new Tween(this, '_xscale', Regular.easeInOut, this._xscale, this._xscale*1.2, .5, true);
var _ys:Tween = new Tween(this, '_yscale', Regular.easeInOut, this._yscale, this._yscale*1.2, .5, true);
}
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.