资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
文档供参考,可复制、编制,期待您的好评与关注! 简单的JAVASCRIPT画图函数(兼容ie/ff) Untitled 1 .style1 font-size: x-small; function makedot(x,y) /画点函数 document.write() /* 函数功能:根据给定的圆心和半径画圆 函数思路:根据半径及圆心坐标利用数学方法计算从0到360的每点的坐标,并画出来。 */ function circle(x,y,r) /(x,y)圆心,r半径 var dotx,doty,radio; var Pi=Math.PI; makedot(x,y); for(var i=0;i360;i+=0.5) radio=i*Pi/180; dotx=r*Math.cos(radio)+x; doty=r*Math.sin(radio)+y makedot(dotx,doty); /* 函数功能:根据指点矩形左上角坐标及长宽绘制矩形。 函数思路:根据左上坐标及长宽,计算横纵向边每点的坐标 */ function rect(x,y,w,h) /(x,y)左上角坐标,w,h 宽与高 for(var i=0;iw;i+) makedot(x+i,y); makedot(x+i,y+h); for(var i=0;ih;i+) makedot(x,y+i); makedot(x+w,y+i); /* 函数功能:根据两点坐标画直线。 函数思路:根据两点的坐标计算机斜率,然后根据第一个点坐标及斜率计算直线上所有点然后画线。垂直线特殊处理 */ function line(x1,y1,x2,y2) var slope=(y2-y1)/(x2-x1); /斜率 var diff=x2-x1; if(x1x2) for(var i=0;ix2) for(var i=0;idiff;i-) makedot(x1+i,y1+slope*i); else /画垂直线 var temp=y2-y1; if(temp0) for(var i=0;itemp;i-) makedot(x1,y1+i); /* 函数功能:根据给定的三点坐标画三角形 函数思路:直接利用画线函数画三条线即可 */ function triangle(x1,y1,x2,y2,x3,y3) line(x1,y1,x2,y2); line(x2,y2,x3,y3); line(x1,y1,x3,y3); /* 函数功能:根据给定的一系列坐标点画多边形 函数思路:循环读取坐标点,在当前坐标点与下一坐标点之间连线 */ function polygon() var args=arguments.length; if(args%2!=0) return -1; var realargs=args/2; /坐标个数 for(var i=0;irealargs-1;i+) line(argumentsi*2,argumentsi*2+1,argumentsi*2+2,argumentsi*2+3); line(argumentsi*2,argumentsi*2+1,arguments0,arguments1); circle(500,500,200); rect(100,100,200,100); triangle(200,200,100,400,300,400); polygon(300,300,400,100,600,100,700,300,600,500,400,500); /
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号