【问题标题】:Retrieving percentage of colors of a MovieClip检索 MovieClip 的颜色百分比
【发布时间】:2015-01-27 05:55:37
【问题描述】:

今天我的问题如下:

我有一个游戏,其中一个阶段是你必须在娃娃身上涂一层“保护霜”。我已经有了这个效果(下图),我正在使用一个 alpha 过滤器和一个绘制的蒙版。

我想知道如果用户填充了 100% 的面具,我该怎么做才能在游戏 20 秒后进行检查...

我的代码是这样的(请原谅我,我是初学者和巴西人......有任何问题问我):

stop();
import flash.display.Shape;
import flash.events.Event;
import flash.display.BlendMode;
import flash.display.BitmapData;
import flash.utils.Timer;

var tempoFase2:Timer = new Timer(10000, 1);

var corpo_creme:MovieClip = new corpo_mask();
addChild(corpo_creme);
corpo_creme.x = corpo_branco.x;
corpo_creme.y = corpo_branco.y;

setChildIndex(corpo_branco, 1);
setChildIndex(cabeca, 3);
setChildIndex(corpo_creme, 2);

var drawing:Shape = new Shape();
addChild(drawing);

corpo_creme.mask = drawing;
corpo_branco.blendMode = BlendMode.LAYER;

stage.addEventListener(MouseEvent.MOUSE_MOVE,draw);

function draw(e:Event):void {
    drawing.graphics.beginFill(0xFFFFFF);
    drawing.graphics.drawCircle(mouseX,mouseY,30);
    drawing.graphics.endFill();
}

谢谢你。

【问题讨论】:

    标签: actionscript-3 flash drawing getpixel


    【解决方案1】:

    试试这个解决方案:

    https://stackoverflow.com/a/15354416/1627055

    基本上,您对BitmapData 类型的掩码运行BitmapData.threshold()。您还可以在临时BitmapData 对象上绘制drawing 的相关部分并执行相同的技巧,但请确保您的算法会将绘图未覆盖的区域计算为已填充 - 您可以通过以下方式实现创建预填充白色的位图数据。

    【讨论】:

    • 朋友,我无法使用这个答案......给出了几个错误......还有更简单的东西吗?拥抱!
    • 我不相信有更简单的解决方案,因为找到覆盖范围需要全面检查。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-16
    • 1970-01-01
    • 2011-05-23
    • 1970-01-01
    • 2015-06-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多