首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

AS3×××效果(鼠标点击-纯代码)

var BitmapData0:BitmapData = new BitmapData(550, 400, false, 0x0); var Bitmap0:Bitmap = new Bitmap(BitmapData0); addChild(Bitmap0); var dotArr:Array = new Array(); stage.addEventListener(MouseEvent.MOUSE_DOWN,mouse_down); function mouse_down(evt:MouseEvent) {     var color:Number = 0xff000000+int(Math.random()*0xffffff);     for (var i:Number = 0; i<500; i++) {         var v:Number = Math.random()*10;         var a:Number =Math.random()*Math.PI*2;         var xx:Number = v*Math.cos(a)+stage.mouseX;         var yy:Number = v*Math.sin(a)+stage.mouseY;         var mouseP:Point=new Point(stage.mouseX,stage.mouseY);         if (Math.random()>0.6) {             var cc:Number = 0xffffffff;         } else {             cc= color;         }         dotArr.push([xx, yy, v*Math.cos(a), v*Math.sin(a), cc,mouseP]);     } } var cf:ConvolutionFilter = new ConvolutionFilter(3, 3, [1, 1, 1, 1, 32, 1, 1, 1, 1], 40,0); stage.addEventListener(Event.ENTER_FRAME,enter_frame); function enter_frame(evt:Event) {     for (var i:Number = 0; i<dotArr.length; i++) {         BitmapData0.setPixel32(dotArr[i][0],dotArr[i][1],dotArr[i][4]);         dotArr[i][0] += dotArr[i][2]*Math.random();         dotArr[i][1] += dotArr[i][3]*Math.random();         var dotP:Point=new Point(dotArr[i][0],dotArr[i][1]);         var b1:Boolean=Point.distance(dotP,dotArr[i][5])>80;         var b2:Boolean=Math.abs(dotArr[i][2])+Math.abs(dotArr[i][3])<0.5;         if ((b1 || b2) && Math.random()>0.9) {             dotArr.splice(i,1);         }     }     BitmapData0.applyFilter(BitmapData0.clone(),BitmapData0.rect,new Point(0, 0),cf); }

05

一文读懂比BitMap有更好性能的Roaring Bitmap

1.什么是bitmap?为什么使用bitmap?Roaring bitmap与其他bitmap编码技术相比有哪些优势?2.Roaring bitmap将32位无符号整数按照高16位分容器,即最多可能有216=65536个容器(container),存储数据时,按照数据的高16位找到container(找不到就会新建一个),再将低16位放入container中。高16位又称为共享有效位,它用于索引应该到哪个容器中查找对应的数值,属于roaring bitmap的一级索引。3.Roaring bitmaps以紧凑高效的两级索引数据结构存储32位整数。高密度块使用位图存储;稀疏块使用16位整数的压缩数组。当一个块包含不超过4096个整数时,我们使用一个排好序的16位整数数组。当有超过4096个整数时,我们使用2^16 位的位图。为什么按4096作为阀值呢?仅仅是因为当数据块中的整数数量超过这个值之后,bitmap将比数组的内存使用率更高。

02

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券