当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 用javascript绘图—JS2D函数集

Javascript
非常不错的 子鼠 滑动图片效果 Javascript+CSS
Mozilla 表达式 __noSuchMethod__
javascript 获取图片颜色
JavaScript 在各个浏览器中执行的耐性
在JavaScript中,为什么要尽可能使用局部变量?
javascript 日历提醒系统( 兼容所有浏览器 )
常用JS代码实例小结
jQuery 插件 将this下的div轮番显示
网页特效从下往上过渡 共享图库_最新图片
由document.body和document.documentElement想到的
JavaScript获取GridView中用户点击控件的行号,列号
jQuery 入门讲解1
百度 popup.js 完美修正版非常的不错
jQuery autocomplete插件修改
jQuery对象和DOM对象相互转化
javascript 人物逼真行走,已完成
基于jQuery图片平滑连续滚动插件
ie 调试javascript的工具
ExtJS 2.0实用简明教程 之Border区域布局
ExtJS 2.0实用简明教程 之Ext类库简介

Javascript 中的 用javascript绘图—JS2D函数集


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 101 ::
收藏到网摘: n/a

  <script Language="javascript"><br />
/****************** JS2D函数集  *******************<br />
<br />
  作者:neweroica    2003-3-28<br />
<br />
  CopyRight (C) 2003<br />
<br />
  在引用或转载时请保留此版权信息,谢谢!!!<br />
<br />
  本函数集可以单独存成一个js文件:"JS2D.js"<br />
<br />
***************************************************/<br />
<br />
/************* 画点 **************<br />
  x,y     点所在的屏幕坐标(像素)<br />
  color   颜色(字符串值)<br />
  size    大小(像素)<br />
**********************************/<br />
function drawDot(x,y,color,size){<br />
  document.write("<table border='0' cellspacing=0 cellpadding=0><tr><td style='position: absolute; left: "+(x)+"; top: "+(y)+";background-color: "+color+"' width="+size+" height="+size+"></td></tr></table>")<br />
}<br />
<br />
/************* 画直线 **************<br />
  x1,y1   起点所在的屏幕坐标(像素)<br />
  x2,y2   终点所在的屏幕坐标(像素)<br />
  color   颜色(字符串值)<br />
  size    大小(像素)<br />
  style   样式<br />
          =0    实线<br />
          =1    虚线<br />
          =2    虚实线<br />
**********************************/<br />
function drawLine(x1,y1,x2,y2,color,size,style){<br />
  var i;<br />
  var r=Math.floor(Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)));<br />
  var theta=Math.atan((x2-x1)/(y2-y1));<br />
  if(((y2-y1)<0&&(x2-x1)>0)||((y2-y1)<0&&(x2-x1)<0))<br />
    theta=Math.PI+theta;<br />
  var dx=Math.sin(theta);//alert(dx)<br />
  var dy=Math.cos(theta);<br />
  for(i=0;i<r;i++){<br />
    switch(style){<br />
      case 0:<br />
        drawDot(x1+i*dx,y1+i*dy,color,size);<br />
        break;<br />
      case 1:<br />
        i+=size*2;<br />
        drawDot(x1+i*dx,y1+i*dy,color,size);<br />
        break;<br />
      case 2:<br />
        if(Math.floor(i/4/size)%2==0){<br />
          drawDot(x1+i*dx,y1+i*dy,color,size);<br />
        }<br />
        else{<br />
            i+=size*2;<br />
            drawDot(x1+i*dx,y1+i*dy,color,size);<br />
        }<br />
        break;<br />
      default:<br />
        drawDot(x1+i*dx,y1+i*dy,color,size);<br />
        break;<br />
    }<br />
  }<br />
}<br />
<br />
/************* 画实心矩形 **************<br />
  x1,y1   起点(矩形左上角)所在的屏幕坐标(像素)<br />
&n