Yes, I saw these excellent examples and learned a lot. But it does not
help with this situation. Do you have example where you have masked
video?

2009/4/28 Hans Wichman <j.c.wich...@objectpainters.com>:
> "that takes masking into account, it takes masks into account" - some days
> I'm like a broken record lol
>
>
>
>
> On Tue, Apr 28, 2009 at 11:28 AM, Hans Wichman <
> j.c.wich...@objectpainters.com> wrote:
>
>> Hi Natalia,
>>
>> I recently wrote a reflection class that takes masking into account, it
>> takes masks into account, hope it helps:
>> http://objectpainters.com/blog/2008/11/23/visual-reflections-in-as2/
>>
>> Gots lots of samples in the zip including video.
>>
>> greetz
>> JC
>>
>>   On Tue, Apr 28, 2009 at 10:26 AM, natalia Vikhtinskaya <
>> natavi.m...@gmail.com> wrote:
>>
>>> Hi to all
>>>
>>> I use reflection effect for video. But I want to draw not horizontal
>>> line between video and reflection Mc. So I mask my video with shape:
>>>
>>> var distance:Number=20;
>>> function drawShapeMask(mc:MovieClip, startX:Number, startY:Number,
>>> w:Number, h:Number) {
>>>       mc.beginFill(0xFF0000);
>>>       mc.moveTo(startX, startY);
>>>       mc.lineTo(startX + w, startY);
>>>       mc.lineTo(startX + w, startY + h);
>>>       mc.lineTo(startX, startY + h-distance);
>>>       mc.lineTo(startX, startY);
>>>       mc.endFill();
>>> }
>>> Now bottom line of video has an angle.
>>>
>>> Reflection code works correctly without masked video. With masked
>>> video it shows only half of video without gradient mask.
>>> This is how that looks http://www.natavi.co.uk/test/reflect.jpg
>>> .
>>> What  is wrong? Maybe I can create the same angle position between
>>> video and reflection without using mask?
>>>
>>>
>>> var reflectionDropoff:Number=1.1;
>>> var reflectionAlpha:Number=50;
>>>
>>>
>>> reflectIt=function(){
>>>       var bounds = new Object();
>>>       bounds.width = myVideo_mc._width;
>>>       bounds.height = myVideo_mc._height;
>>>       matrixHeight = bounds.height/reflectionDropoff;
>>>       var myBitmapData = new flash.display.BitmapData(bounds.width,
>>> bounds.height, true, 0xFFFFFF);
>>>       myBitmapData.draw(myVideo_mc);
>>>       var reflect=this.createEmptyMovieClip("reflect", 10);
>>>       reflect.attachBitmap(myBitmapData, 1);
>>>       reflect._yscale = -100;
>>>       reflect._x =myVideo_mc._x;
>>>       reflect._y =myVideo_mc._y+(bounds.height*2)-distance;
>>>       reflect._alpha = reflectionAlpha;
>>>       var gra=this.createEmptyMovieClip("gra", 15);
>>>       var fillType = "linear";
>>>       var colors = [0xFFFFFF, 0xFFFFFF];
>>>       var alphas = [80, 0];
>>>       var ratios = [0, 255];
>>>       var matrix = {matrixType:"box", x:0, y:0, w:bounds.width,
>>> h:matrixHeight, r:(90/180)*Math.PI};
>>>       var spreadMethod:String = "pad";
>>>       gra.beginGradientFill(fillType, colors, alphas, ratios, matrix,
>>> spreadMethod);
>>>       gra.moveTo(0, 0);
>>>       gra.lineTo(bounds.width, distance);
>>>       gra.lineTo(bounds.width, bounds.height);
>>>       gra.lineTo(0, bounds.height);
>>>       gra.lineTo(0, 0);
>>>       gra.endFill();
>>>       gra._y = reflect._y - reflect._height;
>>>       gra._x = reflect._x;
>>>       reflect.cacheAsBitmap = true;
>>>       gra.cacheAsBitmap = true;
>>>       reflect.setMask(gra);
>>>       this.onEnterFrame = function ()
>>>       {
>>>       myBitmapData.draw(myVideo_mc);
>>>       };
>>>
>>>       }
>>>
>>> Thanks for any help!
>>> _______________________________________________
>>> Flashcoders mailing list
>>> Flashcoders@chattyfig.figleaf.com
>>> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
>>>
>>
>>
> _______________________________________________
> Flashcoders mailing list
> Flashcoders@chattyfig.figleaf.com
> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
>

_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Reply via email to