最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

利用三角函数在canvas上画虚线

来源:动视网 责编:小OO 时间:2020-11-27 20:05:59
文档

利用三角函数在canvas上画虚线

因为canvas的api没有虚线的。所以需要自己实现;顺便复习一下三角函数岂不美滋滋。,var context=document.getElementById(";canvas";).getContext(";2d";);function drawDashedLine(context,x1,y1,x2,y2,y1+everydashLength_y*i) } context.stroke()}context.lineWidth=3context.strokeStyle=";blue";drawDashedLine(context,20,20,context.canvas.width-20,20,20)。效果如图;
推荐度:
导读因为canvas的api没有虚线的。所以需要自己实现;顺便复习一下三角函数岂不美滋滋。,var context=document.getElementById(";canvas";).getContext(";2d";);function drawDashedLine(context,x1,y1,x2,y2,y1+everydashLength_y*i) } context.stroke()}context.lineWidth=3context.strokeStyle=";blue";drawDashedLine(context,20,20,context.canvas.width-20,20,20)。效果如图;
 本文主要介绍了利用三角函数在canvas上画虚线的方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。

因为canvas的api没有虚线的

所以需要自己实现

顺便复习一下三角函数岂不美滋滋

var context=document.getElementById("canvas").getContext("2d");
function drawDashedLine(context,x1,y1,x2,y2,dashlength){
 dashlength=dashlength===undefined?5:dashlength;
 var deltaX=x2-x1; //一条直角边的长
 var deltay=y2-y1; //另一条指教边的长

 var numDashes=Math.floor(
 Math.sqrt(deltaX*deltaX+deltay*deltay)/dashlength //Math.sqrt返回一个数的平方根 dashlength虚线每个点的长度
 )

 var everydashLength_x=deltaX/numDashes //确定X轴每条虚线点的起始点
 var everydashLength_y=deltay/numDashes //确定Y轴每条虚线点的起始点

 for(var i=0;i<numDashes;i++){
 context[i%2===0?'moveTo':"lineTo"]
 (x1+everydashLength_x*i,y1+everydashLength_y*i)
 }
 context.stroke()

}
context.lineWidth=3
context.strokeStyle="blue"
drawDashedLine(context,20,20,context.canvas.width-20,20,20)

效果如图

文档

利用三角函数在canvas上画虚线

因为canvas的api没有虚线的。所以需要自己实现;顺便复习一下三角函数岂不美滋滋。,var context=document.getElementById(";canvas";).getContext(";2d";);function drawDashedLine(context,x1,y1,x2,y2,y1+everydashLength_y*i) } context.stroke()}context.lineWidth=3context.strokeStyle=";blue";drawDashedLine(context,20,20,context.canvas.width-20,20,20)。效果如图;
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top