zoukankan      html  css  js  c++  java
  • 查找满足条件的颜色并替换

    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.display.BitmapDataChannel;
    import flash.geom.Point;
    import flash.geom.Rectangle;
    
    var bmd1: BitmapData = new BitmapData(200,
    	200,
    	true,
    	0xFFCCCCCC);
    
    var seed: int = int(Math.random() * int.MAX_VALUE);
    var channels: uint = BitmapDataChannel.RED | BitmapDataChannel.BLUE;
    bmd1.perlinNoise(100,
    	80,
    	12,
    	seed, false,
    	true,
    	channels, false,
    	null);
    
    var bitmap1: Bitmap = new Bitmap(bmd1);
    addChild(bitmap1);
    
    var bmd2: BitmapData = new BitmapData(200,
    	200,
    	true,
    	0xFFCCCCCC);
    var pt: Point = new Point(0,
    	0);
    var rect: Rectangle = new Rectangle(0,
    	0,
    	200,
    	200);
    var threshold: uint = 0x00800000; //50%的红色通道值
    var color: uint = 0x80FF0000; //替换后的颜色
    var maskColor: uint = 0x00FF0000; //因为只查找红色通道,所以遮罩仅为纯红色通道
    bmd2.threshold(bmd1,
    	rect, pt, ">",
    	threshold, color, maskColor, true);
    
    var bitmap2: Bitmap = new Bitmap(bmd2);
    bitmap2.x = bitmap1.x + bitmap1.width + 10;
    addChild(bitmap2);
    
    addEventListener(Event.ENTER_FRAME, EnterFrameHandler);
    
    function EnterFrameHandler(e: Event): void {
    	seed = int(Math.random() * int.MAX_VALUE);
    	bmd1.perlinNoise(100,
    		80,
    		12,
    		seed, false,
    		true,
    		channels, false,
    		null);
    	bitmap1.bitmapData = bmd1;
    	bmd2.threshold(bmd1,
    		rect, pt, ">",
    		threshold, color, maskColor, true);
    	bitmap2.bitmapData = bmd2;
    }
    

      

  • 相关阅读:
    购物车案例详解。利用cookie
    设计模式8种
    设计模式介绍
    Promise
    面向对象-拖拽
    本地存储
    闭包和继承
    move.js
    CDM指南之Agent管理
    失业的程序员九创业就是一场戏
  • 原文地址:https://www.cnblogs.com/dt1991/p/9298977.html
Copyright © 2011-2022 走看看