JavaScript绘制曲线、圆形饼图实例.doc
文本预览下载声明
html
head
titleJavaScript绘制曲线、圆形饼图实例/title
script language=JavaScript
IE4 = ! (navigator.appVersion.charAt(0) 4 || navigator.appName == Netscape)
var xo=0
var yo=0
var Ox = -1
var Oy = -1
var rad = Math.PI/180
var maxY = 400
var color = red
function print(str) {
document.write(str)
}
function orgY(y) {
return maxY-y
}
function outPlot(x,y,w,h) {
print(span style=position:absolute;left:+x+;top:+y+;height:+h+;width:+w+;font-size:1px;background-color:+color+/span)
}
function Plot(x,y) {
outPlot(x,y,1,1)
if(Ox=0 || Oy=0) {
ShowLine(Ox,Oy,x-Ox,y-Oy)
}
Ox = x
Oy = y
}
function ShowLine(x,y,w,h) {
if(w0) {
x += w
w = Math.abs(w)
}
if(h0) {
y += h
h = Math.abs(h)
}
if(w1) w=1
if(h1) h=1
outPlot(x,y,Math.round(w),Math.round(h))
}
function LineTo(x,y) {
Line(xo,yo,x,y)
}
function sign(n) {
if(n0)
return 1
if(n0)
return -1
return n
}
function Line(x1,y1,x2,y2) {
x2 = Math.round(x2)
y2 = Math.round(y2)
xo = x2
yo = y2
y1 = orgY(y1)
y2 = orgY(y2)
var str =
var i=0
var x = x1
var y = y1
dx = Math.abs(x2-x1)
dy = Math.abs(y2-y1)
s1 = sign(x2-x1)
s2 = sign(y2-y1)
if(dx==0 || dy==0) {
ShowLine(x1,y1,x2-x1,y2-y1)
return
}
if(dxdy) {
temp = dx
dx = dy
dy = temp
key = 1
}else
key = 0
e = 2*dy-dx
for(i=0;idx;i++) {
px = 0
py = 0
Plot(x,y)
while(e=0) {
if(key==1) {
x += s1
px += s1
}else {
y += s2
py += s2
}
e = e-2*dx
}
if(key==1)
y += s2
else
x += s1
e = e+2*dy
}
}
function MoveTo(x,y) {
Ox = Oy = -1
xo = Math.round(x)
yo = Math.round(y)
}
// 圆
function Cir(x,y,r) {
MoveTo(x+r,y)
for(i=0;i=360;i+=5) {
LineTo(r*Math.cos(i*rad)+x,r*Math.sin(i*rad)+y)
}
显示全部