手机刮刮乐HTML5代码,

使用原型prototype扩展了一个clearArc 清除圆内像素的功能,

此功能未完成扇形清除功能,

此外,在清除圆内的像素时,还有点瑕疵,右边和下边还不够圆滑,有明显的齿状。如果你找到修复方法请一定要告诉我哟。不过此清除方法用于刮刮乐已经完全满足需求了

刮刮乐

window.onload = function() {

init();

}

CanvasRenderingContext2D.prototype.clearArc=function(x,y,radius,startAngle, endAngle, counterclockwise){

var distance = function(x0,y0,x1,y1){

var dis = Math.sqrt(Math.pow(x0-x1,2)+Math.pow(y0-y1,2));

//return Math.ceil(dis*10000)/10000;

return Math.round(dis*10000)/10000;

};

//首先获得矩形

var diameter = radius*2;

var startX = x-radius;

var cx = radius-(0-startX);

startX = startX<0?0:startX;

cx = cx-startX;

var startY = y-radius;

var cy = radius-(0-startY);

startY = startY<0?0:startY;

cy = cy-startY;

var imgData = this.getImageData(startX,startY,diameter,diameter);//需要处理的矩形

for (var i=0;i

//矩阵内的坐标

var ii = i/4;

var ix = Math.floor(ii/imgData.width);

var iy = ii%imgData.height;

var dis = distance(ix,iy,cx,cy);

if(dis<=radius){//此点在圆内

imgData.data[i+0]=0;

imgData.data[i+1]=0;

imgData.data[i+2]=0;

imgData.data[i+3]=0;

continue;

}

var dr = dis-radius;

if(dr

var n = Math.sqrt(Math.pow(dr, 2)/2)*256;//新

var o = imgData.data[i+3];

imgData.data[i+3]=n

continue;

}

}

this.putImageData(imgData,startX,startY);

};

function init() {

var imageWidth = 200;

var imageHeight = 100;

var gglc = document.getElementById("gglc");

var gglc2D = gglc.getContext("2d");

gglc2D.fillStyle = '#cccccc'; //设置覆盖层的颜色

gglc2D.fillRect(1, 1, imageWidth, imageHeight); //设置覆盖的区域

//gglc2D.clearArc(25,25,20);

gglc.addEventListener("touchmove", function(event) {

event.preventDefault();

for(var i in event.targetTouches){

var touch = event.targetTouches[i];

gglc2D.clearArc(touch.pageX,touch.pageY,20);

}

}, false);

gglc.addEventListener("touchstart", function(event) {

event.preventDefault();

for(var i in event.targetTouches){

var touch = event.targetTouches[i];

gglc2D.clearArc(touch.pageX,touch.pageY,20);

}

}, false);

}

谢谢惠顾

