使用杂点有两种方法:noise()和perlinNoise()

1.noise()方法

说明:使用随机产生的杂点来填充图像。

函数:noise(randomSeed:int , low:uint=0 , high:uint=255 , channelOptions:uint=7 , grayScale:Boolean=false):void

参数:

randomSeed:表示使用的随机种子数

low:要为每个通道生成的最低值(0到255)

high:要为每个通道生成的最高值(0到255)

channelOptions:BitmapDataChannel对象的静态属性值,表示颜色通道

grayScale:是否设置为灰度图像

代码例:

 

 
  
  1. var bmd1:BitmapData=new BitmapData(200,200,true,0xffcccccc);  
  2. var bmd2:BitmapData=new BitmapData(200,200,false,0x00009900);  
  3.  
  4. var seed=int(Math.random()*int.MAX_VALUE);  
  5. bmd1.noise(seed,0,255,BitmapDataChannel.BLUE,false);  
  6. bmd2.noise(seed,0,255,BitmapDataChannel.GREEN,true);  
  7.  
  8. var bm1:Bitmap=new Bitmap(bmd1);  
  9. var bm2:Bitmap=new Bitmap(bmd2);  
  10. bm1.x=0;  
  11. bm1.y=0;  
  12. bm2.x=200;  
  13. bm2.y=200;  
  14. addChild(bm1);  
  15. addChild(bm2); 

2.perlinNoise()方法

说明:生成perlin杂点图像,通常用于模拟自然风光,比如木材,云彩或山脉。

函数:perlinNoise(baseX:Number , baseY:Number , numOctaves:uint , randomSeed:int , stich:Boolean , fractalNoise:Boolean , channelOption:uint=7 , grayScale:Boolean=false , offsets:Array=null):void

参数:

baseX:X方向上使用的频率

baseY:Y方向上使用的频率

numOctaves:要组合以创建咋点的 octave函数或各个杂点函数的数目

randomSeed:使用的随机种子数

stitch:平滑图像的转变边缘以创建无缝的纹理

fractalNoise:生成碎片杂点或者湍流

channelOptions:BitmapDataChannel对象的值

grayScale:灰度图像

offsets:偏移量

代码例:

 

 
  
  1. var bmd1:BitmapData=new BitmapData(200,200,true,0xffcccccc);  
  2. var bmd2:BitmapData=new BitmapData(200,200,false,0x00009900);  
  3.  
  4. var seed=int(Math.random()*int.MAX_VALUE);  
  5. var channels=BitmapDataChannel.RED | BitmapDataChannel.BLUE;  
  6. bmd1.perlinNoise(100,80,6,seed,false,true,channels,false,null);  
  7. channels=BitmapDataChannel.GREEN | BitmapDataChannel.ALPHA;  
  8. bmd2.perlinNoise(50,90,7,seed,false,true,channels,false,null);  
  9.  
  10. var bm1:Bitmap=new Bitmap(bmd1);  
  11. var bm2:Bitmap=new Bitmap(bmd2);  
  12. bm1.x=0;  
  13. bm1.y=0;  
  14. bm2.x=200;  
  15. bm2.y=200;  
  16. addChild(bm1);  
  17. addChild(bm2);