php刮刮乐代码,手机刮刮乐HTML5代码相关推荐

  1. 乐视手机优化服务器,乐视手机卡顿怎么办?新技能Get让你的乐视手机顺畅自如...

    EUI基于Android5.0系统深入开发,整体简洁.美观,具有很高的易用性,乐视生态服务则让EUI体验更上一层楼.经过乐视开发团队的不断改进和优化,EUI已经十分出色,系统本身具有很高的流畅度,但由 ...

  2. 乐视手机android流量,乐视手机流量不能用怎么办

    大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答. 乐视手机流量不能用的原因解决方法有: 1.确认手机是否连着其它无线网络(WIFI),如果手机当前连着无线网(wifi)的情况下,是 ...

  3. android是乐视手机刷机,乐视MAX(乐视 X900+)一键刷机教程,轻松刷机

    经常会有机友提问,乐视MAX(乐视 X900+)手机支不支持一键刷机?由于奇兔刷机已经支持多达上千款安卓手机一键刷机,所以有时候小编也无法及时回答上来,最简单的办法就是把手机连上奇兔刷机,即可看到手机 ...

  4. android是乐视手机刷机,乐视 X620(乐2 全网通)刷机教程,简单刷机

    经常会有机友提问,乐视 X620(乐2 全网通)手机支不支持一键刷机?由于奇兔刷机已经支持多达上千款安卓手机一键刷机,所以有时候小编也无法及时回答上来,最简单的办法就是把手机连上奇兔刷机,即可看到手机 ...

  5. 乐视手机android版本,乐视乐1s的手机系统是什么?能升级安卓5.0吗?

    乐视乐1s的手机系统是什么 乐视乐1s的手机系统是eUI 5.5系统. 比较有特色的是,乐视乐1s提供了指纹识别功能,目前1000元左右具备指纹识别的手机不超过5台.这颗指纹识别采用"镜面& ...

  6. python代码手机壁纸_70行python代码实现壁纸批量下载

    前言 好久没有写文章了,因为最近都在适应新的岗位,以及利用闲暇时间学习python.这篇文章是最近的一个python学习阶段性总结,开发了一个爬虫批量下载某壁纸网站的高清壁纸. 注意:本文所属项目仅用 ...

  7. 乐视手机没有logcat日志_盘点国产品牌手机,联想,魅族,一加有你用过的那款吗?...

    国内手机行业经过多年的发展,市场格局已基本确立,国外手机品牌以三星,苹果为主导,国产手机品牌则以华为,小米,OPPO,vivo四大厂商为主.据统计,2019年国产手机品牌出货量占到国内市场的90%.当 ...

  8. 乐视账号服务器关闭,乐视手机恢复出厂设置之后服务异常怎么办_无法登录乐视帐号解决办法_智能家...

    近期由于乐视账号服务器调整,出现了乐视手机重置后登录不了乐视账号,乐视手机恢复出厂设置之后服务异常是什么原因?小明同学为大家带来了无法登录乐视帐号解决办法... 乐视手机无法登录乐视帐号解决办法 乐视 ...

  9. 手机底部导航栏完整代码

    效果体验:http://hovertree.com/texiao/mobile/5.htm 可以使用手机浏览器查看体验效果. 以下是手机底部导航栏完整代码,HTML文件代码: <!DOCTYPE ...

最新文章

  1. 无监督算法与异常检测
  2. 【深入Java虚拟机JVM 07】JVM如何判断对象已死
  3. 通配符在泛型中的应用
  4. Java黑皮书课后题第7章:7.10(找出最小元素的下标)使用下面的方法头编写一个方法,求出一个整数数组中的最小元素下标。编写测试程序,提示用户输入10个数字,调用这个方法返回最小值的下标(多个则最小
  5. gblfy_IDEA常用快捷键技巧
  6. 爱尔兰都柏林圣三一大学计算机排名,2021年爱尔兰都柏林圣三一大学世界及专业排名 不愧是最古老的学府!...
  7. IoT边缘,你究竟是何方神圣?
  8. 阿里云CDN直播架构与双11晚会直播实战
  9. CSAPP阅读进度日记
  10. c 远程登陆linux,Linux C/C++基础——Windows远程登录Linux
  11. js设置cookie值 判断登陆
  12. 高速PCB设计系列基础知识
  13. 踩坑之路---JWT验证
  14. 《计算机科学概论(第12版)》—第1章1.3节海量存储器
  15. [bzoj2434][AC自动机][树状数组]阿狸的打字机
  16. 考研数据结构——买卖青蛙
  17. 双光子荧光成像_为什么双光子成像如此重要?
  18. 鸿蒙系统下拉菜单,华为鸿蒙系统官方
  19. CAD控件:界面控制说明和方法
  20. 教大家电脑重装系统后硬盘消失要如何解决

热门文章

  1. OGG 整理简洁笔记 V
  2. 敏捷测试的精髓都在这里了!
  3. strtok,sterror函数
  4. 工业以太网到底有什么类型
  5. 在Mac上使用招商银行网银
  6. C++中override overload overwrite
  7. OCR技术大揭秘:纸质文档数字化的新选择
  8. ABC200 C - Ringo‘s Favorite Numbers 2(map计数)
  9. mjpg-streamer
  10. cmake 如何指定 库文件